Direct answer: at a 10 KiB average message, one subscription and 30 days/month, message-queue costs in 2026 are about: 100 msg/s — SQS 103.28, Azure Service Bus 159.20, Pub/Sub 192.73; 1,000 msg/s — SQS 1,036.40, Azure 1,298.00, Pub/Sub 1,930.80; 10,000 msg/s — Azure 5,963.60, SQS 10,367.60, Pub/Sub 19,311.51 USD per month. The ranking flips with the meter: SQS per million requests, Pub/Sub per TiB of throughput, Azure per-operation tiers. At 10 KiB, SQS is lowest at low/mid volume and Azure is lowest at 10,000 msg/s; at 1 KiB, Pub/Sub falls to about 192.73 at 1,000 msg/s, below SQS at 1,036.40; at 100 KiB, SQS bills two 64KB chunks while Azure still bills one operation. Align message size, subscription count and operation definitions before comparing unit prices.
This guide is for architecture, backend and procurement teams building asynchronous jobs, event-driven systems, order/payment messaging, log buffers and microservice decoupling. Data cut-off: 6 November 2026; prices come from the US pricing pages/official price APIs of AWS SQS, Google Cloud Pub/Sub and Azure Service Bus, in USD, excluding tax; all TCOs are editorial calculations, not vendor quotes. The three vendors define “request”, “throughput” and “operation” differently, so official facts, editorial assumptions and non-comparable items are kept separate.
SQS standard is 0.40/million requests with the first 1M free and 64KB chunks; Pub/Sub is 40/TiB of throughput with the first 10 GiB free, counting publish + every subscription; Azure Service Bus Standard is 10/month base, the first 13M operations free, then 0.80/million (13M–100M), 0.50/million (100M–2.5B) and 0.20/million (2.5B+). At 10 KiB, SQS wins low/mid volume and Azure wins at 10,000 msg/s; smaller messages favor Pub/Sub, larger messages favor Azure’s per-operation model.
Three meters: per million requests, per TiB throughput, operation tiers
SQS: standard queues 0.40/million requests (US East Tier 1), the first 1M requests/month free; FIFO 0.50/million; every 64KB chunk is one request (a 1MiB payload is 16 requests); a single request can carry up to 10 messages/1MiB. Pub/Sub: 40/TiB of throughput; publish and every subscription read count; the first 10 GiB/month per billing account is free; 10 KiB messages + 1 subscription = 2× ingress bytes; BigQuery subscriptions 50/TiB, Cloud Storage subscriptions 50/TiB, some import topics 80/TiB. Azure Service Bus Standard: 10/month base; the first 13M operations/month free, then 13M–100M at 0.80/million, 100M–2.5B at 0.50/million and above 2.5B at 0.20/million; Standard messages up to 256KB; Basic lacks topics/transactions; Premium is billed per messaging unit-hour.
| Platform | Metered unit | Published price/allowance | Boundary |
|---|---|---|---|
| Amazon SQS Standard | Requests (64KB chunks) | 0.40/million; first 1M free; FIFO 0.50/million | 1MiB payload = 16 requests; up to 10 messages/request |
| Google Pub/Sub | Throughput (publish + subscriptions) | 40/TiB; first 10 GiB/month free | 1 subscription = 2× ingress; BigQuery/GCS subscriptions 50/TiB |
| Azure Service Bus Standard | Operations + base fee | 10/month; first 13M operations free; 0.80/0.50/0.20 per million tiers | Standard 256KB; Basic no topics; Premium separate |
Sources: AWS SQS Pricing, Google Cloud Pub/Sub Pricing and Azure Service Bus Pricing (US/US East, accessed 6 November 2026). SQS uses standard-queue Tier 1; Azure uses Standard, East US retail pricing; USD, excluding tax. SQS FIFO, Pub/Sub retention/storage and Azure Premium/connections are separate.
Three tiers: SQS wins low/mid at 10 KiB, Azure flips at high volume
At 10 KiB/message, one subscription, 30 days/month: 100 msg/s (about 259M messages/month) — SQS 103.28, Azure 159.20, Pub/Sub 192.73; 1,000 msg/s (about 2.59B) — SQS 1,036.40, Azure 1,298.00, Pub/Sub 1,930.80; 10,000 msg/s (about 25.9B) — Azure 5,963.60, SQS 10,367.60, Pub/Sub 19,311.51. Annual: small 1,239/1,910/2,313; mid 12,437/15,576/23,170; large 124,411/71,563/231,738 (SQS/Azure/Pub/Sub).
| Scenario (10 KiB, 1 subscription) | SQS | Azure Service Bus | Pub/Sub |
|---|---|---|---|
| 100 msg/s (about 259M/month) | 103.28 | 159.20 | 192.73 |
| 1,000 msg/s (about 2.59B/month) | 1,036.40 | 1,298.00 | 1,930.80 |
| 10,000 msg/s (about 25.9B/month) | 10,367.60 | 5,963.60 | 19,311.51 |
Editorial calculation, not a quote. SQS = max(0, messages − 1M)/1M × 0.40; Pub/Sub = max(0, ingress MiB/s × 2 × 2,592,000/1,048,576 − 10/1024) × 40; Azure = 10 + tiered operations (13M free, 87M × 0.80, 2.4B × 0.50, excess × 0.20). Excludes tax, retention/storage, transfer, FIFO, Premium, support and migration; one message = one operation/request.
Message-size sensitivity: 1 KiB flips, 100 KiB flips again
At the same 1,000 msg/s: 1 KiB — Pub/Sub 192.73, SQS 1,036.40, Azure 1,298.00; 10 KiB — SQS 1,036.40, Azure 1,298.00, Pub/Sub 1,930.80; 100 KiB — Azure 1,298.00, SQS 2,073.20, Pub/Sub 19,311.51. The reason: SQS bills 64KB chunks, so 1 KiB and 10 KiB are one request while 100 KiB becomes two; Pub/Sub bills bytes, so 10× the message size is about 10× the cost; Azure bills operations within 256KB, so 1–100 KiB is still one operation. Measure average and P95 message size before choosing.
| Message size (1,000 msg/s) | SQS | Azure Service Bus | Pub/Sub |
|---|---|---|---|
| 1 KiB | 1,036.40 | 1,298.00 | 192.73 |
| 10 KiB | 1,036.40 | 1,298.00 | 1,930.80 |
| 100 KiB | 2,073.20 | 1,298.00 | 19,311.51 |
Editorial calculation, not a quote. SQS uses ceil(message size/64KB) requests; Pub/Sub counts publish + 1 subscription bytes; Azure Standard counts one operation within 256KB. Excludes tax, FIFO, retention/storage, transfer and support; real message distribution, batching and compression change the result.
Hidden costs: FIFO, retention, transfer, Premium
SQS: FIFO is 0.50/million (25% above standard); 64KB chunks multiply large-message requests; the S3 Extended Client adds S3 requests/storage; cross-region transfer is extra. Pub/Sub: throughput covers only “publish + subscription reads”; message retention/storage, snapshots, BigQuery/GCS subscriptions (50/TiB) and import topics (up to 80/TiB) are extra; multiple subscriptions add read throughput linearly. Azure: Standard’s 10/month base includes 1,000 brokered connections; extra connections are tiered at 0.03 each (1,000–100,000) and 0.025 each (100,000+); Premium is billed per messaging unit-hour (about 0.9275/hour per MU in East US), and geo-replication is extra; Standard caps messages at 256KB, so larger messages need Premium. All three exclude tax, support, migration and monitoring.
| Item | SQS | Pub/Sub | Azure Service Bus |
|---|---|---|---|
| Large messages | 64KB chunks, 1MiB max | Per byte, 10MB max | Standard 256KB; Premium 100MB |
| Ordering/dedup | FIFO 0.50/million | Ordering key; no extra fee | Sessions/duplicate detection (Standard+) |
| Multiple subscriptions | Need SNS fan-out | Each subscription bills read throughput | Topics/subscriptions included in operations |
| Retention/storage | Default 4 days, max 14 | Topic retention/storage extra | Premium/storage extra |
| Transfer/connections | Cross-region transfer extra | Egress/cross-region extra | Brokered connections beyond 1,000 extra |
Sources: the three official pricing pages/docs (accessed 6 November 2026). Only publicly verifiable items are listed; “extra” means confirm on the product/contract page and is not guessed here. Excludes tax, support, migration and monitoring.
Which option fits which scenario?
Low/mid volume, 1–100 KiB messages, simple queue/retry/DLQ: SQS, lowest at 100–1,000 msg/s at 10 KiB; FIFO adds 25%. Very high operation volume (10,000 msg/s class), messages ≤256KB, topics/transactions/sessions: Azure Service Bus, whose 0.20/million tier above 2.5B operations lowers the unit price. Very small messages (1 KiB class), high publish volume, already on GCP or needing multi-subscription fan-out: Pub/Sub, whose per-byte billing favors small messages. Need 10MB messages/global multi-subscription: Pub/Sub; 100MB: Azure Premium; 1MiB and a simple queue: SQS. None is a Kafka replacement: for long retention, partition replay and exactly-once stream processing, look at MSK/Confluent/Redpanda.
| Scenario | First choice | Why | Check first |
|---|---|---|---|
| Low/mid volume/simple queue | SQS | 0.40/million, first 1M free | 64KB chunks, FIFO, DLQ |
| Very high operations/≤256KB | Azure Service Bus | 0.20/million above 2.5B | Base fee, connections, Premium |
| Small messages/multi-sub/GCP | Pub/Sub | 40/TiB, first 10 GiB free | Publish+subscribe bytes, retention |
| FIFO/ordering | SQS FIFO / Service Bus sessions | Ordering/dedup | Throughput cap, duplicate detection |
| Large messages | Pub/Sub 10MB / Azure Premium 100MB | Message limits | Meter, transfer |
| Streaming replay/Kafka | MSK/Confluent/Redpanda | Partitions, retention, replay | Outside this TCO |
Sources: the three official pricing pages (accessed 6 November 2026). This is an editorial decision matrix, not vendor advice; actual throughput, latency, ordering guarantees, failover, loss rate and support response were not tested.
What should procurement and acceptance specify?
At least ten things: messages/second, average and P95 message size, subscription count, retention, ordering/dedup, batching, peak/burst, cross-region/transfer, connections, SLA/support. Run a 2–4 week POC on real traffic and record requests/operations, bytes, subscription reads, peaks, latency, retries and the bill; do not compare only “per million requests” or “per TiB”.
- Volume: average/peak messages/second, daily total, burst windows.
- Size: average/P95/max; compression, batching, 64KB boundaries.
- Subscriptions: subscriptions per topic; fan-out multiplies Pub/Sub reads.
- Retention: retention days, DLQ, replay, storage cost.
- Ordering: FIFO/ordering key/sessions, dedup window, throughput cap.
- Batching: up to 10 messages/1MiB per request; whether batching reduces requests.
- Transfer: cross-region/egress, PrivateLink, NAT/proxy.
- Connections: long-lived/AMQP, brokered connection limits.
- Contract: usage/commit, tiers, support/SLA, migration.
- POC: 2–4 weeks of real traffic; requests/operations, bytes, subscriptions, peaks, latency and bill.
FAQ
What is cheapest at 100 msg/s and 10 KiB?
SQS 103.28, Azure 159.20, Pub/Sub 192.73 per month. SQS bills about 259M requests (first 1M free) at about 103; Azure is 10 base + tiered operations at about 159; Pub/Sub is 4.8 TiB of throughput at about 193. At low volume and medium messages, SQS is lowest.
Why does Azure overtake at 10,000 msg/s?
Azure’s tier drops to 0.20/million above 2.5B operations; 25.9B operations cost about 5,964. SQS stays at 0.40/million, about 10,368; Pub/Sub at 482.8 TiB is about 19,312. At very high operation volume, Azure’s wholesale tier is lowest.
Do small messages change the answer?
Yes. At 1,000 msg/s and 1 KiB, Pub/Sub is about 192.73, below SQS 1,036.40 and Azure 1,298; at 10 KiB, SQS is lowest; at 100 KiB, SQS bills two 64KB chunks (2,073) while Azure stays at 1,298. Measure real message size first.
How does SQS’s 64KB chunk work?
Each 64KB chunk is one request; a 1MiB payload is 16 requests; one request can carry up to 10 messages/1MiB. 1 KiB and 10 KiB are one request, 100 KiB is two; batching can put multiple messages in one request (subject to 1MiB/10 messages), reducing request count.
Why is Pub/Sub counted as 2×?
Throughput includes publish and subscription reads; one topic + one subscription at 10 MiB/s ingress produces 20 MiB/s of throughput (10 publish + 10 read). More subscriptions add read throughput; BigQuery/GCS subscriptions are 50/TiB, not 40.
How do Azure’s 13M free and tiers work?
Standard has a 10/month base; the first 13M operations/month are free; 13M–100M is 0.80/million; 100M–2.5B is 0.50/million; above 2.5B is 0.20/million. At 1,000 msg/s (about 2.59B operations) it crosses the 2.5B line, so at 10,000 msg/s the unit rate drops to 0.20.
How much does FIFO/ordering add?
SQS FIFO is 0.50/million, 25% above standard 0.40; Service Bus Standard supports sessions/dedup at the same operation tiers; Pub/Sub uses ordering keys with no extra fee but bills by bytes. Ordering/dedup caps throughput, so confirm peaks.
What hidden costs should we expect?
Large-message chunks, multiple subscription reads, retention/storage, DLQ/replay, cross-region/egress, PrivateLink, brokered connection overage, Premium messaging units, support/SLA, migration and monitoring. SQS’s S3 Extended Client adds S3 requests/storage; Pub/Sub import/BigQuery subscriptions cost more; Azure Standard needs Premium above 256KB.
Research method and limitations
This article separates “official facts” from “editorial modelling”: SQS standard/FIFO request prices and 64KB chunk rules, Pub/Sub’s 40/TiB and 10 GiB free tier, and Azure Service Bus Standard’s 10/month base plus 0.80/0.50/0.20 tiers come from the three US pricing pages/official retail price API (accessed 6 November 2026); the 100/1,000/10,000 msg/s and 1/10/100 KiB totals are arithmetic on published unit prices, not vendor quotes. It does not compare actual throughput, latency, ordering guarantees, loss rate, failover or support response.
Eight limitations: (1) only US/US East public list prices are used, excluding tax, discounts, commitments and regional differences; (2) one message = one SQS request/Azure operation, 10 KiB average, one subscription and 30 days/month are assumed; real batching, compression and P95 size change the result; (3) Pub/Sub is modelled as publish + 1 subscription (2× bytes); multiple subscriptions are not included; (4) Azure uses Standard, excluding Premium, brokered-connection overage and geo-replication; (5) retention/storage, DLQ/replay, cross-region/egress, PrivateLink, monitoring, support and migration are excluded; (6) SQS uses standard queues only; FIFO at 0.50/million is not in the main table; (7) Kafka/MSK/Confluent/Redpanda streaming platforms are excluded; (8) prices and terms can change by contract, region and exchange rate. Treat this as a unit-conversion template and replace assumptions with a 2–4 week real-traffic POC.
Sources and basis
- Amazon Web Services, SQS Pricing: aws.amazon.com/sqs/pricing. Standard 0.40/million requests (Tier 1), FIFO 0.50/million; first 1M requests/month free; each 64KB chunk is one request; up to 10 messages/1MiB per request. Accessed 6 November 2026.
- Google Cloud, Pub/Sub Pricing: cloud.google.com/pubsub/pricing. Throughput 40/TiB; first 10 GiB/month per billing account free; publish + subscription reads count; BigQuery/GCS subscriptions 50/TiB; some import topics 80/TiB. Accessed 6 November 2026.
- Microsoft Azure, Service Bus Pricing: azure.microsoft.com/pricing/details/service-bus. Standard 10/month base; first 13M operations/month free; 13M–100M at 0.80/million, 100M–2.5B at 0.50/million, above 2.5B at 0.20/million; Standard messages 256KB; East US retail pricing. Accessed 6 November 2026.
Data cut-off 6 November 2026; prices are public list prices excluding tax; all models are editorial calculations. This is not procurement advice.