Last month I built a small Astro blog for a side project. Instead of picking a host based on vibes, I deployed the exact same build — same repo, same static output, 42 pages, ~1.1MB of assets — to all three free tiers and measured it for two weeks with real traffic from Hacker News and dev.to.
Here's what the marketing pages don't tell you.
The Free Tier Numbers (as of August 2026)
| Vercel | Netlify | Cloudflare Pages | |
|---|---|---|---|
| Bandwidth/month | 100 GB | 100 GB | Unlimited |
| Builds/month | 6,000 min | 300 min | 500 builds |
| Build timeout | 45 min | 15 min | 20 min |
| Serverless/edge functions | 100 GB-hrs | 125K invocations | 100K req/day |
| Commercial use allowed | ❌ (Pro only) | ✅ | ✅ |
| Analytics | $10/mo add-on | $9/mo add-on | Free (Web Analytics) |
That last row matters more than you'd think. Two weeks of free, privacy-friendly analytics on Cloudflare vs. paying $10/mo on Vercel just to see your own traffic.
Cold Performance: My Real Measurements
I hit each deployment from 3 regions (US-East, EU, APAC) with curl -w, 20 samples each, cold-ish cache:
| Metric | Vercel | Netlify | Cloudflare Pages |
|---|---|---|---|
| TTFB p50 (US) | 89ms | 121ms | 38ms |
| TTFB p50 (EU) | 102ms | 134ms | 41ms |
| TTFB p50 (APAC) | 287ms | 342ms | 64ms |
| TTFB p99 (worst) | 891ms | 1,204ms | 210ms |
Cloudflare wasn't slightly faster — it was 3-5x faster in APAC, which is where half my audience lives. Their edge network is just bigger (300+ PoPs vs Vercel's ~20 regions and Netlify's ~11).
The Build Minute Trap
Here's the controversy: Netlify's 300 build minutes/month is the real constraint nobody talks about. My Astro site builds in ~90 seconds. Sounds fine until you're iterating: 200 deploys/month and you're done. I hit the cap in week 2 of active development. Vercel's 6,000 minutes is effectively unlimited for hobby use. Cloudflare counts builds not minutes (500/month) — my 90s build and your 15s build cost the same, which actually favors slower builds.
Vendor Lock-in Reality Check
- Vercel: Next.js features (ISR, middleware) work best here — by design. Move away and you lose them.
- Netlify: Forms and split testing are genuinely nice, but the functions runtime is AWS Lambda with extra steps.
- Cloudflare Pages: Workers use the standard Service Worker API. Closest to portable. Wrangler CLI is excellent.
# What "portable" looks like — a Cloudflare Pages Function:
# functions/api/hello.ts
export const onRequest: PagesFunction = async () => {
return new Response(JSON.stringify({ ok: true, ts: Date.now() }), {
headers: { "content-type": "application/json" },
});
};
// 100K of these per day. Free. No cold start worth measuring (0-5ms vs Lambda's 200ms+).
My Verdict
- Best raw performance + truly free: Cloudflare Pages. Unlimited bandwidth and free analytics make it the only one I'd bet a growing project on.
- Best DX if you live in Next.js: Vercel — but the "free" tier is a trial; commercial use technically requires Pro ($20/mo).
- Netlify: caught in the middle in 2026. The 300 build-minute cap makes it the first one I'd drop.
I sketched the benchmark harness and the comparison tooling with MonkeyCode — the open-source AI coding assistant with a generous free quota: https://ly.cyberserval.tech/iIETXiF
Which free tier are you betting your side project on — and has build-minute anxiety ever actually bitten you? Drop your numbers below.
Top comments (0)