Amazon SQS vs Cloudflare Queues
SEPT 2026 auditA comparison of Amazon SQS and Cloudflare Queues built from values read directly from each provider's own documentation, with the source recorded against every figure.
The short answer
Choose Amazon SQS if…
AWS-resident systems that want a queue with a permanent free million requests a month and no capacity to plan — SQS scales without a throughput setting to choose.
Editorial · Palash Bagchi · approved
Choose Cloudflare Queues if…
Workers applications that want a queue with no egress or throughput charges and a retention window measured in days rather than hours.
Editorial · Palash Bagchi · approved
Consider something else if…
- Amazon SQS: Billing is per request rather than per message, and a 1 MiB payload counts as sixteen, so chatty polling or large messages cost far more than the message count suggests.
- Cloudflare Queues: Billing is per 64 KB operation rather than per message, so a large payload or a chatty retry loop costs several times what the message count suggests.
6 sourced criteria separate them — see where, with sources, below.
Pick the criteria you care about. The chart counts how many of them lean toward each provider — the same read as scanning the bars below, just totalled for the ones you chose.
Amazon SQS 0
Cloudflare Queues 0
At a glance.
| Criterion | Amazon SQS | Cloudflare Queues |
|---|---|---|
| Pricing | ||
| Free tier | Yes | Yes |
| Pricing model | Per request, not per message: every API action counts, and a 1 MiB payload is billed as 16 requests. FIFO queues cost $0.50 per million against standard's $0.40 in us-east-1, and fair queue requests add $0.10 per million on top of the standard rate. | Billed per operation, not per message: one operation per 64 KB written, read or deleted, and a message larger than 64 KB counts as several. Cloudflare states a normal delivery takes three operations — one write, one read, one delete — so a million messages is nearer three million operations. Workers Paid includes 1,000,000 operations a month, then $0.40 per million; the free plan allows 10,000 a day. |
| Queues | ||
| Included per month | 1,000,000 requests a month free, permanently and across all regions. Beyond that, standard queues are $0.40 per million in us-east-1, falling to $0.30 above 100 billion and $0.24 above 200 billion. | 1,000,000 operations a month on Workers Paid, then $0.40 per million. An operation is each 64 KB written, read or deleted, so a typical message costs three — Cloudflare's own formula is ((messages × 3) − 1,000,000) / 1,000,000 × $0.40. Workers Free allows 10,000 operations a day. |
| Maximum message size | 256 KB per message. A single request carries 1 to 10 messages up to 1 MiB total, and each 64 KB chunk of payload is billed as one request. | 128 KB per message, with roughly 100 bytes of that taken by internal metadata. Messages above 64 KB are billed as multiple operations. |
| Message retention | 4 days by default; configurable from 60 seconds up to 14 days per queue. | 4 days by default on Workers Paid, configurable up to 14 days. Workers Free is fixed at 24 hours. |
| Maximum delay | 15 minutes maximum per-message delay (message timer) or per-queue delay; default is 0 seconds. | 24 hours, set with delaySeconds when sending or retrying. |
| Concurrency | Approximately 120,000 in-flight messages per standard queue (received but not yet deleted); API call rate on standard queues is nearly unlimited. | 250 concurrent consumer invocations, push-based only, with per-queue throughput capped at 5,000 messages a second and a 25 GB backlog. |
| Dead letter queue | Supported | Supported |
Where they differ.
Pricing model
- Amazon SQS
- Per request, not per message: every API action counts, and a 1 MiB payload is billed as 16 requests. FIFO queues cost $0.50 per million against standard's $0.40 in us-east-1, and fair queue requests add $0.10 per million on top of the standard rate.
- Cloudflare Queues
- Billed per operation, not per message: one operation per 64 KB written, read or deleted, and a message larger than 64 KB counts as several. Cloudflare states a normal delivery takes three operations — one write, one read, one delete — so a million messages is nearer three million operations. Workers Paid includes 1,000,000 operations a month, then $0.40 per million; the free plan allows 10,000 a day.
Sources (2) →Sources ↓
- AWS Price List API — AWSQueueService, us-east-1 ↗
“"$0.50 per million Amazon SQS FIFO requests in Tier1 in US East" [...] "$0.40 per million Amazon SQS standard requests in Tier1" [...] "$0.10 per million Amazon SQS fair queue requests in US East"”
Read 2026-09-06 · official pricing
- Pricing — Cloudflare Queues docs ↗
“An operation is counted for each 64 KB of data that is written, read, or deleted. [...] Standard operations 10,000 operations/day included 1,000,000 operations/month included + $0.40/million operations [...] In most cases, it takes 3 operations to deliver a message: 1 write, 1 read, and 1 delete.”
Read 2026-09-07 · official docs
Included per month
- Amazon SQS
- 1,000,000 requests a month free, permanently and across all regions. Beyond that, standard queues are $0.40 per million in us-east-1, falling to $0.30 above 100 billion and $0.24 above 200 billion.
- Cloudflare Queues
- 1,000,000 operations a month on Workers Paid, then $0.40 per million. An operation is each 64 KB written, read or deleted, so a typical message costs three — Cloudflare's own formula is ((messages × 3) − 1,000,000) / 1,000,000 × $0.40. Workers Free allows 10,000 operations a day.
Sources (2) →Sources ↓
- AWS Price List API — AWSQueueService, us-east-1 ↗
“"First 1,000,000 Amazon SQS Requests per month are free" [...] "$0.40 per million Amazon SQS standard requests in Tier1 in US East" [...] "$0.30 per million ... Tier2" [...] "$0.24 per million ... Tier3"”
Read 2026-09-06 · official pricing
- Pricing — Cloudflare Queues docs ↗
“1,000,000 operations/month included + $0.40/million operations [...] An operation is counted for each 64 KB of data that is written, read, or deleted. [...] In most cases, it takes 3 operations to deliver a message [...] 10,000 operations/day included”
Read 2026-09-06 · official docs
Maximum message size
256 KB per message. A single request carries 1 to 10 messages up to 1 MiB total, and each 64 KB chunk of payload is billed as one request.
128 KB per message, with roughly 100 bytes of that taken by internal metadata. Messages above 64 KB are billed as multiple operations.
Sources (2) →Sources ↓
- Amazon SQS Pricing — AWS ↗
“A single request can have from 1 to 10 messages, up to a maximum total payload of 1 MiB. [...] Each 64 KB chunk of a payload is billed as 1 request (for example, an API action with a 1 MiB payload is billed as 16 requests).”
Read 2026-09-06 · official docs
- Limits — Cloudflare Queues docs ↗
“Message size | 128 KB [...] Messages can include up to ~100 bytes of internal metadata that counts towards total message limits.”
Read 2026-09-06 · official docs
Message retention
4 days by default; configurable from 60 seconds up to 14 days per queue.
4 days by default on Workers Paid, configurable up to 14 days. Workers Free is fixed at 24 hours.
Sources (2) →Sources ↓
- Amazon SQS message quotas - Amazon Simple Queue Service ↗
“Message retention By default, a message is retained for 4 days. The minimum is 60 seconds (1 minute). The maximum is 1,209,600 seconds (14 days).”
Read 2026-09-13 · official docs
- Pricing — Cloudflare Queues docs ↗
“Message retention | 24 hours (non-configurable) | 4 days default, configurable up to 14 days”
Read 2026-09-06 · official docs
Maximum delay
15 minutes maximum per-message delay (message timer) or per-queue delay; default is 0 seconds.
24 hours, set with delaySeconds when sending or retrying.
Sources (2) →Sources ↓
- Amazon SQS message quotas - Amazon Simple Queue Service ↗
“Message timer The default (minimum) delay for a message is 0 seconds. The maximum is 15 minutes.”
Read 2026-09-13 · official docs
- Limits — Cloudflare Queues docs ↗
“delaySeconds (when sending or retrying) | 24 hours”
Read 2026-09-06 · official docs
Concurrency
- Amazon SQS
- Approximately 120,000 in-flight messages per standard queue (received but not yet deleted); API call rate on standard queues is nearly unlimited.
- Cloudflare Queues
- 250 concurrent consumer invocations, push-based only, with per-queue throughput capped at 5,000 messages a second and a 25 GB backlog.
Sources (2) →Sources ↓
- Amazon SQS standard queue quotas - Amazon Simple Queue Service ↗
“For most standard queues (depending on queue traffic and message backlog), there can be a maximum of approximately 120,000 in flight messages (received from a queue by a consumer, but not yet deleted from the queue).”
Read 2026-09-13 · official docs
- Limits — Cloudflare Queues docs ↗
“Concurrent consumer invocations | 250 push-based only [...] Per-queue message throughput | 5,000 messages per second [...] Per-queue backlog size | 25GB”
Read 2026-09-06 · official docs
When these numbers change, hear about it. Sources are re-checked monthly; a repricing goes out as a short note.
Documented by only one.
These criteria are published by one provider and not the other. An absence here means we have not found a source, not that the feature is missing.
Questions this comparison answers.
Should I choose Amazon SQS or Cloudflare Queues?
Pick Amazon SQS if AWS-resident systems that want a queue with a permanent free million requests a month and no capacity to plan — SQS scales without a throughput setting to choose.
Pick Cloudflare Queues if Workers applications that want a queue with no egress or throughput charges and a retention window measured in days rather than hours.
