☁️

Why I Build on Cloudflare Instead of AWS

June 2026•7 min read
CloudflareInfrastructureWeb DevelopmentHostingCloudflare Workers
Why I Build on Cloudflare Instead of AWS

The standard "AWS vs Azure vs Google Cloud" comparison assumes you need a Kubernetes cluster and an SRE team. For the kind of work I do — small business sites, app prototypes, deployed tools — Cloudflare handles most of it better and cheaper. This is an honest account of why, and where it falls short.

What Cloudflare Actually Offers

Most people know Cloudflare as a CDN and DDoS protection layer. The product has expanded significantly: Workers (serverless compute at the edge), Pages (static and full-stack deployment), R2 (object storage with no egress fees), D1 (SQLite at the edge), KV (key-value store), and Durable Objects for stateful applications.

The free tier is genuinely free — not "free until you look at it wrong." For a small business site with reasonable traffic, the free tier covers everything. This site runs on Workers. Monthly hosting cost: $0.

The Edge Deployment Advantage

When you deploy to AWS, you pick a region — us-east-1, us-west-2. Visitors far from that region get slower response times. Cloudflare Workers deploy globally by default. A visitor in Tokyo gets a response from a Cloudflare datacenter in Tokyo, not from a server in Virginia.

For small business sites where load time directly affects Google rankings and conversion, this matters. A cached static site on Cloudflare's edge will outperform an equivalent site on single-region hosting every time.

What I Actually Deploy There

  • Client sites: Squarespace sites use Cloudflare for DNS and (optionally) proxying. React/Vite builds deploy directly to Cloudflare Pages with CI/CD from GitHub.
  • APIs and tools: Lightweight serverless functions run as Workers. No server to provision, no container to manage, no cold-start penalty for low-traffic tools.
  • Storage: R2 for file storage. No egress fees means you're not getting surprised by a bill because someone downloaded a large file.
  • Databases: D1 (SQLite) for simple data needs. Scales fine for apps with moderate data requirements.

Where Cloudflare Isn't the Answer

Honest limits: Cloudflare Workers have a 128MB memory limit and a CPU time limit per request. For heavy server-side processing — video transcoding, complex ML inference, large batch jobs — you need something else. Workers isn't the right place to run a model or process a large dataset.

For that kind of compute, I use local hardware or targeted cloud instances. But for the web layer — the part users actually interact with — Cloudflare handles it well for 90% of what small businesses and app prototypes need.

The AWS Complexity Tax

AWS is the right answer for large teams building complex distributed systems that need the full range of managed services. It's over-engineered for a 5-page business site. The learning curve, the IAM permissions model, the regional configuration, the cost unpredictability — those are reasonable tradeoffs when you're building something that needs that infrastructure. They're unnecessary friction for a Missoula plumber who needs a fast website.

The right tool depends on what you're building. For most of what I build, Cloudflare is the right tool. When it isn't, I'll say so.

Building something and not sure where to host it?

I can walk through what your specific project actually needs. Most of the time it's simpler than the infrastructure debates online suggest.