# Something live that many people watch at once

> Live auctions, collaborative editing, polls, chat rooms, game lobbies. Nicolas Dao's picks for this job (Cloudless Labs, Sydney), in order of preference, what he would avoid, and what to use instead.

- Use case 3 of 21 in The Stack, last reviewed 21 October 2026
- Web page: https://cloudlesslabs.com/stack/use-cases/realtime/

Picks, in order of preference:

1. **[Cloudflare Workers](https://cloudlesslabs.com/stack/cloudflare-workers/index.md)** (My default): The door. Checks the login and routes each socket.
2. **[Cloudflare Durable Objects](https://cloudlesslabs.com/stack/cloudflare-durable-objects/index.md)** (Use when it fits): The room. One referee per auction, document or room, holding every WebSocket.
3. **[Neon (serverless Postgres)](https://cloudlesslabs.com/stack/neon/index.md)** (My default): The record. Finished events are reconciled into Postgres.
4. **[Amazon S3](https://cloudlesslabs.com/stack/aws-s3/index.md)** (My default): The archive. Bid logs and history as Parquet for analytics.

Don't:

- ~~API Gateway~~: WebSocket APIs bill every message pushed to every watcher, close connections after 2 hours, and hold no state, so you still need a database to decide who's winning. The auction example costs about $407 a month, vs $15–30 with one Durable Object per auction. Instead: [Cloudflare Durable Objects](https://cloudlesslabs.com/stack/cloudflare-durable-objects/index.md).
- ~~GraphQL and AppSync~~: AppSync Events cost about $310 for the same auction, and bring GraphQL-era tooling. A Durable Object is the room and the referee in one. Instead: [Cloudflare Durable Objects](https://cloudlesslabs.com/stack/cloudflare-durable-objects/index.md).

Worked example: [A live auction on Durable Objects](https://cloudlesslabs.com/stack/guides/live-auction/index.md)

## The picks in brief

- [Cloudflare Workers](https://cloudlesslabs.com/stack/cloudflare-workers/index.md): My default. The edge primitive. It sits between your users and your real backend, and it's very, very good at that. Pricing: $5 a month per account, including 10M requests and 30M CPU-ms. Then $0.30 per million requests and $0.02 per million CPU-ms. Billed on CPU time only: waiting is free. No egress charges.
- [Cloudflare Durable Objects](https://cloudlesslabs.com/stack/cloudflare-durable-objects/index.md): Use when it fits. A tiny server with its own SQLite database, addressed by name. One referee for everyone connected to the same thing. Unbeatable for live, shared, short-lived state. Pricing: On Workers Paid: 1M requests included, then $0.15 per million. Duration: 400,000 GB-s included, then $12.50 per million GB-s (always billed at 128 MB, not billed while hibernating). Incoming WebSocket messages count 20:1; outgoing messages are free. Rows written: 50M included, then $1 per million. Storage: 5 GB included, then $0.20/GB-month.
- [Neon (serverless Postgres)](https://cloudlesslabs.com/stack/neon/index.md): My default. My go-to Postgres. Scales to zero, branches like git, and talks HTTP so Lambda needs no VPC or proxy. Pricing: Launch plan $0.106 per compute-unit hour, Scale $0.222; storage $0.35/GB-month; no minimum. Available in Sydney.
- [Amazon S3](https://cloudlesslabs.com/stack/aws-s3/index.md): My default. No complaints. Storage, data lake, archive. Pricing: Sydney: $0.025/GB-month (Standard). Internet egress $0.114/GB (first 10 TB): that's where it hurts. Requests: $5.50 per million PUT/LIST, $0.44 per million GET. Standard-IA $0.0138/GB, Glacier Instant Retrieval $0.005/GB. Transfer from S3 to CloudFront and to AWS compute in the same region is free.

## Related

- [A live auction on Durable Objects](https://cloudlesslabs.com/stack/guides/live-auction/index.md): the worked example for this job, with costs
- [Edge](https://cloudlesslabs.com/stack/layers/edge/index.md): every tool in this layer
- [APIs, queues and events](https://cloudlesslabs.com/stack/layers/api-events/index.md): every tool in this layer
- [Data](https://cloudlesslabs.com/stack/layers/data/index.md): every tool in this layer
- [Storage and delivery](https://cloudlesslabs.com/stack/layers/storage/index.md): every tool in this layer
- [Every use case and tool in one file](https://cloudlesslabs.com/stack/brief.md)
- [Map of every Markdown file on cloudlesslabs.com, with what each one answers](https://ask.cloudlesslabs.com)
