Edge
Between your users and your backend.
My default
2 tools in this layer.
Anti-bot for every form: a CAPTCHA replacement most visitors never notice, free and unlimited. With a Worker and Resend, it's a contact form with no form service at all.
Pricing: Free: unlimited challenges, up to 20 widgets per account, 10 hostnames per widget. Enterprise adds unlimited widgets and removes the branding.
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.
Use when it fits
3 tools in this layer.
The framework I'd pick for content sites that need server rendering. Static by default, server-rendered where a page needs it, and owned by Cloudflare, so Workers is its home.
Pricing: Free (MIT). You pay Workers pricing for the pages rendered on request; static pages are free on Cloudflare.
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.
Server-rendered Next.js without Vercel. The OpenNext adapter runs a normal Next.js build on Workers: SSR, ISR, server actions, middleware and image optimisation.
Pricing: Workers pricing: Workers Paid is $5 a month with 10M requests and 30M CPU milliseconds included. ISR pages cache in R2.
Where they're used
The jobs that pick or avoid a tool from this layer.
- 01 An API for my app I need a backend API that reads and writes a database. My picks: Lambda function URLs, Neon (serverless Postgres), Lambda Web Functions, Cloudflare Workers
- 02 An AI chat or LLM feature My app needs to call an LLM and stream the answer to users. My picks: Cloudflare Workers, OpenRouter, pgvector, Cloudflare AI Gateway
- 03 Something live that many people watch at once Live auctions, collaborative editing, polls, chat rooms, game lobbies. My picks: Cloudflare Workers, Cloudflare Durable Objects, Neon (serverless Postgres), Amazon S3
- 04 A traffic spike I can see coming A flash sale, ticket drop or launch where thousands hit at once. My picks: Cloudflare Workers, Cloudflare Durable Objects, AWS Lambda, Stripe
- 05 A website, SPA or PWA A marketing site or a front-end app. My picks: Cloudflare static hosting, Cloudflare R2, Astro on Cloudflare Workers, Next.js on Cloudflare Workers (OpenNext), Cloudflare Turnstile
- 09 Device and IoT data Thousands of devices sending readings that end up in reports. My picks: AWS IoT Core, Amazon SQS, Neon (serverless Postgres)
- 16 Logs without a shocking bill Observability that doesn't cost more than the app. My picks: Amazon CloudWatch, Amazon Data Firehose, DuckDB, Cloudflare Workers
- 20 Sign-in and identity How users sign in, reset passwords and use Google, Microsoft or their company login. My picks: Better Auth, Amazon Cognito, Resend, Cloudflare Workers
Want this stack in your AWS account?
Cloudless Labs is a Sydney consultancy. We migrate on-premises systems to AWS, build serverless apps on this stack, and coach teams to ship with Claude Code and Codex.