AWS API Gateway Pricing: HTTP API vs REST API Cost Breakdown
AWS offers two API Gateway types with fundamentally different pricing. HTTP API costs 70% less than REST API for most workloads. Here is exactly what each costs, including the data transfer charges that double your bill.
Quick Verdict
Use HTTP API for 80%+ of workloads. It costs $1.00/million vs $3.50/million for REST API. Only use REST API if you need request transformation, API keys with usage plans, or per-stage caching.
HTTP API vs REST API Pricing
| Pricing Dimension | HTTP API | REST API |
|---|---|---|
| First 300M requests/mo | $1.00/million | $3.50/million |
| Next 700M requests/mo | $0.90/million | $2.80/million |
| Over 1B requests/mo | $0.80/million | $1.51/million |
| Data transfer (outbound) | $0.09/GB | $0.09/GB |
| WebSocket connections | Not supported | $0.25/million conn-min |
| WebSocket messages | Not supported | $1.00/million messages |
| Caching | Not supported | $0.028/GB/hour |
| Free tier | 1M requests/mo (12 months) | 1M requests/mo (12 months) |
Monthly Cost by Volume (10 KB avg payload)
| Monthly Requests | HTTP API Requests | Data Transfer | HTTP API Total | REST API Total |
|---|---|---|---|---|
| 1M | $1.00 | $0.95 | $1.95 | $4.45 |
| 10M | $10.00 | $9.54 | $19.54 | $44.54 |
| 50M | $50.00 | $47.68 | $97.68 | $222.68 |
| 100M | $100.00 | $95.37 | $195.37 | $445.37 |
| 500M | $470.00 | $476.84 | $946.84 | $1,876.84 |
| 1B | $890.00 | $953.67 | $1,843.67 | $3,263.67 |
Data transfer calculated at 10 KB avg response x volume / 1,048,576 = GB x $0.09. First 1 GB/month is free (excluded from calculations at this scale).
Data Transfer: The Cost That Doubles Your Bill
AWS charges $0.09/GB for outbound data transfer from API Gateway to the internet. This is the most commonly overlooked cost. At scale, data transfer often exceeds request charges:
| Avg Payload | GB at 100M req/mo | Data Transfer Cost | % of Total Bill (HTTP) |
|---|---|---|---|
| 1 KB | 95 GB | $9 | 8% |
| 5 KB | 477 GB | $43 | 30% |
| 10 KB | 954 GB | $86 | 46% |
| 20 KB | 1,907 GB | $172 | 63% |
| 50 KB | 4,768 GB | $429 | 81% |
| 100 KB | 9,537 GB | $858 | 90% |
Cloudflare charges $0 for data transfer. At 100M requests with 20 KB payloads, you save $172/month on data transfer alone by switching to Cloudflare.
AWS Free Tier Details
First 12 Months
- ✓1 million HTTP API calls/month
- ✓1 million REST API calls/month
- ✓750,000 WebSocket connection minutes/month
- ✓1 million WebSocket messages/month
After 12 Months
- ✗Free tier expires completely
- ✗All usage billed from first request
- ✗No permanent free tier (unlike Cloudflare, Kong)
- !Set billing alerts before month 12
When to Use REST API vs HTTP API
Use HTTP API (80%+ of workloads)
- Lambda proxy integrations
- JWT/OIDC authorization
- Simple CRUD APIs
- CORS-enabled public APIs
- Internal microservice routing
- Cost-sensitive workloads
Use REST API (specific needs only)
- Request/response VTL transformation
- API keys with usage plans and quotas
- Per-stage response caching
- AWS WAF integration (built-in)
- Request validation
- Legacy integrations requiring REST features
AWS vs Alternatives
| Provider | Per Million | Data Transfer | Cost at 100M req/mo |
|---|---|---|---|
| AWS HTTP API | $1.00 | $0.09/GB | $195 |
| AWS REST API | $3.50 | $0.09/GB | $445 |
| Cloudflare | $0.15 | Free | $15 |
| Kong Konnect | $0.60 | $0.07/GB | $127 |
| Azure APIM (Consumption) | $3.50 | $0.087/GB | $433 |
| Google Apigee | $2.00 | $0.08/GB | $276 |
Based on 100M requests/month with 10 KB average payload. Includes request charges + data transfer. Excludes caching, WAF, and support costs.