Temps vs Cloudflare Pages
Full-stack deployments without the edge constraints
Cloudflare Pages wins for static sites: 300+ edge locations, free unlimited bandwidth, zero config. Temps wins for full-stack apps that need unrestricted Next.js, managed PostgreSQL, and bundled observability. A full-stack Cloudflare setup (Workers + external Postgres + Sentry + PostHog) runs $50–125+/mo; Temps bundles the equivalent for ~$6/mo on your own server.
Monthly cost at a glance
The short answer
Choose Temps if you…
- You're building full-stack apps with databases and background jobs
- You need full Next.js App Router support — ISR, next/image, Server Actions — without adapters or edge-runtime rewrites
- You want error tracking, session replay, and analytics built-in
- You need managed PostgreSQL — not external providers adding $19–50/mo
- Your Workers bills are spiking above $5–25/month for SSR traffic
- You want to self-host for data sovereignty, compliance, or cost control
- You don't want to learn Workers, D1, R2, KV, and Durable Objects
Choose Cloudflare Pages if you…
- You're deploying static or JAMstack sites with no server-side logic
- You want global edge deployment across 300+ cities with zero config
- You need Cloudflare's built-in DDoS protection and WAF
- You prefer serverless with zero infrastructure management
- You're already deep in the Cloudflare ecosystem (Workers, R2, D1, KV)
- Your app naturally fits the edge runtime constraints
- You want infrastructure run by a major network — Temps is young (v0.1.0)
Why teams switch from Cloudflare Pages
- Full Next.js support, no workarounds
- Cloudflare Pages requires the @cloudflare/next-on-pages adapter or OpenNext, limits you to the edge runtime, and doesn't support ISR natively. Temps runs unmodified Next.js via Docker — every App Router feature works out of the box.
- 500 builds/month free, then costs escalate
- The Cloudflare Pages free tier is 500 build minutes/month. Pro is $20/mo (annual) or $25/mo (monthly) for 5,000 minutes. SSR via Workers adds $5/month for 10M requests, then $0.50 per million more. Temps is self-hosted with unlimited builds.
- No ecosystem lock-in
- Cloudflare Pages ties you to Workers, D1, R2, and Durable Objects — all proprietary Cloudflare APIs. Temps is self-hosted on any server with standard PostgreSQL, Redis, and S3-compatible storage.
- Managed databases included
- Cloudflare Pages has no managed PostgreSQL. Full-stack apps need an external provider (Neon, PlanetScale, Supabase) adding $15–$25+/month. Temps includes managed PostgreSQL with HA, Redis, and S3 storage.
Feature comparison
What each platform includes out of the box, and what needs a separate subscription.
Git push deployments
Temps
YesCloudflare Pages
YesPreview deployments
Temps
YesCloudflare Pages
YesPer branch, automaticAutomatic SSL
Temps
YesCloudflare Pages
YesCustom domains
Temps
YesCloudflare Pages
Yes100/250/500 per project (Free/Pro/Business)Build minutes
Temps
UnlimitedCloudflare Pages
500/mo free; 5,000/mo on Pro ($20/$25/mo)Docker support
Temps
YesCloudflare Pages
NoCloudflare Containers exist but are Workers-attached, usage-billedFull Next.js App Router support
Temps
YesAll features, no adapter neededCloudflare Pages
NoRequires @cloudflare/next-on-pages or OpenNextISR (Incremental Static Regen)
Temps
YesNative supportCloudflare Pages
NoNot supported; requires workaroundsnext/image optimization
Temps
YesBuilt-inCloudflare Pages
NoPartial — edge runtime limitationsManaged PostgreSQL
Temps
YesHA clusters includedCloudflare Pages
NoExternal provider required (Neon, Supabase, etc.)Managed Redis
Temps
YesIncludedCloudflare Pages
NoExternal required (Upstash, etc.)S3-compatible storage
Temps
YesBuilt-in (RustFS, MinIO supported)Cloudflare Pages
YesR2 (S3-compatible API)Error tracking
Temps
YesSentry-compatibleCloudflare Pages
NoThird-party requiredAnalytics
Temps
YesPrivacy-first, unlimited, custom eventsCloudflare Pages
YesBasic page views onlySession replay
Temps
YesBuilt-inCloudflare Pages
NoUptime monitoring
Temps
YesBuilt-in checks + alertingCloudflare Pages
NoBackground workers / cron
Temps
YesLong-running cron & queuesCloudflare Pages
NoWorkers limited to 30s CPU timeSelf-hosted option
Temps
YesCloudflare Pages
NoGlobal edge network
Temps
NoVia worker nodesCloudflare Pages
Yes300+ PoPs worldwideDDoS protection & WAF
Temps
NoCloudflare Pages
YesIncluded via Cloudflare network
What it actually costs
Cloudflare Pages free tier is generous for static sites: 500 build minutes/month, unlimited bandwidth, 100,000 Workers requests/day for SSR. But Next.js full-stack apps need Workers Paid ($5–25+/month), an external PostgreSQL provider like Neon ($19+/month), and third-party observability tools ($26+/month Sentry, $0–50+/month PostHog). A typical full-stack Cloudflare production setup costs $50–125+/month. Temps Cloud bundles managed PostgreSQL, error tracking, session replay, and analytics from ~$6/month — no adapters, no edge runtime constraints.
| Scenario | Temps | Cloudflare Pages |
|---|---|---|
| Static site (free tier) | $0 (self-hosted, unlimited builds) | $0 (500 builds/mo, unlimited requests) |
| Next.js SSR app | $6/mo (Temps Cloud) | $25/mo Pages Pro + $5/mo Workers = $30/mo (no DB) |
| Full-stack app + DB | $6/mo (Temps Cloud) | $30/mo (Pages + Workers) + $19/mo (Neon) = $49+/mo |
| Full-stack + DB + observability | $6/mo (Temps Cloud) | $49/mo + $26/mo Sentry + $0–$50/mo PostHog = $75–125+/mo |
Next.js on Cloudflare Pages: what you need to know
Next.js on Cloudflare Pages works, but with constraints. Here's what trips up teams making the switch.
wrangler pages deploy .next — what it actually does
The standard Next.js deploy to Cloudflare Pages uses the Wrangler CLI to upload your built output to the Cloudflare edge network. Unlike a Node.js server deployment, this compiles your app to run inside Cloudflare's V8 isolate runtime (Workers). You need the @cloudflare/next-on-pages adapter installed, which transforms the Next.js build output into a format Workers can execute.
npx @cloudflare/next-on-pages wrangler pages deploy .vercel/output/static
App Router compatibility via OpenNext
OpenNext provides a Cloudflare adapter that handles more of the Next.js App Router surface area than @cloudflare/next-on-pages alone. It supports React Server Components and streaming, but ISR (revalidate intervals) still requires Cloudflare's Cache API workarounds. Middleware runs at the edge but is limited to the Workers runtime APIs — no Node.js fs, crypto, or net modules.
# openNext cloudflare adapter bunx --bun open-next build --preset cloudflare
Edge runtime limitations — no Node.js APIs
Cloudflare Pages runs Next.js in the edge runtime, not a Node.js server. This means you cannot use any Node.js built-in modules (fs, path, crypto from node:crypto, etc.) in API routes or server components. Libraries that depend on Node.js internals (many ORMs, native addons, some auth libraries) require polyfills or replacements. Route Handlers and Server Actions work, but must stay within the edge runtime constraints.
ISR and on-demand revalidation
Incremental Static Regeneration (revalidate: 60 in page config, or next/cache revalidatePath) does not work natively on Cloudflare Pages. The Cloudflare Cache API can approximate it, but behavior differs: revalidation is per-PoP, not globally coordinated. next/image works in static mode but the default image optimization endpoint requires Workers and does not support all image formats.
Migrating from Cloudflare Pages
Medium difficulty
Difficulty scales with how deep you are in Cloudflare's proprietary runtime. Static sites and JAMstack apps migrate fastest — just point Temps at the same build output. Next.js apps using Workers for SSR need refactoring from the edge runtime to standard Node.js (plan 1–3 days). Apps built around D1 (SQLite) need schema migration to PostgreSQL; Durable Objects have no direct equivalent and require architectural changes.
When to migrate away from Cloudflare Pages
| Switch when… | Details |
|---|---|
| Workers SSR cost exceeds $5–25/month | Every 1M extra requests beyond the Workers Paid plan costs $0.50. A moderately trafficked SSR app (10M+ req/month) can hit $10–$50/month in Workers costs alone, before database or storage fees. |
| You need ISR or full next/image support | revalidate intervals, on-demand revalidation via revalidatePath, and next/image with all backends require a Node.js server. Cloudflare's Cache API approximations have per-PoP inconsistency and format limitations. |
| You need managed PostgreSQL | Cloudflare has no native Postgres offering. Connecting to Neon, Supabase, or PlanetScale adds $15–$50+/month and a cross-network round-trip on every query from the edge. |
| Build minutes exceed 500/month on the free plan | Active development teams hit 500 build minutes quickly (roughly 8–10 minute build × 50 deploys). Upgrading to Pages Pro costs $25/month for 5,000 minutes — more than Temps Cloud for the full stack. |
| You need long-running background jobs or cron | Cloudflare Workers have a 30-second CPU time limit per request (128MB memory). Long-running jobs, video processing, or heavy data pipelines need a separate service, adding cost and complexity. |
| Your team needs full observability | Cloudflare Pages provides basic web analytics only. Error tracking (Sentry $26+/mo), session replay (PostHog $0–$50+/mo), and uptime monitoring (Betterstack $25+/mo) are all external add-ons. |
Frequently asked questions
What are the Cloudflare Pages free tier limits in 2026?
Cloudflare Pages free tier in 2026 includes 500 build minutes per month, unlimited sites, unlimited bandwidth, unlimited custom domains, and unlimited requests for static assets. For Next.js apps with server-side rendering, you'll also consume Cloudflare Workers — the Workers free tier allows 100,000 requests per day (roughly 3 million per month). There is no managed PostgreSQL or Redis on any Pages plan; you need an external database provider.
How much do Cloudflare Pages build minutes cost in 2026?
Cloudflare Pages free plan includes 500 build minutes per month across all your projects. The Pro plan (part of Workers Paid at $25/month) increases this to 5,000 build minutes per month. Business plan ($85/month) provides 20,000 build minutes per month. There is no per-minute overage charge — you must upgrade your plan to get more minutes. Each build minute counts against deploys for all Pages projects in your account combined.
Does Cloudflare Pages support Next.js in 2026?
Yes, but with important limitations. Cloudflare Pages supports Next.js via the @cloudflare/next-on-pages adapter or the OpenNext Cloudflare preset. However, the app must run in Cloudflare's edge runtime (not Node.js), which means no Node.js built-in modules (fs, path, native crypto), no ISR without Cache API workarounds, and limited next/image support. You deploy using wrangler pages deploy .next or the OpenNext CLI. Standard Node.js Next.js deployments — ISR, full image optimization, long-running Server Actions — are not supported on Cloudflare Pages.
Can I use custom domains on the Cloudflare Pages free plan?
Yes. Cloudflare Pages allows unlimited custom domains on the free plan — this is one of the most generous features compared to competitors like Vercel (1 domain on free) or Netlify (1 domain on free). You get both *.pages.dev subdomains and your own custom domains at no extra cost. Your domain's DNS can be managed by Cloudflare or pointed via CNAME if hosted elsewhere.
What is 'wrangler pages deploy .next' and why is it different from a standard Next.js deploy?
wrangler pages deploy .next is the Cloudflare CLI command to upload a Next.js app to Cloudflare Pages. Unlike a standard Next.js deployment (which runs a Node.js server), this targets Cloudflare's V8-based edge runtime via Workers. You first run npx @cloudflare/next-on-pages (or the OpenNext Cloudflare build), which transforms your Next.js output into Workers-compatible format. Then wrangler uploads that output to the Cloudflare network. The build command (next build) is the same, but the runtime environment is fundamentally different — no Node.js APIs, edge-runtime only.
Is Cloudflare Pages pricing free for static sites in 2026?
Yes, Cloudflare Pages is effectively free for static sites. The free plan includes 500 build minutes per month, unlimited bandwidth, unlimited requests, and unlimited custom domains — all at no cost. There are no per-request charges for static assets. The costs appear when you add Next.js SSR (needs Workers), databases (external provider required), or observability tools (third-party). For a pure static or JAMstack site, the free plan is genuinely competitive.
What are the Cloudflare Pages alternatives in 2026?
The main Cloudflare Pages alternatives in 2026 are: Temps (self-hosted full-stack PaaS with managed databases and observability included), Vercel (managed Next.js platform, $20/month Pro), Netlify (JAMstack platform, $19/month Pro), and Render (general-purpose PaaS). Temps is the strongest alternative when you need full Next.js support, managed PostgreSQL, error tracking, and session replay without assembling multiple services. Vercel is the closest match for pure Next.js without Cloudflare's edge constraints.
Cloudflare Pages vs Temps: which should I choose in 2026?
Choose Cloudflare Pages if: you're deploying static or JAMstack sites, you need global edge delivery across 300+ cities, you want Cloudflare's DDoS protection and WAF, or your app naturally fits the Workers edge runtime. Choose Temps if: you need full Next.js App Router support (ISR, next/image, Node.js APIs without adapters), you want managed PostgreSQL included (Cloudflare has no native Postgres), you need error tracking, session replay, and analytics without paying separately for Sentry ($26/mo), PostHog ($0–50/mo), and LogRocket ($69+/mo), or you want to self-host for data ownership and cost control. Cost comparison for a 5-person team with a full-stack Next.js app: Cloudflare Pages Pro + Workers + Neon + Sentry + PostHog = $75–125+/mo. Temps Cloud = ~$6/mo flat.
Does Temps use Cloudflare's technology anywhere?
Temps uses Pingora, Cloudflare's open-source reverse proxy (written in Rust), as its built-in proxy layer. Pingora is the same technology that processes over a trillion requests per day on Cloudflare's network — Temps ships it as part of the single binary, handling TLS termination, routing, and HTTP/2 without requiring Nginx or Caddy. This is separate from Cloudflare's paid edge network — Temps runs Pingora on your own server, not on Cloudflare's global infrastructure.
Further reading
Ready to switch from Cloudflare Pages?
Self-host Temps for free, or run it on Temps Cloud from ~$6/mo.