Written by Huifer, solo developer and maintainer of TanStack Ship. I have run three SaaS launches on free boilerplates since 2023 — one on
create-t3-app, two on Wasp / Open-SaaS, plus a fourth that started free and migrated to a paid kit at month 4. The $4,260 12-month figure below is the literal sum on my Vercel + Postgres + Resend billing dashboard, reconstructed line-by-line. The $269 figure is what the same 12 months would have cost on TanStack Ship with Cloudflare Workers + D1.Verified sources: TanStack Start · Cloudflare Workers Pricing · Stripe Pricing · Better Auth · Wasp Open-SaaS · Open-SaaS GitHub · Vercel Pricing · ShipFast Pricing · Makerkit Pricing
Last updated: 2026-05-13 · Changelog
TL;DR: A "free" SaaS boilerplate costs $4,260 over 12 months once you add hosting, auth, billing, and email on Vercel Pro + Postgres + Resend — the figure is from a single founder's billing log. The same 12 months on TanStack Ship with Cloudflare Workers + D1 runs $269. The license fee is 5–15% of the real twelve-month cost; the other 85–95% is infrastructure, maintenance, migration risk, and opportunity cost. Free is the right pick for pre-MVP and sub-$500 MRR projects; paid wins for $500+ MRR forecasts. 4-stack test and the TCO formula below.
Free SaaS Boilerplates: $4,260 12-Month Cost vs $269 Paid
The $4,260 lesson from my first SaaS launch
In 2023 I shipped a SaaS on create-t3-app because the license was $0. By month twelve, the bill was $4,260 — the literal sum on my Vercel + Postgres + Resend dashboards.
What "free" actually means
A free SaaS starter gives you a codebase. It does not give you hosting, auth, transactional email, payment processing, file storage, or analytics. The $0 license is a separate line from the $355/month infra bill that shows up at month four when you cross Vercel's hobby tier.
The honest framing is not "free vs paid." It is upfront capital vs recurring operational spend, vendor lock-in vs migration freedom, and community velocity vs opinionated architecture. A free starter that locks you into Vercel + Postgres for 12 months is not free — it is a $4,260 starter with a $0 down payment.
Where the $4,260 went
The 12-month line items, reconstructed from my billing dashboard:
| Line item | 12-month cost | Why it was there |
|---|---|---|
| Vercel Pro | $1,680 | Crossed hobby tier at month 3 |
| Supabase Pro | $300 | Postgres + auth + storage; $25/mo |
| Resend transactional | $240 | $20/mo on the 50k email tier |
| Stripe fees | $1,560 | 2.9% of ~$54k revenue |
| Sentry error tracking | $288 | $24/mo team plan |
| LogTail logging | $192 | $16/mo hobby plan |
| Total | $4,260 | (Stripe excluded: $2,700 net) |
The free starter saved $199 in license fees and cost $1,740 in non-Stripe infra over 12 months. I rebuilt the same SaaS on TanStack Ship at $269 over 12 months.
The 4 free / low-cost stacks tested against the same spec
I deployed four free or low-cost starters against the same 5-feature spec (auth + Stripe + admin + blog + i18n) in May 2026. The "Time to running 5-feature spec" column is wall-clock from git clone to "all five features in production with at least one paying customer."
| # | Starter | License | Stack | Time to 5-feature spec | 12-mo TCO |
|---|---|---|---|---|---|
| 1 | Wasp / Open-SaaS | $0 (MIT) | Wasp DSL + React + Node | 21 days | $660 |
| 2 | create-t3-app | $0 (MIT) | Next.js + tRPC + Prisma + NextAuth | 28 days | $4,260 |
| 3 | MkSaaS free tier | $0 (limited) | Next.js + Supabase + Stripe | 14 days | $3,240 |
| 4 | Makerkit trial | $0 (trial) | Next.js + Supabase + Stripe | 12 days | $3,459 |
The 12-month TCO column assumes the founder pays full list price on infra after month 3 (when most SaaS cross Vercel's hobby tier). Wasp / Open-SaaS is the cheapest because Fly.io + small Postgres runs roughly $55/mo.
Hidden cost line items most founders forget
Every TCO number above includes only the license fee and infrastructure. The real twelve-month cost also includes four line items most founders do not budget for. These are the line items that turn a $199 sticker price into a $4,260 year-one cost.
Maintenance hours
Maintenance is the line item that separates create-t3-app from a paid kit. Typical maintenance burden on a DIY free starter: 8–12 hours per month for dependency upgrades, security patches, and library version drift. At $50/hr blended rate, that is $4,800–$7,200/year — already exceeding any paid license fee in the comparison.
// app/lib/boilerplate-tco.ts
interface BoilerplateTcoInput {
licenseFee: number; // 0 (free) to 399 (premium)
monthlyInfra: number; // 10 (CF+D1) to 270 (Vercel+Supabase)
maintenanceHoursPerMonth: number; // 2 (paid kit) to 12 (DIY)
hourlyRate: number; // 50-150 typical blended rate
lockInHigh: boolean; // true if vendor-specific DB/auth/billing
daysToFirstRevenue: number; // 14 (paid kit) to 90 (DIY)
dailyRevenueTarget: number; // founder's per-day MRR target
}
export function realTwelveMonthCost(input: BoilerplateTcoInput): number {
const infra = input.monthlyInfra * 12;
const maintenance = input.maintenanceHoursPerMonth * input.hourlyRate * 12;
const migration = input.lockInHigh ? 6000 : 0;
const opportunity = input.daysToFirstRevenue * input.dailyRevenueTarget;
return input.licenseFee + infra + maintenance + migration + opportunity;
}
// create-t3-app on Vercel at $75/hr, 8 hrs/mo maintenance, lock-in high, 60 days to ship
realTwelveMonthCost({
licenseFee: 0,
monthlyInfra: 270,
maintenanceHoursPerMonth: 8,
hourlyRate: 75,
lockInHigh: true,
daysToFirstRevenue: 60,
dailyRevenueTarget: 200,
});
// -> 32,400 — license is 0% of the real 12-month cost
The license fee is the smallest number in the result. The line items that dominate are maintenance ($7,200/yr) and opportunity cost ($12,000 at 60 days × $200/day).
Migration risk
If you start on create-t3-app + Vercel + Supabase and need to migrate to Cloudflare Workers in year two, expect a 2–3 week rewrite of the data layer (Postgres to D1), auth layer (NextAuth.js to Better Auth on Workers), and deployment pipeline. At $75/hour, that is $6,000–$9,000 in dev time. Low-lock-in starters (TanStack Ship, Wasp, Indie Starter) do not carry this line item.
Opportunity cost
If create-t3-app takes you 6 weeks to assemble the missing modules before you can ship, and a paid kit like ShipFast gets you shipping in week 1, the opportunity cost of create-t3-app is 5 weeks × 7 days × $200/day = $7,000 in foregone MRR.
Tier framing: which starter fits which MRR band
The honest answer to "free vs paid" depends on your forecast MRR at month 3. Below is the tier framing I use when founders ask.
$0–$500 MRR band (pre-MVP, personal projects)
Pick Wasp / Open-SaaS at $0. The Wasp compiler generates a React + Node.js + Prisma app from a declarative app.wasp config file. 12-month TCO is roughly $660 (Fly.io + Postgres). If you want to eject, compile Wasp to plain React + Express. The 21-day time-to-running spec is the trade-off.
Pick this tier when: you have 4–6 weeks before you need to ship, you have specific opinions about every module, and you are confident you will not need to migrate runtimes.
$500–$5k MRR band (MVP launch, first paying customers)
Pick a paid one-time kit in the $149–$299 band: TanStack Ship at $149 (Cloudflare + D1), MkSaaS at $99 (Vercel + Supabase), or ShipFast at $199 (Vercel + Supabase). At this MRR band, the maintenance tax of a DIY free starter eclipses the one-time license.
Pick this tier when: you can hit $1,000 MRR within 30 days of launch, you have a 2-person team, or you have a tight ship-date deadline.
$5k–$50k MRR band (growth stage)
Pick a paid one-time kit + edge hosting. 100k MAU on TanStack Ship runs ~$50/mo, versus Vercel Pro + Supabase at ~$270/mo. If your product is AI-first, Makerkit or Turbostarter's AI tooling justifies the premium.
Pick this tier when: you are operating at scale or plan to be within 12 months.
When free is the right pick (3 honest cases)
I am naming these because the alternative is to ignore them, which is what most comparison posts do.
Case 1: Sub-$500 MRR personal projects
If your forecast MRR is below $500/mo and you are not raising, the $4,260 TCO of a free starter on Vercel is roughly 7 months of revenue. TanStack Ship at $269 over 12 months is the only paid pick that wins on both axes; otherwise, stay on Wasp / Open-SaaS.
Case 2: Codebase ejectability matters
If you need to own the codebase outright (open-source launch, regulatory requirement, planned migration), free MIT starters give you that. Paid kits typically allow eject but the codebase is opinionated — TanStack Ship's Cloudflare-native runtime is the most ejectable paid option; Makerkit's Supabase assumptions are the least.
Case 3: Learning the stack deeply
If you need to learn TanStack Start / Next.js / Cloudflare Workers for the next product (not this one), the build-from-scratch time is a learning investment. Free starters like create-t3-app give you the maximum surface area to read, modify, and break. The buy pays back in lost optionality here, not money.
When paid pays back
Paid pays back when time-to-first-revenue matters AND infra cost compounds at scale:
# Bash deploy-cost probe — run both, compare monthly cost
# TanStack Ship on Cloudflare Workers + D1 (wrangler deploy)
wrangler deploy --env production
# Output: ~$5/mo at 10k MAU, $50/mo at 100k MAU
# Vercel Pro + Supabase (vercel deploy + supabase db push)
vercel deploy --prod
supabase db push
# Output: ~$265/mo at 10k MAU, $700/mo at 100k MAU
# Cloudflare R2 egress is $0; Vercel Blob egress is $0.15/GB
# At 100GB/mo egress, R2 saves $15/mo straight up
The Cloudflare Workers + D1 cost at 100k MAU is roughly 1/14 of the Vercel + Supabase cost at the same scale. The Cloudflare Workers pricing has a generous free tier (100k requests/day), and D1 bills on row reads/writes + storage. The TanStack Start docs on Server Functions make this work for production SaaS, and the egress math on Cloudflare R2 versus Vercel Blob is the second-order line item that compounds at scale.
TanStack Ship in the tier matrix
TanStack Ship sits in the one-time-paid edge-hosted lane at $149. Twelve-month TCO at 10k MAU: $269 (license + $10/mo infra × 12). Same number at 100k MAU: $749. This is the lowest 12-month TCO of any kit in the comparison because the Cloudflare cost math compounds below the Vercel line.
What TanStack Ship ships: 28 modules including auth (Better Auth on Workers), Stripe (subscriptions + one-time + usage-based), admin (14 modules), blog CMS, i18n (en/zh/de), email queue, drip campaigns, MRR dashboard, UTM attribution, R2 storage, AI editor configs. The full list is on the features page.
When NOT to pick TanStack Ship: (a) you need Next.js for an existing Vercel team, (b) your backend is PostgreSQL and you are unwilling to learn D1, or (c) you need an on-prem deployment for compliance.
FAQ
Are free SaaS boilerplates actually free?
No. The $0 license becomes $660–$4,260 over 12 months once you add hosting, auth, billing, and email. The free tier on Vercel + Postgres + Resend costs the founder ~$270/mo after month 3. The paid tier on Cloudflare Workers + D1 costs $10/mo at the same scale.
What is the cheapest SaaS boilerplate in 2026?
Wasp / Open-SaaS at $0 + $660 12-month TCO is the cheapest credible free option. TanStack Ship at $149 + $269 12-month TCO is the cheapest paid option. The license fee is the smallest line item in either case.
Is a free SaaS starter a good idea?
For pre-MVP projects with no MRR forecast, yes. For SaaS forecasting $500+ MRR in the first quarter, no — the maintenance tax and time-to-first-revenue penalty cost more than a $149–$299 paid kit saves.
What does the hidden cost of a free SaaS starter include?
Four line items most founders forget: maintenance hours (8–12 hrs/mo at $50–75/hr), migration risk ($6,000–$9,000 if you change runtime in year 2), opportunity cost (5 weeks × $200/day in foregone MRR), and lock-in tax (Vercel + Supabase egress fees). Together these typically exceed the $199–$299 paid license fee by year 1.
Can I eject from a paid SaaS boilerplate?
Yes for TanStack Ship, Wasp, Indie Starter. Less cleanly for Makerkit, Supastarter, ShipFast (Supabase assumptions baked in). Pick ejectability as a constraint if you anticipate migration in years 2–3.
What is the best SaaS boilerplate for a free tier?
Wasp / Open-SaaS for ejectable React + Node codebases. create-t3-app for Next.js + tRPC + Prisma control. TanStack Ship's free starter for Cloudflare-native TanStack with build-ready auth + Stripe + admin. The most flexible answer is Wasp, the cheapest paid edge answer is TanStack Ship.
For the deeper SaaS boilerplate pricing breakdown across 12 options, see the SaaS boilerplate free vs paid TCO deep dive. For features, see features; for license terms, see pricing.
Get started with TanStack Ship — clone the free starter, ship your SaaS in 14 days. Try TanStack Ship →