# Amazon SQS vs Cloudflare Queues

Canonical: https://inetgeek.com/compare/amazon-sqs-vs-cloudflare-queues/

Every value below is read from Amazon SQS's and Cloudflare Queues's own documentation. See https://inetgeek.com/methodology/ for how.

## At a glance

| Criterion | Amazon SQS | Cloudflare Queues |
| --- | --- | --- |
| 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. |
| 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. ([source](https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AWSQueueService/current/us-east-1/index.json))
- 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. ([source](https://developers.cloudflare.com/queues/platform/pricing/))

### 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. ([source](https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AWSQueueService/current/us-east-1/index.json))
- 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. ([source](https://developers.cloudflare.com/queues/platform/pricing/))

### Maximum message size

- Amazon SQS: 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. ([source](https://aws.amazon.com/sqs/pricing/))
- Cloudflare Queues: 128 KB per message, with roughly 100 bytes of that taken by internal metadata. Messages above 64 KB are billed as multiple operations. ([source](https://developers.cloudflare.com/queues/platform/limits/))

### Message retention

- Amazon SQS: 4 days by default; configurable from 60 seconds up to 14 days per queue. ([source](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html))
- Cloudflare Queues: 4 days by default on Workers Paid, configurable up to 14 days. Workers Free is fixed at 24 hours. ([source](https://developers.cloudflare.com/queues/platform/pricing/))

### Maximum delay

- Amazon SQS: 15 minutes maximum per-message delay (message timer) or per-queue delay; default is 0 seconds. ([source](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html))
- Cloudflare Queues: 24 hours, set with delaySeconds when sending or retrying. ([source](https://developers.cloudflare.com/queues/platform/limits/))

### 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. ([source](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-queues.html))
- 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. ([source](https://developers.cloudflare.com/queues/platform/limits/))

## Which should you choose?

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.

Consider something else: 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.

Consider something else: 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.

## Documented by only one

- Entry paid plan: Amazon SQS: No paid plan or minimum fee; billed per request after the free 1 million requests a month.
- Regions: Amazon SQS: 34 commercial AWS Regions plus 2 AWS GovCloud (US) Regions listed in the SQS service endpoints table.
- SOC 2: Amazon SQS: Listed as SOC-compliant on AWS's own compliance scope page.
- ISO 27001: Amazon SQS: Covered under AWS's account-wide ISO/IEC 27001:2022 certification — not scoped per-service the way SOC, HIPAA and PCI DSS are on AWS's own site.
- HIPAA: Amazon SQS: Listed as a HIPAA-eligible service on AWS's own reference page.
- GDPR / data residency: Amazon SQS: AWS customers can process personal data on all AWS services in compliance with GDPR, and choose the storage type and geographic region for their data.
- PCI DSS: Amazon SQS: Listed as PCI DSS-compliant on AWS's own compliance scope page.
- Encryption at rest: Amazon SQS: Server-side encryption of queue contents with SQS-managed keys (SSE-SQS) or AWS KMS keys (SSE-KMS).
- Customer-managed keys: Amazon SQS: Supported via SSE-KMS: queues can use a customer managed KMS key created and policy-controlled in AWS KMS.
- Role-based access control: Amazon SQS: IAM identity-based policies on users, groups and roles plus resource-based queue policies control access to queues and actions.
- Private networking / VPC: Amazon SQS: Interface VPC endpoints (AWS PrivateLink) let a VPC reach SQS privately, including FIPS endpoints; HTTPS endpoints only.

## 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.
