About this tool
Answer nine questions about your workload and get a scored recommendation across work queues, pub/sub, partitioned logs and event buses.
This decision helper scores four messaging patterns — work queue, pub/sub topic, partitioned log and event bus — against nine properties of your workload: consumer count, replay needs, ordering, retention, throughput, processing model, routing, latency and per-message retry control. Answers that are hard constraints rather than preferences rule a pattern out entirely, so a request to replay from the beginning removes plain queues instead of merely marking them down. Every score is shown, so you can argue with the rubric rather than trust it.
Open PubSub vs Queue Decision Helper on AltFTool — it loads instantly in your browser.
Paste your code or data sample into the workspace.
Pick the format, conversion, or analysis you need.
Copy the polished result straight back into your project.
Replay-from-zero or multi-week retention removes patterns that physically cannot do it.
Each pattern lists the answers that helped and hurt it, so the recommendation is reviewable.
A margin under five points is reported as too close to call rather than dressed up as a decision.
A queue delivers each message to exactly one consumer, so adding workers spreads the load; pub/sub delivers a copy to every subscriber, so adding subscribers multiplies the work. Queues suit task distribution, pub/sub suits notification. If you find yourself creating one queue per consumer, you wanted pub/sub.
When consumers need to replay history, when you need ordering per key at high throughput, or when the message log is the system of record rather than a hand-off. Kafka keeps messages for a configured retention regardless of consumption, which is exactly what a queue does not do — an acknowledged queue message is gone.
Only within the retention the service keeps, and usually only for subscriptions that already existed. Google Cloud Pub/Sub retains unacknowledged messages for up to 7 days and can optionally retain acknowledged ones for replay; Amazon SNS does not retain anything itself. A subscription created today will not see yesterday's events.
An event bus routes on content: producers publish one event and the bus evaluates rules against its attributes to decide which targets receive it, so a new consumer subscribes without the producer changing. A topic is a fixed channel — consumers get everything published to it and filter themselves. Buses like Amazon EventBridge trade a little latency for that routing.