IBRAVRA Media Network
Website & Hosting • 13 min read

Vercel vs Netlify vs Cloudflare Pages: Frontend Hosting Pricing, Worked Per Gigabyte

Three hosts, three meters: Vercel sells a seat plus a usage credit, Netlify sells credits, Cloudflare charges a flat 5 dollars and gives away delivery. This guide prices the same 500 GB, 2 million-request month on all three, with build and function meters included.

By Enow A. Jovial • Published 2026-11-05

Three hosts, three pricing philosophies

Vercel, Netlify, and Cloudflare Pages all deploy a frontend from Git in minutes, and all three host a marketing site for free. The bills diverge the moment the site grows, because each vendor meters a different thing. Vercel sells a seat plus a usage credit, then bills resources on demand at regional rates. Netlify sells credits: every gigabyte, request, and production deploy consumes credits from a monthly pool, and the pool is the bill. Cloudflare charges almost nothing for hosting itself — no egress charge, static asset requests free and unlimited — and a flat $5 minimum for the Workers platform behind its dynamic features. Pick the vendor whose meter matches your traffic shape, because the meter is the price.

> [!KEY TAKEAWAY]

> At a 500 GB, 2 million-request month with 40 production deploys, the three bills are $73.33 on Netlify Pro, $5 on Cloudflare Workers Paid, and $20 plus CDN usage on Vercel Pro — and the spread is the meter, not the marketing. Bandwidth-heavy static sites are Cloudflare's home turf; Next.js-native teams pay Vercel for the integration; Netlify's credit pool punishes bandwidth first and everything else second.

!Netlify's credit meters: 15 credits per production deploy, 10 credits per GB-hour of compute, 20 credits per GB of bandwidth, 2 credits per 10,000 web requests

Who this guide is for, and who should stop here

This guide is for a founder or lead engineer choosing hosting for a marketing site, docs site, blog, or Next.js application with server-rendered pages and light API routes — the workload all three vendors are built for. It assumes Git-based deploys, preview deployments per pull request, and a custom domain with SSL. It is written for teams from a solo founder to a small engineering org, pricing one production site with one seat unless stated otherwise.

It is not for a persistent backend: databases, queues, long-running workers, and stateful servers belong on a backend platform, not a frontend host, and none of the math below prices them. It is also not for a team that needs a contractual uptime SLA on day one — that is an Enterprise conversation on all three vendors, and the self-serve prices below do not include it.

The plan ladders, side by side

| Vendor | Free tier | First paid tier | What the paid tier buys | Authority |

| :--- | :--- | :--- | :--- | :--- |

| Vercel | Hobby, $0, personal non-commercial use only | Pro, $20 per month | A $20 monthly usage credit, then on-demand pricing; Flat Rate CDN as an alternative to usage-based CDN billing | Vercel pricing page and pricing docs |

| Netlify | Free, $0, 300-credit monthly limit | Personal, $9 to $15 per month; Pro, $20 to $25 per month with unlimited members | Credit pools: 1,000 on Personal, 3,000 to 20,000 on Pro; add-on credits when auto recharge is enabled | Netlify pricing page |

| Cloudflare | Workers Free, $0 | Workers Paid, $5 per month minimum per account | Pages Functions billed as Workers; no data-transfer or throughput charges at any tier | Cloudflare Workers pricing docs |

Read the free tiers as what they are: evaluation tiers with ceilings, not production tiers at $0. Vercel's FAQ states Hobby is for personal, non-commercial use, and Hobby accounts are limited to usage caps and cannot purchase additional usage — a commercial site that outgrows Hobby hits a wall and must upgrade. Netlify's Free tier is a 300-credit limit: spend the credits and the meter stops you. Cloudflare's Free plan includes limited Workers and Pages Functions usage, with daily limits that fail requests when exceeded. A launch plan budgeting $0 past the free tier has a shutdown date built in.

The meters that actually bill

| Meter | Vercel | Netlify | Cloudflare |

| :--- | :--- | :--- | :--- |

| Bandwidth / data transfer | Fast Data Transfer, regional usage-based rates on Pro; Flat Rate CDN tier available | 20 credits per GB | No charge: no egress or throughput charges; static asset requests free and unlimited |

| Requests | CDN Requests, regional rates on Pro; 1 million included on Hobby | 2 credits per 10,000 web requests | Paid: 10 million included per month, then $0.30 per additional million; Free: 100,000 per day |

| Production deploys | Unlimited deployments; builds metered by CPU minutes | 15 credits per production deploy; deploy previews unlimited | Builds are not a per-deploy meter on the Workers pricing page |

| Build minutes | Basic machines $0.007 per build minute on paid teams; duration rounded up to the nearest minute, multiplied by CPUs | Not metered by credits; concurrency is the constraint (1 build on Free, 3 on Pro, then $40 each additional) | Not a per-minute meter on the Workers pricing page |

| Functions / compute | Fluid Active CPU: 4 hours included on Hobby; provisioned memory 360 GB-hours on Hobby; 1 million invocations on Hobby; Pro on demand, regional | 10 credits per GB-hour of compute | CPU time: 30 million milliseconds included per month, then $0.02 per additional million; 10 ms per invocation on Free |

| Seats | 1 paid seat included on Pro; $20 per month per additional paid seat | Pro includes unlimited members | Account-level plan, not per-seat |

Two rows deserve emphasis. First, Vercel's CDN rates are regional — no single per-gigabyte figure exists for a comparison table. Vercel's own docs table lists Fast Data Transfer as "Regional" for Pro, with "Flat Rate CDN" as the alternative. Any article quoting one Vercel CDN price without a region is inventing it. Second, Netlify's credit model converts every meter to dollars at one rate: Pro add-on credits cost $10 per 1,500 credits, so one credit costs $0.00667 at the margin. That conversion is what makes the worked math below reproducible.

Worked math: the tiny site, where all three cost $0

Profile: 10 GB of bandwidth, 100,000 requests, 2 production deploys, 1 seat, static site.

  • Netlify: bandwidth 10 × 20 = 200 credits; requests 100,000 / 10,000 × 2 = 20 credits; deploys 2 × 15 = 30 credits. Total 250 credits, inside the Free tier's 300-credit limit. Bill: $0.
  • Vercel: 10 GB inside Hobby's first 100 GB of Fast Data Transfer; 100,000 requests inside Hobby's 1 million CDN requests. Bill: $0, for a non-commercial project.
  • Cloudflare: 100,000 requests in a month inside the Free plan's 100,000-per-day allowance, and static asset requests free and unlimited. Bill: $0.
  • The lesson is not that hosting is free: the three free tiers converge at tiny scale and diverge immediately after it. At this scale, decide on framework, workflow, and deploy experience, because the price difference is zero and the later migration cost is not.

    Worked math: the growing site, where the meters bite

    Profile: 500 GB of bandwidth, 2 million requests, 40 production deploys, 120 build minutes, 1 seat, static site with light functions.

    Netlify, in credits first:

    $

    \text{Netlify Credits} = (500 \times 20) + \left(\frac{2{,}000{,}000}{10{,}000} \times 2\right) + (40 \times 15) = 10{,}000 + 400 + 600 = 11{,}000

    $

    Pro includes 3,000 credits, so 8,000 credits must be bought as add-ons:

    $

    \text{Add-On Cost} = 8{,}000 \times \frac{\$10}{1{,}500} = \$53.33

    $

    $

    \text{Netlify Total} = \$20 + \$53.33 = \$73.33 \text{ per month}

    $

    Cloudflare, on Workers Paid:

    $

    \text{Cloudflare Total} = \$5.00

    $

    Requests (2 million) sit inside the 10 million monthly inclusion, static assets are free and unlimited, and there is no egress charge to add. A purely static site is covered by Free at $0 within its daily limits — but a site with functions exceeding Free's 100,000 requests per day belongs on Paid, and $5 is the honest budget.

    Vercel, on Pro:

    $

    \text{Build Cost} = 120 \times \$0.007 = \$0.84

    $

    That $0.84 sits inside Pro's $20 monthly usage credit, so the seat and the builds together cost $20 before CDN usage. CDN usage beyond the credit is billed at regional rates Vercel does not publish as a single figure, or replaced by a Flat Rate CDN tier at a fixed monthly capacity price. The honest Vercel total is therefore $20 plus CDN usage beyond the credit — or $20 plus the Flat Rate tier — and any article giving a single Vercel total for a bandwidth-heavy site without naming the region or the tier is guessing at the largest line item.

    !Cloudflare's Workers Paid plan: a $5 monthly minimum, no data-transfer charges, Pages Functions billed as Workers, 10 million requests included

    Builds, concurrency, and the queue you feel

    Bandwidth decides the monthly bill; builds decide the daily experience. Vercel prices Basic build machines at $0.007 per build minute on paid teams, with duration rounded up to the nearest minute and multiplied by the machine's CPU count. Vercel's own example: a build taking 2 minutes 34 seconds on an Enhanced machine (8 CPUs) bills at 3 minutes × 8 CPUs × $0.0035, which equals $0.084. Short, frequent builds are cheap; long, CPU-heavy builds compound through the multiplier, which is why cutting build time beats negotiating price.

    Netlify does not meter builds in credits at all — it meters concurrency. Free and Personal allow 1 concurrent build, Pro allows 3, and each additional concurrent build costs $40. A team merging five pull requests at once on Pro waits in a queue of three; the fix is a $40 concurrency purchase, not a bigger credit pool. Cloudflare's Workers pricing page carries no per-minute build meter either, shifting the comparison back to bandwidth and functions, where Cloudflare already wins for static sites.

    Functions: the second meter, priced three ways

    A site with API routes, form handling, or edge rendering pays a second bill, metered differently by each vendor. Cloudflare's model is the most transparent: 10 million requests and 30 million CPU milliseconds included on Paid, then $0.30 per additional million requests and $0.02 per additional million CPU milliseconds, with no charge for duration beyond CPU time and no egress charge. A function-heavy site can be priced from its own logs with those two rates.

    Vercel's Fluid compute meters Active CPU — the time function code actively consumes — with 4 hours included on Hobby and on-demand regional pricing on Pro, plus provisioned memory at 360 GB-hours on Hobby. The meter rewards short, cacheable functions and punishes long-running ones: cache at the edge, and the function meter falls with the invocation count. Netlify meters compute at 10 credits per GB-hour, which converts at the Pro add-on rate to $0.0667 per GB-hour — letting a team compare function cost directly against the bandwidth line in the same credit pool.

    Decision matrix: which host for which site

    | Site | First choice | Why it wins | Authority |

    | :--- | :--- | :--- | :--- |

    | Static marketing site, docs, or blog with real traffic | Cloudflare Pages | $5 Paid or $0 Free; no egress charge; static requests free and unlimited | Cloudflare Workers pricing docs |

    | Next.js application with server components, ISR, and Vercel integrations | Vercel Pro | Native framework integration; $20 seat plus $20 credit; Flat Rate CDN removes the regional CDN meter | Vercel pricing page and docs |

    | Team that wants one credit pool and deploy-preview workflow, moderate traffic | Netlify Pro | Unlimited members; 3 concurrent builds; credit math is fully reproducible | Netlify pricing page |

    | Tiny non-commercial side project | Any free tier, by workflow | All three are $0 at the tiny profile; framework and DX decide | All three pricing pages |

    | Bandwidth-heavy media or download site | Cloudflare Pages | Bandwidth is the meter that breaks the other two bills | Cloudflare Workers pricing docs |

    > [!FOUNDER]

    > "Founders pick a host by its homepage and discover its meter. The meter is the product: Cloudflare charges for compute and gives away delivery, Netlify charges for everything through one pool, Vercel charges for the seat and lets usage follow. Price your traffic shape — gigabytes, requests, deploys — before you price the logo, because the shape is the bill." For the observability fork, the Datadog versus Grafana Cloud versus New Relic observability pricing playbook runs the same workload through all three meters.

    > — Enow A. Jovial, Founder & Chief Executive Officer

    Operator boundaries

    This comparison fits frontend hosting. It does not fit a team needing a database with the site: pair any host with a backend platform and price that separately, because none of the bills above includes one. It does not fit a team needing a dedicated environment, a signed BAA on a self-serve tier, or a contractual SLA — Vercel lists HIPAA BAA as a $350-per-month Pro add-on and SAML SSO at $300 per month, which marks where self-serve ends and enterprise begins. And it does not fit a team treating the free tier as production: Hobby's non-commercial restriction, Netlify's 300-credit limit, and Cloudflare's daily Free limits are hard ceilings, not soft warnings.

    > [!WARNING]

    > Netlify's add-on credits are available when auto recharge is enabled, and the pricing page notes auto recharge is disabled by default. A team that budgets add-on credits without enabling auto recharge will hit the credit limit mid-month and discover the deploy queue stopped, not slowed. Enable the recharge before launch week, or buy the larger Pro credit tier up front.

    Cross-border note: all three vendors serve globally from edge networks, and none of the prices above varies by visitor country — the bill follows the account's plan and usage, not the audience's geography. Data residency is an enterprise feature on all three, not a self-serve toggle.

    > [!TIP]

    > Before migrating, run one month of your real traffic through the credit formula: gigabytes × 20, requests ÷ 10,000 × 2, production deploys × 15. If the total fits inside 3,000 credits, Netlify Pro at $20 is honest; if bandwidth alone exceeds 10,000 credits, Cloudflare's $5 platform fee is the number to beat.

  • [x] Phase 1: Meter your site — Pull last month's bandwidth, requests, deploys, and build minutes from your current host's analytics.
  • [x] Phase 2: Run all three formulas — Price the same profile on Netlify credits, Cloudflare Paid, and Vercel's seat-plus-credit model, naming the CDN assumption for Vercel.
  • [x] Phase 3: Test the free tier honestly — Confirm the project qualifies: non-commercial for Vercel Hobby, inside 300 credits for Netlify Free, inside daily limits for Cloudflare Free.
  • [x] Phase 4: Set the guardrails — Enable Netlify auto recharge or buy the larger tier, set Vercel's on-demand budget (default $200), and confirm Cloudflare Paid if functions exceed Free daily limits.
  • Related reading on this site: the CDN pricing guide for per-gigabyte delivery rates, the edge functions comparison for the compute layer behind these hosts, and the headless WordPress vs Next.js guide for the architecture these hosts deploy, and the Docker vs Kubernetes vs Amazon ECS container deployment pricing guide for the container layer behind the frontend. Budget the full build with the website cost calculator.