Founder & Lead Engineer, RAITHub
A typical Next.js SaaS on serverless hosting costs about $20 a month to run before launch, around $100 a month with its first paying customers, and roughly $250 to $500 a month at a few thousand active users. That covers hosting, database, email, error monitoring and file storage at list prices. Payment fees, AI APIs, tax and your team's time come on top.
The figures below are worked examples built from the official pricing pages of Vercel, Neon, Resend, Sentry and Cloudflare R2, checked on 29 September 2026. They are not quotes, and your usage will differ. The stack is a common one, and it is the one this site runs on: the RAITHub website is a Next.js 16 App Router app on Vercel with a Neon Postgres database. If you are still estimating what it costs to build rather than run, use the MVP cost estimator.
What does a SaaS cost to run each month, by stage?
| Line item | Pre-launch (1 developer, test users) | First customers (2 developers, a few hundred users) | Growing (4 developers, a few thousand active users) |
|---|---|---|---|
| Hosting: Vercel | $20 (Pro, 1 seat) | $40 (Pro, 2 seats) | $80 (4 seats) + about $75 extra bandwidth |
| Database: Neon Postgres | $0 (Free) | About $11 (Launch) | About $180 (Scale, 1 CU always on) |
| Email: Resend | $0 (Free, 3,000/month) | $20 (Pro, 50,000/month) | $35 (Pro, 100,000/month) |
| Error monitoring: Sentry | $0 (Developer) | $26 (Team) | $80 (Business) |
| File storage: Cloudflare R2 | $0 (free tier) | About $1 | About $20 |
| Total | About $20 | About $98 | About $470 |
Every figure is a list price in US dollars, before tax, domain names and any annual discounts. The assumptions behind each line are in the sections below. A leaner growth-stage setup (Neon Launch instead of Scale, Sentry Team instead of Business, no bandwidth overage) comes to about $260, which is why the range above is $250 to $500.
How much does hosting cost on Vercel?
From Vercel's pricing page:
- Hobby is $0 but not for a business. Vercel's FAQ says: "Our Hobby plan is for personal, non-commercial use." A SaaS that charges customers belongs on Pro from day one.
- Pro is $20 per month per developer seat, with unlimited free viewer seats, and "a $20 included credit to use across resources".
- Bandwidth: 1 TB a month of Fast Data Transfer included on Pro, "then starting at $0.15 per GB".
- Functions: invocations from $0.60 per million and Active CPU from $0.128 per hour beyond what is included.
The growth-stage column assumes 1.5 TB of transfer, so 500 GB over the allowance at $0.15, about $75. Most B2B apps serve far less than that; image-heavy or file-download products serve more. Seats are usually the largest hosting line for a small B2B team, not traffic.
How much does a Postgres database cost on Neon?
Neon bills compute by the hour and storage by the gigabyte. Neon's pricing page lists:
| Plan | Compute | Storage | Scale to zero | Restore window |
|---|---|---|---|---|
| Free | 100 CU-hours per project included | 0.5 GB per project | After 5 minutes, cannot be turned off | 6 hours (1 GB limit) |
| Launch | $0.106 per CU-hour | $0.35 per GB-month | After 5 minutes, can be disabled | Up to 7 days |
| Scale | $0.222 per CU-hour | $0.35 per GB-month | Configurable, 1 minute to always on | Up to 30 days |
A compute unit (CU) is about 4 GB of RAM with its CPU, and a CU-hour is "compute size × hours running". Neon states there is no monthly minimum on Launch or Scale.
- First customers: a 0.25 CU database awake about 12 hours a day is 90 CU-hours, or $9.54, plus 5 GB of storage at $1.75. About $11.
- Growing: 1 CU always on is about 730 CU-hours a month. On Scale that is $162, plus 50 GB of storage at $17.50, about $180. The same compute on Launch is about $77, plus storage, about $95.
Scale-to-zero is the biggest lever. A database that sleeps when nobody is using it costs a fraction of one that is always on. The catch is that anything touching the database on every request, such as a crawler hitting an uncached page or a rate limiter writing a row per page view, keeps it awake around the clock. The restore window matters too: 7 days of point-in-time restore on Launch against 30 on Scale is often the real reason to move up a plan once customer data is at stake.
How did this site cut its own database cost?
By making sure ordinary traffic never wakes the database. Two fixes did most of it, both in this site's code:
// src/app/sitemap.ts
// Previously this had NO revalidate, so every crawler hit ran Neon queries,
// the main database cost leak on this site. Now it is rebuilt at most daily.
export const revalidate = 86400
- Cache the pages crawlers hit. The sitemap had no caching, so every bot request ran database queries and kept Neon awake. With a daily revalidate, and cached queries on public pages, the database can stay suspended between rebuilds. The wider method is in why a Next.js app is slow in production.
- Keep the rate limiter out of the database. A database-backed limiter would add a write to every page view. This site uses an in-memory limiter for its analytics beacon instead, as described in rate limiting without Redis on serverless.
Neither change needed a new service. That is the general lesson for running costs: find what keeps a metered resource busy before you pay for a bigger one.
How much does transactional email cost?
Transactional email is sign-up confirmations, password resets, invitations and receipts. Resend's pricing page lists:
- Free: 3,000 emails a month, capped at 100 a day, with 3 domains.
- Pro: $20 a month for 50,000 emails, or $35 for 100,000, with overage at $0.90 per 1,000.
- Scale: from $90 a month for 100,000 emails, up to $1,150 for 2,500,000.
The 100-a-day cap on Free is the limit you hit first. A single bulk invitation or a busy launch day exceeds it, and password resets start failing. Move to a paid plan before launch, not after the first support ticket. Marketing email is usually a separate tool and a separate bill.
How much does error monitoring cost?
Sentry's pricing page lists a free Developer plan limited to one user with 5,000 errors, Team at $26 a month with 50,000 errors and unlimited users, and Business at $80 a month, also with 50,000 errors included. Business adds features rather than volume, so many small teams stay on Team and pay for extra events when they need them.
Monitoring is the line teams skip, and the one that tells you a customer hit an error before they email you. Budget for it from the first paying customer.
How much does file storage cost?
For uploads, documents and exports, object storage is usually the smallest line. Cloudflare R2's pricing is $0.015 per GB-month for standard storage, $4.50 per million write operations (Class A) and $0.36 per million reads (Class B), with 10 GB of storage, 1 million writes and 10 million reads free each month. Egress, meaning data downloaded to the internet, is free.
The growth-stage estimate assumes 500 GB stored, 3 million writes and 20 million reads: about $7.35 for storage, $9 for writes and $3.60 for reads, roughly $20. TheSkinProof and Sundor Skin, two platforms RAITHub built, both run on Vercel with Neon Postgres and Cloudflare R2.
What is not in these numbers?
- Payment processing. Card fees and any billing-platform fee scale with revenue, not usage.
- AI APIs. An LLM feature can cost more than everything above combined. See how to reduce OpenAI API cost.
- Third-party services such as SMS, search, maps or authentication vendors that price per user.
- Backups beyond the database's own restore window, uptime monitoring, and a staging environment, which can add a second, smaller copy of several lines.
- Tax. Prices are before VAT or sales tax. This is general information; confirm how tax applies to you with your adviser.
- People. Maintenance, security updates and on-call time usually cost more than the infrastructure.
Why RAITHub for keeping running costs down?
Because RAITHub runs this stack in production and has fixed its cost leaks, not just priced them.
- This site. Next.js on Vercel and Neon, 400+ automated tests, the sitemap caching fix that stopped crawlers keeping the database awake, and rate limiting without Redis.
- Larger platforms on the same stack. TheSkinProof, the founder's own venture with 217 API endpoints and 750+ tests, and Sundor Skin, a B2B wholesale platform with 146 PostgreSQL tables and 530+ tests.
- Your accounts, your bills. RAITHub recommends hosting on accounts you own, so you keep control of hosting, data and billing. See the Next.js development service and the SaaS development service.
When you don't need us
- Your bill is under $100 a month and stable. Engineering time to shave it will cost more than it saves.
- The cost is one obvious line. If seats or an AI API dominate, change the plan or the model, not the architecture.
If your hosting or database bill is growing faster than your users, send RAITHub your last two months of invoices and your stack, and book the free 15-minute technical audit.
Last reviewed: 29 September 2026. All prices from the vendors' official pricing pages on that date; they change, so check them before you budget.
Frequently asked questions
How much does it cost to run a small SaaS per month?
About $20 a month before launch and around $100 a month with a few hundred users, for hosting, database, email, monitoring and storage at 2026 list prices on a Vercel, Neon, Resend, Sentry and R2 stack. Payment fees, AI APIs and tax are extra.
Can I run a SaaS on Vercel's free Hobby plan?
Not a commercial one. Vercel's pricing FAQ says the Hobby plan is for personal, non-commercial use. A product that charges customers needs Pro, which is $20 per developer seat per month.
Why is my Neon database bill higher than expected?
Usually because something keeps it awake. Neon bills compute by the hour and scales to zero after 5 minutes idle, so uncached pages, crawlers, health checks or a database-backed rate limiter can keep compute running all month.
What is the biggest monthly cost for an early SaaS?
Often developer seats on the hosting platform, then the database once it runs all day. If the product has AI features, the LLM API can outgrow every infrastructure line combined.
What does Cloudflare R2 charge for file downloads?
Nothing for egress: R2's pricing page lists data transfer to the internet as free. You pay $0.015 per GB-month for standard storage and per-operation fees above the free tier.
How much should I budget for SaaS infrastructure at a few thousand users?
Roughly $250 to $500 a month on this stack at list prices, depending on how many developer seats you pay for, whether the database runs all day, and which monitoring and database plans you need.
Related posts
Ready to discuss your project?
Book a free 15-minute technical audit with our engineering team.