DEV Community

Cover image for Mistakes I Made Building My First SaaS Starter Kit
Glen Alloy
Glen Alloy

Posted on

Mistakes I Made Building My First SaaS Starter Kit

Over the past few weeks, I worked on building my first reusable SaaS starter kit using Next.js, Prisma, JWT authentication, and Lemon Squeezy billing.

The goal was simple:

Stop rebuilding the same foundation every time I start a new SaaS idea.

But while building it, I made a lot of mistakes — and honestly, those mistakes taught me more than the successful parts.

Here are some of the biggest lessons I learned.

1. I Tried to Build Everything at Once

At the beginning, I wanted the starter kit to include:

  • authentication
  • billing
  • teams
  • admin dashboard
  • analytics
  • notifications
  • multi-tenancy

Basically… everything.

That was a mistake.

I realized very quickly that trying to build every possible feature slowed me down massively.

The turning point was when I focused only on the essentials:

  • auth
  • dashboard
  • billing
  • clean architecture

Everything became simpler after that.

Lesson:
A smaller finished product is better than a huge unfinished one.

2. I Over-Engineered Too Early

I spent too much time trying to make the architecture “perfect.”

I kept reorganizing folders, abstractions, and services before I even had a working product.

Eventually I realized:
You understand the correct architecture after building, not before.

Lesson:
Get the product working first. Refactor later.

3. Billing Was Harder Than Authentication

I expected authentication to be the hardest part.

It wasn’t.

Subscription handling, webhook syncing, and keeping billing state consistent turned out to be much more complicated than I expected.

Especially handling:

  • successful payments
  • subscription updates
  • cancelled plans
  • syncing state to the database

Lesson:
Billing systems have a lot of edge cases. Keep them simple.

4. “Build It and They Will Come” Is Not Real

This was probably the biggest lesson.

I thought:
“If I build something useful, people will naturally find it.”

Reality:
Building was only half the job.

Distribution, content, visibility, and trust matter just as much as coding.

Lesson:
A product without traffic is invisible.

5. Shipping Taught Me More Than Planning

For a long time I stayed in “planning mode.”

But actually finishing and launching something taught me:

  • more about architecture
  • more about product thinking
  • more about distribution
  • than endless tutorials ever did.

Even though the project is still evolving, I’m glad I shipped it.

Final Thoughts

Building this starter kit changed how I think about side projects.

Instead of spending days rebuilding authentication and billing for every idea, I now have a reusable foundation I can iterate on.

Still improving it, but the process itself has already been worth it.

Curious:
What mistakes did you make in your first SaaS or side project?

P.S. While building this, I turned the setup into a reusable SaaS starter kit for my own projects. It includes auth, billing, dashboard UI, and Prisma setup. Happy to share it if anyone wants to check it out.

Top comments (2)

Collapse
 
harjjotsinghh profile image
Harjot Singh

the mistakes-on-the-first-starter-kit posts are always the most useful, since most of them are about scope and the boring infra. that's the stuff I tried to make disappear with Moonshift: agents build + deploy + market a SaaS overnight so the starter-kit grind isn't a prerequisite. appreciate the honesty here. first run's free if you want to compare to rolling your own.

Collapse
 
glen_alloy_10f4adb7fa0617 profile image
Glen Alloy

Thanks! I completely agree.
The biggest lesson for me was realizing that the "boring" infrastructure often takes longer than the actual product idea.
Out of curiosity, what's been the biggest challenge when trying to automate the build/deploy side with Moonshift?