Ran the same API on AWS and GCP.

Ran the same API on AWS and GCP.

AWS: $33/month
GCP: $16/month

Same code. Same architecture.
2x difference.


If you’re choosing a serverless platform and thinking “Lambda is the standard” - hold off on your budget calculations.

Tested identical Node.js API on AWS and GCP:

  • 15M requests/month
  • Average execution: 200ms
  • Memory: 512MB
  • No VPC, direct HTTP endpoints

Results

AWS Lambda: $33.63/month

  • Requests: $2.80
  • Compute: $23.33
  • CloudWatch: $7.50

GCP Cloud Functions gen2: $15.95/month

  • Invocations: $5.20
  • Compute: $3.25
  • Logging: $7.50

Difference: 2.1x

Why GCP is cheaper

GB-second pricing: $0.0000025 vs AWS $0.0000166667 - 6.7x lower.

Plus larger free tier (2M requests vs 1M), more generous limits (60min execution vs 15min, 32GB memory vs 10GB).

Where AWS pays off

Ecosystem. EventBridge, Step Functions, DynamoDB Streams - native integrations save development time.

GCP requires more glue code through Pub/Sub. What AWS does with built-in triggers requires separate services in GCP.

Real conclusion

Most overspending comes from architecture, not provider choice:

  • 512MB memory where 256MB suffices - 2x overpay
  • 1000 separate invocations instead of one batch - 1000x overpay
  • Logs without retention policy - +$50/month in 6 months
  • Bloated dependencies - +2 seconds cold starts
  • Sync calls instead of async - double invocations on retry

Infrastructure audits find 30-40% savings without switching providers. Choosing between AWS and GCP gives you 2x savings on a PowerPoint slide, proper architecture - 3-5x on your actual bill.