1. Your bandwidth
2. Comparison
| Provider | Per month | Per year | 12-month spend with growth |
|---|
Where the cheapest provider changes
| GB delivered per month | Cheapest |
|---|
Several providers are $0 at small sizes, so the first rows are ties. Cloudflare is not listed because its plans are flat-fee and fair-use or negotiated enterprise contracts rather than a per-GB rate, so it cannot be priced honestly here: compare its plan against the per-GB totals yourself. CloudFront's first 1 TB a month is free. Bunny and KeyCDN carry small monthly minimums.
Rate cards (editable)
| Provider | Free up to (GB/mo) | First paid plan (USD/mo) | GB in first plan | Overage per GB |
|---|
Plans beyond the first stay at the defaults here; use the CLI --prices file to edit every plan. Press Compare after changing a value.
Prefer a CLI, or want a budget gate in CI?
node cli.mjs compare --gb 3000 --growth 6 node cli.mjs compare --gb 8000 --provider cloudfront --budget 300 # exit 1 over budget node cli.mjs crossover node cli.mjs compare --gb 3000 --prices prices.json --json
Get cli.mjs and engine.mjs — Node 18+, nothing to install, no network call. More: how to choose a CDN by GB delivered.
Common questions
Does this read my CDN account?
No. It uses only the monthly delivered volume (GB) you type and rate cards you can edit. It cannot see your plan, regional mix, contract or invoice. Treat every figure as a way to compare options, never as what you will be charged.
Where do the prices come from?
They are approximate public list prices as best known in 2025, shown with an as-of line, and every number is editable. CDNs price by region and committed volume and change packaging often, so check each vendor's pricing page before deciding.
What is not included?
Regional price tiers (Asia, South America and Australia cost several times more), request fees, TLS and custom-domain fees, image optimisation, WAF, log delivery, support plans, commit discounts and fair-use limits. These are often the real bill, so use this to compare the per-GB line, not to forecast the whole invoice. Cache hit rate, edge coverage in your visitors' regions and performance are not priced here and often matter more than a few dollars.
Is my data uploaded anywhere?
No. The page calculates in your browser and sends nothing. The CLI reads local files and makes no network call.