Launch

SaaS launch checklist for indie founders

What to check before you launch a SaaS, from sign-in and plan limits to payments, legal pages and monitoring. Short enough to go through in an afternoon.

Starting from zero? How to build a SaaS covers the stack, and the Next.js SaaS starter ticks the sign-in, plans and payments boxes below out of the box.

Product

  • One clear sentence on the homepage: who it is for and what it does.
  • A new user reaches the useful moment in under five minutes.
  • An empty state that tells new users what to do first.

Sign-in and accounts

  • Sign-up, sign-in, sign-out and password reset (or magic links) all work.
  • Google sign-in, if your users expect it, with your own domain on the consent screen.
  • Users can delete their account and data.

Plans and limits

  • A free plan and at least one paid plan, written down: what each includes.
  • Every limit is checked on the server before the work, not by hiding a button. (canAccess / consume.)
  • New users are put on the free plan at sign-up.
  • At the limit, the user sees why and an upgrade button, not an error.
  • Two requests at once cannot both spend the last credit.

Payments

  • Checkout works end to end in test mode (Stripe test card 4242 4242 4242 4242).
  • Upgrade, downgrade and cancel each change what the user can do.
  • A billing page or customer portal to update the card and cancel.
  • Sales tax and VAT: Stripe Tax, or a merchant of record like Paddle or Lemon Squeezy.

Email

  • Sign-in and receipt emails arrive, from your own domain (SPF and DKIM set).
  • A support address that someone reads.

Legal

  • Privacy policy and terms of service, linked in the footer.
  • In the EU: GDPR basics (what you collect, why, how to delete it). In France: a legal notice (mentions légales).
  • Cookie banner only if you use non-essential cookies.

Reliability

  • Error tracking (Sentry or similar) with alerts to your phone.
  • Database backups turned on, and you have tried a restore once.
  • Secrets only in environment variables, never in the browser bundle.
  • A status page or at least a way to tell users something is down.

Found by people and AI assistants

  • Title and description on every page, a sitemap, and robots.txt.
  • Your site submitted to Google Search Console and Bing Webmaster Tools (ChatGPT search relies largely on Bing).
  • An llms.txt that explains the product in plain words.
  • A page that answers the exact question your users type, with code if they are developers.

Launch

  • Analytics on sign-up, activation and upgrade, so you know where people drop.
  • Announce where your users are: Product Hunt, Hacker News (Show HN), Indie Hackers, Reddit, X, LinkedIn.
  • Reply to every early user personally.

FAQ

What do I need before launching a SaaS?

A product that solves one problem, sign-in, a free plan and at least one paid plan with working checkout, limits enforced on every request, transactional email, a privacy policy and terms, error tracking, and a way for users to reach you.

Do I need a privacy policy and terms of service?

Yes, as soon as you collect emails or take payments. Stripe, Google sign-in and app stores also ask for a privacy policy URL. In the EU, GDPR applies, and in France a legal notice (mentions légales) is required too.

How do I make sure free users can't use paid features?

Check the plan on the server, before the work, on every request. Hiding a button is not enough. UsageGate's canAccess and consume run in your API route, so the check cannot be skipped from the browser.

Ship paid plans this afternoon.

Less time on billing and usage infrastructure, more time on your product.

The minute you sign up, you get

  • A workspace with a ready-made Free, Starter and Pro plan table
  • An API key in one click, plus a copy-paste snippet for your stack
  • A Stripe webhook URL, or a one-call hook for any other gateway
  • 50,000 checks a month on us, before you pay anything