AWS vs GCP vs Azure 2026: Honest Dev Comparison
A practical comparison of AWS, Google Cloud, and Azure for Indian developers covering compute, serverless, databases, pricing, free tiers, and career advice.

My AWS Bill Hit Rs 47,000 Last Month
That's not a typo. Rs 47,000. For a side project. I'd left a NAT Gateway running that I forgot about, an RDS instance I provisioned "just to test something," and a couple of Lambda functions that got caught in a retry loop over a weekend. Nobody emailed me. No alarm went off. I found out when my credit card statement arrived.
And here's the thing — I'm not even mad at AWS specifically. I've racked up surprise bills on all three major cloud providers at different points. GCP once charged me Rs 8,000 for a BigQuery scan I ran against the wrong table. Azure hit me with Rs 3,500 for a Cosmos DB instance I thought was on the free tier but wasn't. Cloud billing is just confusing, and the providers don't seem to mind.
That experience taught me something important though. Picking a cloud provider isn't just about features or performance benchmarks — it's about understanding the pricing model well enough that it doesn't bite you. So here's a genuine, opinionated comparison based on what actually matters for developers and startups in India, from someone who's been burned by all three.
Quick context on my experience: I've used AWS professionally at a fintech startup, GCP for a data engineering project, and Azure at a client deeply invested in the Microsoft ecosystem. They're all good. They all work. The "best" one depends far more on your specific situation than on any technical superiority one might claim over the others.
Compute: The Foundation
Virtual Machines
Every cloud starts with VMs. Spin up a server, SSH in, deploy your stuff. Simple as it gets.
| Feature | AWS (EC2) | GCP (Compute Engine) | Azure (Virtual Machines) |
|---|---|---|---|
| Instance variety | 750+ types | 100+ types | 200+ types |
| Cheapest option | t4g.micro (Arm, ~$6/mo) | e2-micro (free tier) | B1s (~$3.8/mo) |
| GPU instances | Extensive (P4, P5, Inf2) | Good (A2, G2) | Good (NC, ND series) |
| Spot/preemptible pricing | Up to 90% off | Up to 91% off | Up to 90% off |
| India regions | Mumbai (ap-south-1), Hyderabad (ap-south-2) | Mumbai (asia-south1), Delhi (asia-south2) | Central India, South India, West India |
AWS has the widest variety of instance types, which matters if you've got very specific workload requirements — like that one time I needed a memory-optimized instance with exactly 512 GB RAM for an in-memory cache. Only AWS had what I needed at that spec. GCP's e2-micro in the free tier is permanently free (not just 12 months), making it ideal for small always-on services. Azure has three India regions, giving you more flexibility for latency-sensitive deployments.
My take: For general workloads, performance differences are negligible. Pick based on ecosystem, pricing, or whatever your team already knows. If you're just learning, GCP's permanent free tier VM is hard to beat. Probably the best place to start without worrying about a surprise bill.
Managed Containers
If you're running Docker containers (and in 2026, most applications probably should be), all three have managed container services. If you're new to containerization, our Docker and Kubernetes beginner's guide walks through the fundamentals before you start choosing providers.
AWS ECS/Fargate is the default choice on AWS. Fargate gives you serverless containers — define CPU and memory, and AWS handles the infrastructure. Works well but the configuration is verbose. Expect to write a lot of YAML. Like, a lot. I've seen Fargate task definitions longer than the application code they deploy.
GCP Cloud Run is the simplest container deployment service across any cloud provider. Push a Docker image, get a URL. That's genuinely it. Scales to zero when there's no traffic (you don't pay when nobody's hitting it), which makes it perfect for side projects and APIs with variable traffic patterns.
Azure Container Apps is Azure's answer to Cloud Run, and it's quite good. Built on Kubernetes under the hood but abstracts away the complexity. Supports Dapr for microservices communication out of the box, which is a nice touch.
For most developers, GCP Cloud Run wins on simplicity. Fastest path from "I have a Docker image" to "it's running in production with a public URL." I've deployed things on Cloud Run in under two minutes. Not exaggerating.
Serverless Functions
Serverless is where you write a function and the cloud provider handles everything else — scaling, infrastructure, patching. You pay only when the function runs. Sounds great until you get a retry loop on a weekend, but that's my trauma, not yours.
// AWS Lambda example
export const handler = async (event) => {
const name = event.queryStringParameters?.name || 'World';
return {
statusCode: 200,
body: JSON.stringify({ message: `Hello, ${name}!` }),
};
};
| Feature | AWS Lambda | GCP Cloud Functions | Azure Functions |
|---|---|---|---|
| Languages | Node.js, Python, Java, Go, .NET, Ruby, Rust | Node.js, Python, Java, Go, .NET, Ruby, PHP | Node.js, Python, Java, .NET, PowerShell, TypeScript |
| Max execution | 15 minutes | 60 minutes (2nd gen) | 10 minutes (Consumption), unlimited (Premium) |
| Cold start | 100ms-2s | 100ms-3s | 200ms-5s |
| Free tier | 1M requests + 400K GB-seconds/month | 2M invocations + 400K GB-seconds/month | 1M executions + 400K GB-seconds/month |
| Best at | Ecosystem integration, event triggers | HTTP APIs, Cloud Run integration | Microsoft ecosystem, .NET |
AWS Lambda is the most mature and has the deepest integration with other AWS services (S3, DynamoDB, SQS, SNS). Already on AWS? Lambda's the natural fit.
GCP Cloud Functions (2nd gen) is basically Cloud Run under the hood, which means you get container benefits with function simplicity. That 60-minute execution limit is useful for data processing jobs that'd time out on Lambda.
Azure Functions has the roughest cold starts, and I'm not sure if that's improved much recently. But it offers the most flexibility with hosting options — same function code can run on a Consumption plan (serverless), Premium plan (pre-warmed instances), or your own App Service plan. For .NET developers, it's the most natural fit by far.
Databases
Here's where differences start to matter a lot more. Your database choice often locks you into an ecosystem, so think carefully.
Relational Databases
| Service | AWS (RDS) | GCP (Cloud SQL) | Azure (Azure SQL) |
|---|---|---|---|
| Engines | PostgreSQL, MySQL, MariaDB, Oracle, SQL Server | PostgreSQL, MySQL, SQL Server | SQL Server (native), PostgreSQL, MySQL |
| Serverless | Aurora Serverless v2 | Cloud SQL has no serverless option | Azure SQL Serverless |
| Min cost (India) | ~$15/month (db.t4g.micro) | ~$7/month (db-f1-micro) | ~$5/month (Basic tier) |
| Managed scaling | Aurora auto-scaling | Manual scaling | Auto-scaling (serverless tier) |
GCP Cloud SQL wins on entry price. That db-f1-micro instance with 0.6 GB RAM is enough for development and small production workloads, costing around Rs 600/month. AWS Aurora Serverless v2 is the best option for variable workloads — scales compute up and down automatically based on demand — though the minimum cost sits higher.
If you're using PostgreSQL (and I think you should seriously consider it as your default database in 2026), all three support it well. My personal preference: GCP Cloud SQL for PostgreSQL when cost efficiency matters and AWS Aurora PostgreSQL for performance-critical applications.
NoSQL / Document Databases
AWS DynamoDB is a beast. Single-digit millisecond latency at any scale, pay-per-request pricing, zero operational overhead. Learning curve is steep because you need to design access patterns upfront — can't just query however you want like with SQL. But once you get it, DynamoDB is genuinely impressive. Probably my favorite AWS service.
GCP Firestore is easier to learn than DynamoDB, with a more intuitive query model and real-time sync capabilities built in. Default choice for Firebase applications. However, it can't match DynamoDB's raw throughput for write-heavy workloads.
Azure Cosmos DB supports multiple APIs (SQL, MongoDB, Cassandra, Gremlin, Table), which is unique among the three. Need global distribution with multi-region writes? Cosmos DB does it better than the competition. It's also the most expensive, and the pricing model seems designed to confuse. I suspect that's intentional.
Storage
Object storage is practically a commodity at this point. All three offer the same core functionality, and honestly, picking between them doesn't matter much for most use cases.
| Feature | AWS S3 | GCP Cloud Storage | Azure Blob Storage |
|---|---|---|---|
| Standard tier (per GB/month) | $0.023 | $0.020 | $0.018 |
| Free tier | 5 GB (12 months) | 5 GB (always free) | 5 GB (12 months) |
| CDN integration | CloudFront | Cloud CDN | Azure CDN |
| S3 API compatible | Native | Yes (interop) | No |
Pricing differences are minimal at small scale. At petabyte scale, Azure's slightly lower per-GB cost adds up. GCP's always-free 5 GB is nice for personal projects that'll run indefinitely.
S3's API has become a de facto standard — most tools and libraries support it natively. GCP offers S3 compatibility, so you can often switch without code changes. Azure uses its own API, meaning more migration effort if you ever need to move. Something to keep in mind.
AI/ML Services
Here's where GCP has a genuine edge, and it's not close.
GCP Vertex AI is the most developer-friendly ML platform across any provider. AutoML for no-code model training, Gemini API for generative AI, tight integration with BigQuery for data analysis. If AI is central to your product, GCP is the strongest choice. I think Google's research heritage shows up in the quality and breadth of their ML services more than anywhere else.
AWS SageMaker is more mature with a larger ecosystem of pre-built models and algorithms. The recent SageMaker Studio overhaul made it more accessible, but it's still more complex than Vertex AI. Bedrock provides access to multiple foundation models (Claude, Llama, Titan) through a unified API — nice if you don't want to pick just one.
Azure OpenAI Service gives you GPT-4, DALL-E, and Whisper through Azure's enterprise infrastructure. If you need OpenAI's models with Azure's compliance and security guarantees, this is the only option. Many large Indian enterprises choose Azure specifically for this, and I can see why.
Kubernetes: EKS vs GKE vs AKS
Let me say something potentially controversial: you probably shouldn't be running Kubernetes unless you've got a team of at least 3-4 engineers to manage it. But if you're doing it anyway, Google has a clear advantage. They invented Kubernetes, and GKE reflects that pedigree.
GKE (Google Kubernetes Engine) has Autopilot mode that manages node pools automatically. Smoothest Kubernetes experience of the three. Node auto-upgrades, built-in monitoring with Google Cloud Operations, fastest cluster provisioning times. It just works with less fiddling.
EKS (Elastic Kubernetes Service) is solid but expensive — the control plane costs $0.10/hour ($73/month) on top of your node costs. Configuration requires more manual setup, especially around networking and IAM. Not terrible, but noticeable compared to GKE.
AKS (Azure Kubernetes Service) has a free control plane, which is a significant cost advantage. Integration with Azure Active Directory for RBAC is excellent for enterprise environments. Performance is comparable to EKS.
My recommendation: If Kubernetes is non-negotiable, go with GKE. If you can avoid Kubernetes entirely, use Cloud Run (GCP), Fargate (AWS), or Container Apps (Azure) instead. Kubernetes is powerful but operationally expensive in engineering time — arguably more expensive than the infrastructure itself. For a broader perspective on how cloud architecture fits into larger systems, see our system design interview preparation guide.
Pricing Comparison for Common Workloads
Enough theory. Here's what it actually costs to run typical workloads on each provider using India regions:
Small Web App (1 server, database, storage)
| Component | AWS | GCP | Azure |
|---|---|---|---|
| VM (2 vCPU, 4 GB) | $30/month | $25/month | $28/month |
| Managed PostgreSQL | $15/month | $7/month | $5/month |
| 50 GB storage | $1.15/month | $1.00/month | $0.90/month |
| Total | ~$46/month | ~$33/month | ~$34/month |
Serverless API (1M requests/month)
| Component | AWS | GCP | Azure |
|---|---|---|---|
| Function execution | Free (under free tier) | Free (under free tier) | Free (under free tier) |
| API Gateway | $3.50/month | Free (Cloud Run) | Free (built-in) |
| Database (DynamoDB/Firestore) | ~$1/month | ~$0.50/month | ~$1/month |
| Total | ~$5/month | ~$1/month | ~$1/month |
GCP wins on serverless pricing because Cloud Run includes an HTTP endpoint without a separate API Gateway charge. AWS charges you $3.50/month for API Gateway even at low volumes. That's the kind of pricing surprise that adds up across multiple projects.
Free Tier Comparison
This matters enormously for students and developers learning cloud skills. Get it wrong and you're paying for education that should've been free.
| Feature | AWS Free Tier | GCP Free Tier | Azure Free Tier |
|---|---|---|---|
| Duration | 12 months + always-free | Always-free + 90-day $300 credit | 12 months + always-free + $200 credit |
| VM | t2.micro (12 months) | e2-micro (always free) | B1s (12 months) |
| Database | RDS micro (12 months) | Firestore 1 GB (always free) | Azure SQL 250 GB (12 months) |
| Functions | 1M/month (always free) | 2M/month (always free) | 1M/month (always free) |
| Storage | 5 GB S3 (12 months) | 5 GB (always free) | 5 GB (12 months) |
GCP's always-free tier is the most generous for ongoing use. AWS and Azure's 12-month free tiers are more powerful but expire — and when they do, the charges start immediately. No grace period. No reminder email that actually gets your attention. The $300 GCP credit and $200 Azure credit are great for experimenting with expensive services like GPUs and managed databases. Use them wisely. Set a budget alert on day one.
Which to Learn for Jobs in India
Let me be blunt here because this is probably why many of you are reading this article: learn AWS first.
Here's why. AWS holds roughly 31% of the global cloud market and an even larger share in India specifically. Most Indian startups, mid-size companies, and even large enterprises run on AWS. If you pull up job listings on Naukri, LinkedIn, or Indeed for cloud roles in Bangalore, Hyderabad, or Pune, AWS skills show up 2-3x more often than GCP or Azure. That's not a small gap.
Azure is dominant in large Indian enterprises that run Microsoft products — banks, insurance companies, government agencies, and IT services companies like TCS, Infosys, and Wipro. If you're targeting enterprise IT roles at those firms, Azure expertise is arguably more valuable than AWS.
GCP tends to show up at data-centric companies and startups with modern tech stacks. Aiming for companies like Flipkart, PhonePe, or data engineering roles? GCP skills will stand out on your resume.
Certification Paths
| Provider | Entry Level | Professional/Associate | Specialty |
|---|---|---|---|
| AWS | Cloud Practitioner (Rs 8,500) | Solutions Architect Associate (Rs 12,700) | DevOps, Data Analytics, ML |
| GCP | Cloud Digital Leader (Rs 8,300) | Cloud Engineer Associate (Rs 16,600) | Data Engineer, ML Engineer |
| Azure | AZ-900 Fundamentals (Rs 4,400) | AZ-104 Administrator (Rs 4,400) | AZ-400 DevOps, AI-102 |
Azure certifications are the cheapest, and Microsoft frequently offers free vouchers through events and learning paths — keep an eye out for those. AWS certifications carry the most market recognition in India. GCP certifications are gaining ground, especially in the data and ML space. If I had to pick one certification for maximum job market impact in India right now, it'd be the AWS Solutions Architect Associate. Not even close.
Startup Credits Programs
All three providers offer generous credits for startups, and these can save you lakhs of rupees in the early stages. Don't skip this section if you're founding something.
AWS Activate: Up to $100,000 in credits for startups in accelerator programs, $10,000 for self-serve applications. Also includes credits for business support plans and training.
Google for Startups Cloud Program: Up to $200,000 in GCP credits over two years. Also includes technical support and access to Google's startup network. Most generous of the three, in my experience.
Microsoft for Startups (Founders Hub): Up to $150,000 in Azure credits. Also includes free access to GitHub Enterprise, Visual Studio Enterprise, and Microsoft 365. Those additional software credits are a genuinely nice bonus that people overlook.
My advice for Indian startups: apply to all three and see which programs accept you. Use the credits strategically — expensive services first, things you'd pay for regardless. You can always migrate later if needed, and having experience with multiple providers isn't a bad thing.
Pick Based on Where the Jobs Are
After running production workloads on all three, here's how I'd rank them for different scenarios:
For startups and side projects: GCP. Most generous free tier, Cloud Run makes deployment trivial, pricing is the most predictable. BigQuery for analytics is unmatched — nothing else comes close for ad hoc data analysis.
For career advancement in India: AWS. The job market demands it. Get the Solutions Architect Associate certification. It's probably the single most impactful cloud certification for Indian tech careers. I've seen hiring managers specifically filter for it.
For enterprise environments: Azure. Microsoft ecosystem integration with Active Directory, Office 365, Teams, and Power BI runs deep, and Indian enterprises are heavily invested in Microsoft already. If you're working at or selling to a large Indian company, Azure knowledge pays off.
For AI/ML projects: GCP if you want Google's models and Vertex AI. Azure if you need OpenAI's GPT-4 models. AWS if you want flexibility with Bedrock's multi-model approach.
Here's the uncomfortable truth that comparison articles usually dodge: the core services across all three are converging. A load balancer works the same way everywhere. Object storage is object storage. Differences live in developer experience, pricing surprises, and ecosystem integrations. Pick one, learn it deeply, and you can transfer most of that knowledge to the others when needed. Networking, compute, storage, databases, IAM — the fundamental concepts are universal.
But if you're asking me where to start, and you're in India, and you want to maximize your employability? AWS. Then branch out once you've got that foundation solid. Your career will thank you.
Anurag Sharma
Founder & Editor
Software engineer with 8+ years of experience in full-stack development and cloud architecture. Founder of Tech Tips India, where he breaks down complex tech concepts into practical, actionable guides for Indian developers and enthusiasts.
Stay Ahead in Tech
Get the latest tech news, tutorials, and reviews delivered straight to your inbox every week.
No spam ever. Unsubscribe anytime.
Comments (0)
Leave a Comment
All comments are moderated before appearing. Please be respectful and follow our community guidelines.
Related Articles

WhatsApp Tips and Hidden Features for Indians
WhatsApp hidden features: chat lock, formatting tricks, storage tips, privacy settings, and power user shortcuts.

My Notion Productivity System: Complete Setup
My Notion productivity system: task management, PARA notes, habit tracking, content calendars, and API automations walkthrough.

25 VS Code Extensions Worth Installing in 2026
A curated list of 25 VS Code extensions that genuinely improve developer productivity, with settings tips and workflow recommendations.