Hosting

★ Tested by Paul Last tested May 2026· 9 mo of use

Cloudflare Workers + Pages Review

The cheapest credible edge platform for content sites in 2026. Free tier is genuinely production-usable.

Paul Reviewed by Paul Published: May 19, 2026 Last tested: May 15, 2026
Rating
★★★★★ 4.5/5
VTS Score
90/100
Pricing
Free (Workers + Pages free tier)
Founded
2009
C
Standout

Zero egress fees on R2 storage. Meaningfully different cost curve from AWS S3 at any scale.

Standout

Zero egress fees on R2 storage. Meaningfully different cost curve from AWS S3 at any scale.

Known weakness

Workers compute model (no full Node APIs by default) requires careful library selection or polyfills.

Use it if…
  • You're hosting a static or static-mostly site and want edge speed without paying AWS prices.
  • You're building serverless APIs and the Workers free tier ceiling (100k req/day) matches your traffic profile.
  • You're storing media or assets and want S3-compatibility without egress fees (R2).
  • You want DDoS, WAF, and bot protection without configuring a separate service.
Don't use it if…
  • You're building a full-Node-API server and refactoring around Workers' compute model is too disruptive. Use Fly.io, Railway, or Render.
  • Your application requires sustained long-running compute (Workers max 30 seconds CPU time per invocation).

Overview

Cloudflare Workers and Cloudflare Pages are the deploy targets for Vibetoolstack. Every cron rebuild ships the Astro static output to a Cloudflare Workers binding via Wrangler, and the result is live at the edge in 80+ regions within seconds of build completion.

Cloudflare's positioning has evolved: from a CDN + DDoS provider to a complete edge-compute platform. Workers, Pages, R2 (storage), D1 (SQL), KV (key-value), Queues, and Durable Objects sit in one console with one billing model.

Pros & Cons

Pros

• Free tier is genuinely production-usable: 100k req/day Workers, unlimited bandwidth Pages, no surprise egress fees

• Edge network reaches every major population in 30ms or less

• Workers + Pages + R2 + D1 + KV in one console with one bill. Simpler than AWS's 200-service sprawl

• Wrangler CLI is mature and scriptable; CI integration is straightforward

• Strong security defaults (DDoS protection, WAF, bot management) without configuration

Cons

• Workers asset binding 25 MiB per-asset limit. Image-heavy sites need R2

• Workers compute model (no Node APIs by default) requires polyfills or careful library selection

• Higher-tier pricing climbs faster than initial impressions suggest once you exceed free-tier ceilings

• Cloudflare Pages and Workers branding overlap is confusing. Pick Workers with asset bindings, not Pages, for most use cases

My Experience

What VTS ships to Cloudflare

Vibetoolstack uses Cloudflare Workers (via wrangler.jsonc binding the static assets) as the hosting target. Workers Routes handle the apex domain. Cloudflare Pages is used for preview deployments (the /preview/ subdomain). Basic-auth-protected /internal/pipeline dashboard runs on Workers with WORKERS_BASIC_AUTH bindings.

Deploy cycle: GitHub Action runs `wrangler deploy` on every cron-triggered rebuild (every 30 minutes 06:00-22:30 UTC). Average deploy completion under 20 seconds for the assets-binding upload. Edge propagation is near-instant.

What we use beyond hosting

Cloudflare Access for the /internal/* basic-auth-gated routes. Cloudflare Tunnel for one of the local-dev Sanity Studio preview links. Cache rules to bypass certain dynamic routes. Page Rules (legacy) to enforce HTTPS.

What broke (so you don't have to)

Workers asset binding has a 25 MiB per-asset limit. Our `_pagefind/` search index split across multiple files and stays well under but it's a real ceiling for image-heavy sites. Plan to use R2 for media if your build exceeds Workers asset constraints.

Worker subrequests on the free tier limit to 50 per invocation. Not a constraint for static-output sites; matters for SSR-heavy apps.

First-time Wrangler login on a new machine is more friction than necessary (browser-based OAuth flow with timeouts). Worth scripting once and aliasing.

What we'd do again

Default to Workers over Pages for static sites. The "Pages" branding suggested it was the static-site path; in reality Workers with asset bindings is more flexible, costs the same, and integrates with everything else in the Cloudflare console more cleanly.

Use Wrangler from CI rather than the dashboard for production deploys. The CLI is faster, more scriptable, and produces deterministic builds.

Best Use Cases

Static-site hosting at edge

The use case Cloudflare is unambiguously best at. Free tier covers most indie publishers (100,000 requests/day), and the edge network puts assets within ~30ms of every major user population worldwide. Vibetoolstack consistently shows sub-200ms TTFB from EU, US, and AU.

Serverless API endpoints

Workers run JavaScript or WASM at the edge. Useful for API routes, redirects, basic-auth gates, or webhook receivers. The free tier (100k requests/day) is enough for most indie operator needs.

CDN and DDoS protection

Cloudflare's original product. Still best-in-class for protection against bot traffic, DDoS, and security threats. The Pro tier ($20/month) adds image optimization, WAF, and faster cache rules.

R2 object storage

S3-compatible storage with zero egress fees. Strong fit for media-heavy sites, asset CDNs, or backup workflows. Vibetoolstack uses R2 for asset backups; the egress-free model meaningfully outperforms S3 at scale.

Links

Frequently asked questions

Should I use Cloudflare Pages or Workers for static hosting?
Workers with the asset binding pattern. The branding suggests Pages is the static path, but Workers asset bindings give you the same static hosting plus the ability to add custom logic (auth gates, redirects, API routes) at the same edge layer without splitting infrastructure. Vibetoolstack runs entirely on Workers and recommends the same.
Is the Cloudflare free tier really free?
Yes for hosting and bandwidth. The Free plan covers unlimited bandwidth on Pages and 100,000 Worker requests per day. R2 storage has a free tier (10 GB) before paid tiers. Most indie operators never hit a paid bill from Cloudflare; once you do, the climb is gentler than AWS but steeper than the free-tier impression suggests.
How does Cloudflare R2 compare to AWS S3?
R2 is S3-API-compatible and has zero egress fees. For workflows that serve media to users (image CDNs, asset stores), R2 is dramatically cheaper at any scale because S3's egress costs dominate the bill above small data volumes. For pure backup or archive use cases where data rarely leaves the bucket, S3's cheaper storage tiers (Glacier) can be cheaper.
Does Cloudflare have an affiliate program?
Not a public revenue-sharing affiliate program. Cloudflare has a partner ecosystem for resellers and MSPs, and an Apps marketplace for integrations, but no commission-based referral program comparable to PartnerStack-style SaaS affiliates. If you're monetizing Cloudflare content, the value is authority and stack-decision credibility, not direct commission.
Can I run a full SaaS backend on Cloudflare Workers?
Yes, increasingly. D1 (SQL), KV (key-value), R2 (object storage), Queues, and Durable Objects cover most SaaS data needs. The compute constraint (30s CPU per invocation, no full Node APIs) shapes your library choices. Many indie SaaS in 2026 run end-to-end on Cloudflare; the architecture works but requires intentional library and pattern selection.
In this review