Skip to content
AI Dev Cases
Senja

“Zero for the First Six Months” — How a 20-Year-Old and His Cofounder Compounded Senja, a Testimonial Tool, to $1M ARR With Two People and No Funding

A testimonial-collection tool built by Wilson Wilson and Olly Meakings — two people, no funding. Its free widgets spread the Senja name every time they’re embedded on a customer’s site; after six months at $0 MRR, it compounded to ~$83K MRR (~$1M ARR) and 3,000 paying customers in about four years.

Published: Aug 9, 20263 min readPrimary-source verified · 4
Monthly (est.)
$83k/mo
Time to grow
46 months
Launched
2022
Wilson WilsonWilson Wilson@euboid“Zero for the First Six Months” — How a 20-Year-Old and His Cofounder Compounded Senja, a Testimonial Tool, to $1M ARR With Two People and No Funding

Key takeaways

  • Pick one feature that kills both the ‘collecting’ and the ‘displaying’ friction (collect by sending a link; display by dropping in a no-code widget)
  • Put your brand on the free plan’s output (‘Powered by ___’) so every customer embed becomes a distribution loop of ads and backlinks
  • When growth stalls, question activation (onboarding) before acquisition — the killer bottleneck was visitors who never activated

The pain point, and how they found it

Everyone knows testimonials on a landing page lift conversion — yet they still get skipped, because of a double friction: (1) asking customers for a testimonial is awkward and tedious, and (2) pasting the collected quotes neatly onto every page is a chore. Senja erased both: collect by sending a link, show by dropping in a no-code widget. The starting point was Wilson’s own struggle to gather testimonials for his own product.

Background & product

Senja is a tool for collecting, organizing, and displaying customer testimonials. To collect, you just send someone a link (text or video); to display, you drop in a no-code embeddable widget or a ‘Wall of Love’ page that gathers every testimonial. It also supports star-rating rich snippets, so it owns the whole ‘how you show trust’ surface, right down to how you look in search results.

It was built by two people, Wilson Wilson (@euboid) and Olly Meakings (@helloitsolly). They met online and built remotely — the classic indie-hacker pairing. Wilson started solo in January 2022, still a teenager to barely 20 at the time. After roughly six months of building, Olly joined as cofounder. They have stayed a two-person, zero-outside-funding operation ever since.

The business model was freemium from day one: collect up to 15 testimonials free, then upgrade to remove branding and unlock features. That ‘the free plan carries our brand’ structure becomes the heart of their growth, as we’ll see.

But the start was anything but glamorous. For the first six months MRR sat at $0 — visitors came, yet nobody converted. Once they broke past that, compounding kicked in: $0→$100 took six months, then it doubled roughly every four months, hitting $10K MRR in August 2023, $30K–$50K MRR across 2024, and 3,000 paying customers at ~$1M ARR (≈$83K MRR) by November 2025. Amid indie successes that mostly rocket up in 18 months, Senja is the counter-example: a different winning path built by compounding over about four years.

From the founder (primary source)

2 years ago Olly joined me as Senja's cofounder. 2 years later, and now we're at $32,000 MRR. Wouldn't have gotten there with anyone else 🔥

Olly
Olly
@helloitsolly

2 years bootstrapping Senja with @euboid 🎂 From 0 → $32,000 MRR Over 1,300 paying customers All with the support of the amazing #buildinpublic family

Image
Reply
Senja growth channels and tech stack

The repeatable playbook

  1. 1Pick one feature that kills both the ‘collecting’ and the ‘displaying’ friction (collect by sending a link; display by dropping in a no-code widget)
  2. 2Put your brand on the free plan’s output (‘Powered by ___’) so every customer embed becomes a distribution loop of ads and backlinks
  3. 3When growth stalls, question activation (onboarding) before acquisition — the killer bottleneck was visitors who never activated
  4. 4Build in public with monthly revenue reports to gain both an audience and self-discipline
  5. 5Stack long-tail SEO content per use case and integration; let it compound even if it’s slow
  6. 6Split roles with a cofounder and take no funding, routing profit to your own salaries so you can afford to wait for compounding

The hard parts

For the first six months MRR stayed at $0, and they nearly gave up more than once. Wilson himself recalls that ‘it took a really long time to break out of zero.’ The turning point wasn’t flashy virality but noticing a dull problem — 1.5K–3K monthly visitors yet no one activating — and rebuilding onboarding to more than double activation.

Deep dive

【Deep dive】We break down why Senja reached $1M ARR through ‘four years of compounding’ rather than an ‘18-month rocket.’ What’s worth copying isn’t flashy burst speed — it’s a structure that keeps working even when it’s slow.

■ What ‘breaking out of zero’ really was. By Wilson’s own public numbers, $0→$100 took six months, then $100→1,000→5,000→10,000 took about four months each. The first step is absurdly heavy; the moment you clear it, it doubles at a steady clip. Most indie failures happen on exactly that opening flat stretch. The lesson is about time: low initial speed isn’t a failure signal, it’s the run-up to compounding — the slope rises later, as long as you don’t quit.

■ The real bottleneck was activation, not acquisition. The turning point Wilson describes wasn’t virality or a new channel. It was noticing a dull problem — 1.5K–3K monthly visitors, yet no one was activating (actually collecting and embedding testimonials) — and rebuilding onboarding. Activation more than doubled, and steady customer growth followed. The takeaway is sharp: before adding the first thing people reach for when growth stalls (ads, new features), question whether the people who already arrived are reaching value. The hole in the middle (activation) is often far more fatal than the one upstream (traffic).

■ The PLG loop that turns the free plan into a distribution engine. Senja’s growth heart is the ‘Powered by Senja’ mark on free widgets. Every time a customer embeds a testimonial widget on their site, the Senja name and link multiply across third-party sites — free advertising and backlinks that accrue on their own. Testimonials are public content by nature, so using the product *is* distribution. Each widget also helps SEO via star-rating rich snippets. Instead of paying to bring people in, the product plants copies of itself across countless sites — that’s what makes freemium a *distribution* strategy here, not just a pricing one.

■ SEO and build-in-public: the ‘slow but accruing’ pillars. The other layer of acquisition is patient SEO content (long-tail articles per use case and integration) and building in public with monthly revenue reports. The former compounds as domain authority grows; the latter builds an audience and trust in the indie community while making publishing an instrument of self-discipline. Neither explodes in month one, but both are the kind of acquisition that accrues as an asset unless you stop — well matched to Senja’s slow-compounding temperament.

■ The ‘no rush’ design of two people and zero funding. Senja stayed two people, no outside capital, throughout. With no VC growth pressure, they weren’t forced into a hype sprint, and profit went straight to their own salaries. By not hiring and keeping fixed costs down, they could afford to *wait* through the four years it took to reach $1M ARR — that lean structure is exactly what let them compound instead of rush.

■ The lesson: there’s more than one way to win. A ‘tens of millions in 18 months’ story like Cal AI’s is striking but not very reproducible. Senja shows the opposite — and, for many indie builders, more realistic — path: pick one narrow feature, turn the free plan into distribution, plug the activation hole, stack an audience through SEO and transparency, take no funding, and let it compound over four years. The one who builds a ‘structure that doesn’t quit,’ not the fastest one, is the one standing at $1M ARR.

FAQ

Where is Senja from and who built it?
An indie SaaS built remotely by two people who met online — Wilson Wilson (@euboid) and Olly Meakings (@helloitsolly). It’s bootstrapped with no outside funding and a two-person team.
Is Senja free to use?
Yes — the free plan lets you collect up to 15 testimonials. Free embeds carry a ‘Powered by Senja’ mark; to remove branding and unlock features you upgrade to a paid plan (around $29/mo and up).
How much revenue does Senja make?
As of November 2025, ~$1M ARR (≈$83,000 MRR) with 3,000+ paying customers — reached by compounding over about four years after six months at $0 MRR.

Cross-case “growth playbook” report (coming soon)

We're building a paid report that aggregates every case in this database: which acquisition tactics worked, in which categories, and how well — insights you can't see from a single story. Get notified first when it launches.

Related cases