Skip to content
SaaS Development15 September 2026 · 10 min read

Five SaaS Products Built Solo: What I'd Do Again and What I Wouldn't

Five shipped products, four solo and one as a collaborator: the real build windows, the one decision per product I would unmake, and the revenue distribution nobody publishes.

Five SaaS Products Built Solo: What I'd Do Again and What I Wouldn't

Four of these five products I built alone. The fifth I joined as a collaborator on a product somebody else owns, and rounding that up to "solo" would poison every other number on this page.

So here is a solo founder SaaS case study with the figures read back out of my own project records instead of remembered: BookBed, Callidus OS, Pizzeria Bestek, an eight-template FlutterFlow Marketplace portfolio, and Relocate. One of them earns recurring revenue, for the client who now owns it. Another earned a fixed fee and has since saved its owner every order commission they used to pay. The template portfolio sells in small numbers. Two earn nothing at all yet. That distribution is the most useful thing in this article, which is why it sits in the second paragraph rather than under a roadmap heading at the bottom.

What five products cost in calendar time

Five isometric segmented pipeline runs of clearly different lengths on a dark grid floor, the longest one folding back on itself twice at the bottom of the frame

Build time was never the scarce input. Every one of these shipped inside a window a single person can hold in their head, and the products that went nowhere went nowhere for reasons that had nothing to do with how fast the code arrived.

ProductBuild windowShape of the buildRecurring revenue today
BookBedStarted 16 Oct 2025, six months activeFlutter, one codebase to iOS, Android, Web, macOS, Linux and WindowsNone yet. Billing wired and tested, not switched on
Callidus OS14 Feb 2026 to late Apr 2026, about ten weeksReact, TypeScript, Firebase, multi-tenant, six rolesClient-owned; first paying clinic live 18 May 2026
Pizzeria BestekFixed-price build, live Sept 2025React, Supabase Postgres with RLS, Resend, NetlifyNone to me. Zero platform fees to them
FlutterFlow templatesMay 2025 to Apr 2026, two batchesFlutterFlow plus custom Dart, 40+ widgets24 paid sales across two templates
RelocatePhase 1 starter kit, deliveredFlutter 3.38+, Riverpod 3, GoRouter 17, Mapbox, RevenueCatClient-owned; I was a collaborator

Callidus is the one that surprises people. Ten weeks, solo, from a design concept to a multi-tenant clinical platform running Stripe Connect, six distinct roles, GDPR-grade audit retention and a bespoke face-mapping editor nobody sells off the shelf. Roughly 1,887 commits, 426 KB gzipped across 37 lazy routes, 100+ Cloud Functions with fifteen healthy cron jobs, and around 1,200 tests between Vitest and Playwright. It inherited a failed FlutterFlow attempt carrying about two hundred unresolved errors, and the fastest way through that debt was to delete it.

Why does a solo founder SaaS case study usually lie by omission?

Isometric cutaway of a tall data silo: a brightly lit, finished top floor sitting above two thirds of dark, dust-covered unlit storage racks

Because build timelines are easy to measure and revenue is not, so the flattering number gets published and the uncomfortable one gets a roadmap. I have written that roadmap sentence myself. The honest version is a distribution, not a headline.

Put mine next to the market. Freemius's 2025 State of Micro-SaaS report, built on its own payment data, finds that 45.7% of the SaaS makers on its platform are solo founders, and that roughly 70% of micro-SaaS businesses earn under $1,000 MRR. The median profitable micro-SaaS in that data sits near $4.2K MRR. So the honest read on five products is that four of them live in that bottom 70% and one of them, the client-owned one, crossed into real recurring revenue on somebody else's balance sheet.

That is not a failure report. It is the actual shape of the thing, and it maps cleanly onto one lesson: a product with a named human waiting for it converts, and a product built because the architecture was interesting does not. Callidus had a founder waiting. Pizzeria Bestek had an owner who wanted off a commission platform. BookBed had me.

The one decision per product I would unmake

Isometric junction box with five cable connectors entering it, one pulled half out of its socket with its light gone dim while the other four glow cyan

Each of these is documented in the project record, which is the only reason I trust my own memory of it. Where a product has no documented regret I say so rather than manufacture one, because a short honest list is worth more than five invented ones.

  • BookBed: the date normalizer. An early version of the overbooking detector normalized dates with setUTCHours(0,0,0,0) and toISOString(). Anything stored late in the UTC evening came back as the wrong day, so the importer flagged overbooking warnings on bookings that did not actually overlap. It first showed up on a real Adriagate iCal import and looked exactly like a genuine double-booking until you checked the timezone. The fix was toLocaleDateString('en-CA', { timeZone: 'Europe/Zagreb' }), iterating at noon UTC to stay DST-safe, plus a save_trimmed action that imports only the genuinely new date ranges and eight tests pinning the behaviour down.
  • Callidus: nothing of mine, and that is the answer. The expensive decision was made before I arrived, when the platform was attempted in FlutterFlow. My decision was to stop paying interest on it.
  • Pizzeria Bestek: no regret on record. Rare, and I am not going to invent one to round out the list.
  • FlutterFlow: I built the first batch one widget at a time. Three standalone templates in May 2025, each solving one gap. Then the marketplace told me something I had not asked it: buyers do not shop one widget at a time. Somebody who needs a chart also needs a chip input. Somebody who needs a rich text editor also needs markdown rendering. The April 2026 batch was rebuilt around thematic clusters because of that, and it should have been designed that way from the start.
  • Relocate: a Unicode codepoint. The RevenueCat entitlement ID was Relocate․app Pro, copied out of a designed mockup. That dot is U+2024 ONE DOT LEADER, not an ASCII period. Visually identical, codepoint-unequal, so the SDK answered active: false in production while the dashboard looked correct. Renamed to a plain pro.

What paid for itself, product by product

One decision per product returned more than it cost, and in four cases out of five it was a decision made in the first week.

Flutter for BookBed is the clearest one. One codebase reached six platforms, and the timeline calendar renders the same on a phone as on native macOS because the cells are locked at fixed pixel dimensions rather than reshuffled by responsive breakpoints. That bet also aged well without me touching it. At Google I/O 2026, Google announced that Canonical is now lead maintainer and strategic steward of Flutter desktop across Windows, macOS and Linux, shipping multi-window support and content-sized views, and moved Material and Cupertino out of the core SDK so an SDK upgrade no longer drags breaking UI changes along with it.

For Callidus it was choosing Stripe Connect Standard with direct charges on day one instead of pooling deposits. Each clinic performs the medical service, so each clinic has to be the settlement account. Stripe's direct charges documentation describes exactly this shape: the payment lands as a charge on the connected account rather than the platform's, and the platform's balance grows only by the application fee, which for Callidus is 0.1%. Retrofitting that after launch would have meant re-onboarding every tenant and rewriting twenty webhook handlers. The same instinct drove writing the Firestore rules as the real gate rather than a formality, which I wrote up separately in how Firestore rules held up under six roles and fourteen tenants.

Pizzeria Bestek paid for itself in a workflow choice, not a stack choice. Three Supabase Edge Functions do the whole admin loop, and the owner never logs into a dashboard. An order arrives, two emails go out, the owner clicks CONFIRM or DECLINE in their inbox, and the customer gets the result in their own language out of four. Five to ten orders a day, seven days a week since September 2025, on infrastructure the restaurant owns outright. Every order is 100% revenue to them now instead of about 70% after aggregator commission.

FlutterFlow's winner was the free one. The PDF Viewer template has roughly 1,500 downloads and four positive reviews, and it exists so the paid templates have somewhere to point back to. Dream Home at $75 has 15 sales and Schedule at $50 has 9. Twenty-four sales. Not a business, but not an accident either, because the free template is what made a first sale possible at all.

Relocate's was Riverpod 3 with code generation, which held a 38,711-line codebase across 27 screens together well enough that the client's own team could pick it up and keep building. Thirty providers and forty Freezed models kept the async boundaries still across 625 commits.

How long does it actually take to ship a SaaS MVP alone?

About ten weeks for a multi-tenant SaaS with billing and compliance, if the scope is settled before you start and nobody moves it. Callidus is my datapoint and the conditions were unusually clean: one decision-maker, plus a design concept finished before the first line of code on top of a spec the failed attempt had already written. Six months for BookBed, which had no external deadline and therefore grew a widget, an admin surface and six platforms. I have written the scoping half of this up in more detail in the SaaS MVP development guide.

AI tooling is real and it is not the whole story. The 2025 Stack Overflow Developer Survey has 84% of developers using or planning to use AI tools, up from 76% the year before, with 51% of professional developers using them daily. The same survey has only 33% trusting the accuracy of what comes back against 46% who distrust it, and 3.1% who highly trust it. That gap is the actual working condition. The generation is fast and the verification is on you, which is why the tests and the rules coverage on Callidus are not decoration.

Five products split attention five ways

Attention is the input that does not scale, and I spent mine five ways. Every hour on a template batch was an hour BookBed's billing stayed switched off. The portfolio is good for a career and bad for a business.

What I would do differently on product six

Pick the one with a person already waiting, and finish the revenue loop before the feature list. Actually, that overstates the tidiness of it. BookBed's billing is wired, tested in Stripe LIVE, and sitting at €9 per month for up to twenty units, and the reason it is not switched on is not technical. It is that turning it on means asking people to pay, and building is more comfortable than asking.

The trial shape matters more than I treated it. Freemius's data puts card-required trials converting near 50% against roughly 18% for no-card opt-in trials and 3–4% for freemium, and I have no first-party conversion number to defend either way because I have not run paid traffic through one. That is the gap, stated plainly.

So the question I would put to anyone reading this as a solo founder SaaS case study rather than a portfolio: how many of your products are sitting at 70% done with the billing switch off? Pick the one with a named human waiting and turn it on this week. Then tell me what happened, because that number is the one nobody publishes.

Free resource

Free SaaS MVP Scope Template

A Notion document with the full feature checklist, MVP vs. nice-to-have table, pre-build questions, and cost signals — so you walk into any developer call knowing exactly what to ask for.

Get the template →
DL

Dusko Licanin

Full-Stack Developer · Banja Luka, Bosnia

Full-stack developer shipping SaaS MVPs, web apps, and mobile apps using AI-augmented workflows — without agency coordination overhead. Live portfolio: BookBed, Callidus, Pizzeria Bestek.

Frequently Asked Questions

How long does it take to build a SaaS MVP as a solo developer?

Ten weeks is achievable for a multi-tenant SaaS with billing and compliance, provided the scope is settled before you start. Callidus OS went from design concept to production in about ten weeks between 14 February and late April 2026, with one decision-maker and no mid-build scope changes. BookBed took six months at the same effort level because nothing external forced a cut-off, so it grew an embeddable widget, an admin surface and six target platforms instead. The variable is not your typing speed. It is whether anybody is allowed to add to the list once the build has started.

What does solo developer SaaS success actually look like in revenue terms?

Most of it looks like under $1,000 in monthly recurring revenue, which is where roughly 70% of micro-SaaS businesses sit. Freemius's 2025 State of Micro-SaaS report, built on its own payment data, puts 45.7% of the SaaS makers on its platform at solo founders and the median profitable micro-SaaS near $4.2K MRR. Against that curve, four of my five products sit in the bottom band and the fifth earns for the client who owns it. Success at this scale usually looks like a fixed-fee build that removed a real cost for somebody, or one product with a named buyer waiting. Not a portfolio.

Which tech stack would you choose again after five products?

Flutter for anything that has to reach mobile and desktop from one codebase, and React with Firebase for anything multi-tenant and web-only. BookBed reached iOS, Android, Web, macOS, Linux and Windows on one Flutter codebase, and that bet got safer in May 2026 when Canonical became lead maintainer of Flutter desktop. Callidus ran on React, TypeScript and Firebase, and the part I would repeat first is treating the Firestore rules as the real access gate rather than a formality. Supabase earned its place on a single-tenant build, where Postgres row-level security and three Edge Functions replaced an entire admin panel.

What is the hardest part of shipping products alone?

The hardest part is deciding what not to build, and then actually asking somebody to pay for the thing you did build. Code review, on-call and QA all collapse into one person, which is survivable with tests and written discipline. What does not collapse cleanly is attention. Every hour I spent on a FlutterFlow template batch was an hour BookBed's billing stayed switched off, and that billing is wired, tested in Stripe LIVE and priced at nine euros a month for up to twenty units. The blocker was never technical. Building is comfortable, asking for money is not, and a portfolio is an effective place to hide from that.

Does AI tooling make a solo developer as productive as a small team?

AI tooling removes the typing bottleneck and leaves the verification bottleneck exactly where it always was, which is on you. The 2025 Stack Overflow Developer Survey found 84% of developers using or planning to use AI tools, up from 76% a year earlier, while only 33% trust the accuracy of the output against 46% who distrust it. That is the working condition rather than a complaint about it. On Callidus it meant roughly 1,200 tests across Vitest and Playwright plus 100% Firestore rules coverage, because generated code nobody verified is a liability in a GDPR-regulated system. Faster drafts, same review burden.