I've shipped 4 SaaS products in the last year. The first one took me 3 months. The latest one — FormCatch, a form backend service — took 3 days.
The difference wasn't skill. It was knowing what actually matters.
Here are 5 lessons I learned the hard way, so you don't have to.
1. Nobody Cares About Your Tech Stack (But It Can Still Kill You)
My first SaaS started with two weeks of deliberation. Should I use tRPC or REST? Drizzle or Prisma? App Router or Pages Router?
Here's the truth: your users will never know or care what ORM you chose. But picking the wrong stack — or worse, switching mid-project — can absolutely destroy your momentum.
What actually matters:
- Pick boring, well-documented tools. Next.js + Supabase + Prisma is not exciting. It's reliable. That's the point.
- Optimize for speed-to-ship, not theoretical performance. You don't have scale problems when you have zero users.
- Authentication and payments are solved problems. If you're writing auth logic from scratch in 2026, you're cosplaying as a security engineer instead of building a business.
2. The "Boring" Parts Take 80% of the Time
Every SaaS needs the same infrastructure: authentication, payments, database, email, rate limiting, admin dashboard, landing page. None of this is your product. All of it is required before you can even start building your product.
On my first SaaS, here's where my time actually went:
| Task | Expected | Actual |
|---|---|---|
| Auth + user management | 2 days | 8 days |
| Payment integration | 1 day | 5 days |
| Landing page | 1 day | 4 days |
| Email templates | 0.5 days | 3 days |
| Admin dashboard | 2 days | 6 days |
| The actual product | 2 weeks | 4 days |
The boring stuff took 26 days. The actual product — the thing that makes money — took 4.
This is why boilerplates exist. After my second SaaS, I started extracting all the shared infrastructure into a reusable template. That eventually became ShipKit — the boilerplate I now use for everything. Auth, payments, database, admin panel, landing pages, emails, SEO, dark mode, rate limiting — all pre-wired and ready.
3. Launch Before You're Ready (Seriously)
My first SaaS launched after 3 months with 47 features. Nobody used 42 of them.
FormCatch launched after 3 days with exactly 2 features: receive form submissions, and send email notifications. That's it. People are using it.
The pattern I've seen across every successful indie product:
- Ship the smallest possible version that delivers one clear value
- Get it in front of real users within the first week
- Let user behavior tell you what to build next
You cannot think your way to product-market fit. You have to ship your way there.
4. SEO Is a Compounding Asset (Start on Day 1)
I ignored SEO on my first two products. "I'll add it later." Later never came, and I was stuck depending entirely on Product Hunt launches and Reddit posts for traffic.
On my recent projects, SEO is baked in from the start:
- Proper meta tags, Open Graph, structured data on every page
- A blog with genuinely useful content
- Fast load times (this is where Next.js really shines)
- Programmatic pages for long-tail keywords
My tools site FastDevKit now gets steady organic traffic without me doing anything. That's the dream — traffic that grows while you sleep.
5. The Real Competition Is Your Own Motivation
Most indie SaaS products don't fail because of competition or bad ideas. They fail because the founder burned out during week 6 of implementing Stripe webhooks.
The #1 predictor of success I've seen is how quickly you get from idea to live product. Not because speed itself matters, but because:
- Fast shipping keeps you motivated
- Motivated founders iterate more
- More iterations = better product-market fit
- Better fit = revenue
- Revenue = more motivation
It's a flywheel, and the entry point is speed.
What I'd Tell Myself 12 Months Ago
- Stop building auth systems. Use NextAuth and move on.
- Stop designing landing pages from scratch. Use a template.
- Stop deliberating. Ship something in a week or kill the idea.
- Start writing content on day 1. SEO is a slow game.
- Invest in your toolkit. A good boilerplate pays for itself on the first project.
That last point is why I built ShipKit. It's the Next.js 14 boilerplate I wish existed when I started — auth, payments, Supabase, Prisma, admin dashboard, landing pages, email templates, SEO, dark mode, rate limiting, all pre-configured. $199 one-time, no subscriptions.
Your users are paying for your unique insight, not your auth implementation.
If you want to see what a 3-day build looks like, check out FormCatch. And if you want the boilerplate itself, it's at shipkit-delta.vercel.app.
Got questions about shipping SaaS fast? Drop them in the comments.
Top comments (0)