Short version: The Vercel SaaS Starter is excellent for learning Next.js App Router with Stripe — it's free, well-documented, and maintained by the Next.js team. It is intentionally minimal: no multi-tenancy, no admin, no AI, no observability, no compliance scaffolding. Already CH ships the production layer on top of the same ideas, with every provider swapped to a Swiss-sovereign equivalent.

Stack comparison

LayerNext.js SaaS StarterAlready CH (CH 🇨🇭)
Framework
Next.js App Router
TypeScript + Tailwind + shadcn/ui
Drizzle ORM
Postgresany (Neon default)Supabase self-hosted on Exoscale CH
Auth
Email + password
OAuth (Google, GitHub)
Magic link / passwordless
TOTP + Passkeys
Org-wide MFA mandate
Auth event audit log
Billing
Payment processorStripe (US)Payrexx (CH)
Default currencyUSDCHF
TWINT
PostFinance
Swiss VAT 8.1% pre-wired
Idempotent webhook + dead-letter queue
Customer billing portal
Multi-tenancy
Team / organisation model~ basic teams✓ full RBAC
Postgres RLS
Query-layer tenant scoping✓ withOrgScope()
Admin dashboard + impersonation
Email
Transactional emailInfomaniak SMTP (CH)
React Email templates
In-app notifications (Realtime)
Background work
Cron-based background jobs
Postgres-backed job queue
API key management (hashed at rest)
Security
CSP nonces + secure transport headers
Rate limiting (ioredis)
Bot protectionFriendly Captcha (DE)
Suspicious activity detection
AI integration
Multi-provider AI
Primary AI providerMistral AI (FR)
AI credits ledger
Observability
Error trackingGlitchTip self-hosted (CH)
AnalyticsMatomo self-hosted (CH)
Feature flagsUnleash self-hosted (CH)
Compliance
nFADP data register at /admin
GDPR export + deletion endpoints
Pre-written privacy policynFADP + GDPR
Pricing
PriceFree (MIT)CHF 199 one-time
Maintained byVercel / community PRswait, what. — full-time

Template vs production kit

Next.js SaaS Starter

A free, MIT-licensed template by the Next.js team. Demonstrates Next.js App Router + Drizzle + Stripe + basic teams in well-organised code. Intentionally minimal — there's no auth library beyond email/password, no admin, no background jobs, no email sending, no observability, no compliance scaffolding. It's a learning aid, not a production foundation.

Already CH production

16 modules ready for production traffic: hardened auth (TOTP + passkeys + MFA mandate), Payrexx billing with idempotent webhooks + dead-letter queue, multi-tenant RBAC with RLS + query-layer scoping, admin dashboard with impersonation, transactional email, background jobs, security hardening, AI integration, observability, nFADP register, and i18n. Maintained as a paid product.

Why the free template isn't enough

The Vercel SaaS Starter is genuinely excellent at what it's designed for — teaching Next.js patterns. For a real SaaS, you'll find yourself building roughly 16 additional modules from scratch:

  • Hardened auth (TOTP, passkeys, MFA mandate, audit log) — at least a week
  • Idempotent billing webhooks + dead-letter queue — surprisingly tricky to get right
  • Multi-tenant RLS + query-layer scoping — a month if you don't know Postgres deeply
  • Admin dashboard + impersonation — another two weeks
  • Transactional email pipeline + templates
  • Background job runner + cron sidecar
  • Security headers + rate limits + bot protection
  • Suspicious-activity detection
  • AI integration + credits ledger
  • Feature flags
  • Error tracking + analytics
  • Privacy / terms templates + GDPR/nFADP endpoints
  • i18n with locale routing

That's 4–6 months of work for one engineer. Already CH costs CHF 199 once.

Why Swiss-sovereign on top

Even if you bolted those modules onto the free template, you'd still be on the US stack: Stripe, Vercel, optional Sentry, optional Resend. For Swiss B2B customers, that's a sales blocker. Already CH wires the production layer on a Swiss-sovereign foundation:

  • Payrexx (Thun, CH) instead of Stripe — with TWINT + PostFinance
  • Exoscale (Geneva / Zurich) instead of Vercel
  • Infomaniak SMTP (Geneva) instead of Resend
  • Matomo cookie-free instead of PostHog / Google Analytics
  • GlitchTip self-hosted instead of Sentry
  • Mistral AI (Paris) instead of Anthropic / OpenAI
  • Friendly Captcha (DE) instead of Vercel BotID

Who should use what

Use Next.js SaaS Starter when

  • You're learning Next.js + Drizzle + Stripe
  • You're building a personal project or PoC
  • You enjoy writing the production layer yourself
  • Free + MIT licence matters more than time-to-launch
  • You don't need multi-tenancy, admin, or AI integration

Use Already CH when

  • You're shipping a real Swiss SaaS, not a prototype
  • Your customers are Swiss or German-speaking
  • You need TWINT, CHF billing, Swiss VAT, nFADP
  • Multi-tenancy, admin, and AI integration are table stakes
  • You'd rather pay CHF 199 than spend 4 months on infra

The honest comparison

The free Next.js SaaS Starter is one of the best learning resources for the Next.js + Drizzle + Stripe shape — clean code, official maintenance, free. If you're building a learning project or have months to spare on infrastructure, it's a fine start.

Already CH is for the founder who'd rather pay CHF 199 and skip the 4–6 months of building the production layer on top of a free template. Same architectural ideas (Next.js + Drizzle); 16 production modules wired and tested; every provider replaced with a Swiss-sovereign equivalent. Same one-time price as a single day of contractor work.