A $46,000 Vercel Bill for Static Pages
Jmail hit 450 million pageviews and got a $46K hosting bill. The site is mostly static HTML. Here's how Vercel's pricing turns viral success into financial punishment — and what it would actually cost on flat-rate hosting.
What Happened
Jmail is a browser-based archive of the Epstein files — public court documents rendered in a Gmail-style interface to make them easy to browse. It went massively viral.
“Jmail has crossed 450M pageviews, and our Vercel bill has exploded, even after tons of cache mitigation. Many kind people chipped in to cover the bill, but it's not sustainable. What are solid, cheaper alternatives?”
— Riley Walz, creator of Jmail
The final bill: $46,485.99. For serving what is essentially static content. Vercel's CEO offered to personally cover it, which was generous — but it doesn't fix the underlying problem.
Breaking Down the $46K
Wes Bos dug into the site and confirmed it's “aggressively cached and images aren't hosted on Vercel.” The bill is almost entirely two line items: bandwidth and edge requests.
Here's how Vercel's Pro plan pricing works:
| Resource | Included (Pro) | Overage Rate |
|---|---|---|
| Fast Data Transfer | 1 TB/month | $0.05/GB |
| Edge Requests | 10M/month | $0.60 per 1M |
| Pro base price | — | $20/month |
Let's do the math on 450M pageviews. Each pageview generates multiple requests (HTML, CSS, JS, fonts). Conservatively, that's 1.5–3 billion edge requests and tens of terabytes of bandwidth:
Estimated Cost Breakdown
Bandwidth (Fast Data Transfer)
~500–800 TB transferred at $0.05/GB overage
Edge Requests
~1.5B+ requests at $0.60/1M overage
ISR reads, function invocations, etc.
Various smaller per-use charges
Total
$46,485.99The bulk of the bill is bandwidth. Every byte Vercel's CDN serves gets metered at $0.05/GB. With 450M pageviews, even a well-cached static site burns through terabytes fast.
What Would This Cost Elsewhere?
| Platform | Monthly Cost | Notes |
|---|---|---|
| Vercel Pro | $46,486 | Usage-based. No cap. No warning before bill. |
| Cloudflare Pages | $0 | Unlimited bandwidth on free tier. Static only. |
| Hetzner VPS + Cloudflare | ~$30 | Unmetered bandwidth. Self-managed. |
| DartUp Pro | $9 | Flat rate. Deploy with one command. No per-GB charges. |
Read that again. The same static content that cost $46K on Vercel costs $0–$30/month on almost every other platform. This isn't a technology problem. It's a pricing model problem.
The Real Issue: Pay-Per-Byte Pricing
Vercel's pricing is designed for apps with predictable, moderate traffic. It works well there. But it has a fundamental flaw: your success is your punishment.
When your site goes viral — the best possible outcome for any project — Vercel's meter spins like a taxi in Manhattan traffic. There's no automatic cap, no “hey, you've spent $500, want to keep going?” notification. You find out when the invoice arrives.
What people on Hacker News said:
“Not blaming the devs here but this is why I'll never use Vercel… your app takes off and suddenly you owe absurd amounts of money. I reckon they could host Jmail for 4–500 bucks a month on a Hetzner VPS, and that is probably a high estimate.”
“Vercel's pricing is so ridiculously convoluted that you can't even cleanly compare usage” to competitors.
This isn't the first time. It's a recurring pattern — ServerlessHorrors catalogs dozens of similar stories. $1K bills for hobby projects. $5K bills for small businesses. And now $46K for a public interest archive.
How Flat-Rate Hosting Works
At DartUp, there are no bandwidth meters. No per-request charges. No line items for “Fast Data Transfer” or “Edge Request Units.” You pay $9/month and your app runs.
The DartUp model
Being Honest About Scale
Could DartUp handle exactly the same 450M pageviews that Jmail got? Let's be transparent.
450M pageviews/month is roughly 170 requests per second sustained, with peaks likely 10–50x that during viral moments. Nginx can serve static files at 10,000+ requests per second on modest hardware. The compute side is easy.
The bandwidth is the harder part. At ~100KB per page, 450M pageviews is roughly 45 TB of transfer. On a single VPS, that's a lot. The practical solution: put Cloudflare (free tier) in front of your DartUp deployment using a custom domain. Cloudflare serves static assets from its edge cache, and your origin server barely gets touched.
The practical setup for viral-scale static sites
1. Deploy your static site to DartUp ($9/month)
2. Add a custom domain through the DartUp API
3. Point DNS through Cloudflare (free)
4. Cloudflare caches everything at the edge
Total: $9/month. For any amount of traffic.
Even without Cloudflare, a DartUp deployment on a dedicated container handles more traffic than you'd think. Our containers serve thousands of requests per second for static content. Most projects will never need a CDN.
$46,486 vs. $9
Let's put the Jmail numbers in perspective:
You could run DartUp Pro for 430 years for the cost of one month of Vercel at Jmail's traffic. That number isn't a typo.
When Vercel Does Make Sense
This isn't a hit piece. Vercel is genuinely excellent at what it's designed for:
- Next.js production apps with server components, ISR, and edge middleware — the framework integration is best-in-class
- Team workflows with preview deployments per PR, branch-based environments, and collaboration features
- Moderate, predictable traffic where the included 1 TB and 10M requests cover your usage
The problem is when Vercel is used for something it wasn't designed for: serving static content at massive scale. That's like taking an Uber across the country. The ride is comfortable, but the meter doesn't stop.
What to Do Instead
If you're building something that might go viral — or if you just don't want to worry about surprise bills:
For static sites and SPAs
Deploy to DartUp ($9/mo) or Cloudflare Pages (free). Both are flat-rate. Neither will bill you for going viral.
For apps with backends
DartUp supports Node.js, Python, Go, Rust, and Ruby with sidecar databases. $9/mo flat. No per-request billing.
For Next.js apps that need SSR
Deploy the Next.js container to DartUp. You lose Vercel-specific features like edge middleware, but you keep your wallet intact.
For anything Claude Code built
DartUp was built for AI-assisted development. One command from Claude Code deploys your entire project. No config files needed.
The Bottom Line
Hosting platforms should reward your success, not punish it. When your static site goes viral, the correct hosting bill is $9 — not $46,000.
The infrastructure to serve static files is cheap. It's been cheap for a decade. If your hosting provider charges you $46K to do it, the problem isn't your traffic. It's your hosting provider.
Deploy without the meter running
DartUp is $9/month flat. No bandwidth charges. No edge request fees. No surprise bills. Free tier available.