Cloudflare Pages — static and SSR site hosting
What is Cloudflare Pages?
Cloudflare Pages is a hosting platform from Cloudflare (launched 2020, GA 2021) for deploying static sites and SSR apps via Workers. Competitor to Vercel and Netlify in the JAMstack hosting segment.
Key differentiator: free unlimited bandwidth — vs Vercel/Netlify where traffic above free tier costs significantly.
Key features
- Global CDN — 300+ Cloudflare data centers, edge in every country
- Unlimited bandwidth — even on free tier
- 500 builds/month on free, 5000 on paid ($20/mo)
- Git integration — push to GitHub/GitLab → auto-deploy
- Preview deployments — each PR gets a URL
- Custom domains — unlimited, with auto SSL (Let's Encrypt)
- Workers integration — SSR via Pages Functions (Workers underneath)
- Web Analytics built-in — cookie-free, GDPR-compliant
- DDoS protection — native Cloudflare WAF
Cloudflare Pages vs Vercel vs Netlify
| Feature | CF Pages | Vercel | Netlify |
|---|---|---|---|
| Free bandwidth | Unlimited | 100 GB | 100 GB |
| Build minutes (free) | 500/mo | 6000/mo | 300/mo |
| Edge locations | 300+ | 100+ | 100+ |
| SSR / Functions | Workers | Edge Functions | Functions |
| Pricing scaling | Very flat | Expensive at traffic | Expensive at traffic |
| Image optimization | No native | Built-in | No native |
| Form handling | Workers manual | None | Built-in |
| Analytics | Built-in (cookieless) | Plus paid | Plus paid |
Verdict: Cloudflare Pages best when expecting high traffic. Vercel best for Next.js apps with heavy SSR. Netlify for legacy Jamstack.
Cloudflare Pages in stack 2026
Typical stack with CF Pages (used by ARDURA Lab):
- Framework: Astro, Next.js (static export), SvelteKit
- Repo: GitHub → CF Pages auto-deploy on push to main
- Domain: managed via Cloudflare DNS (auto SSL)
- Forms: Pages Functions (Workers) + Resend for email
- Search: Pagefind (static)
- Analytics: CF Web Analytics + Google Analytics 4
- Edge cache: aggressive cache headers via
public/_headers
_headers configuration
CF Pages supports public/_headers file (like Netlify):
/*
Content-Security-Policy: default-src 'self'; ...
X-Content-Type-Options: nosniff
Referrer-Policy: strict-origin-when-cross-origin
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
/_next/static/*
Cache-Control: public, max-age=31536000, immutable
/fonts/*
Cache-Control: public, max-age=31536000, immutable
_redirects configuration
# Static redirects
/old-page /new-page 301
# Wildcard
/blog/* /artykul/:splat 301
CF Pages and SEO
- Speed → global edge CDN, LCP under 2s globally
- Auto HTTPS → SSL signal
- HTTP/2 + HTTP/3 → fewer blocking requests
- No bandwidth limits → you don't fear hosting killing itself on viral content
- Workers SSR → dynamic content with edge latency
- Web Analytics → first-party analytics without 3rd party cookies
Common mistakes
- No
_headers— CSP/HSTS not implemented by default → security audit findings - Default cache headers — HTML uncached (correct), but static assets without
immutable - Build environment variables — secrets in UI panel, not committed
- Domain DNS not on CF — without DNS on CF you don't benefit from full edge optimization
Related terms
- Astro — preferred framework
- Core Web Vitals — CF Pages wins
- SEO — speed = ranking signal
- Static site generation — primary use case
- Lighthouse — measurement
- Technical SEO — context