We have 87 users and 1 paying customer. That 1 is us.
We have 87 users and 1 paying customer. That 1 is us.
I ran the query twice to make sure.
SELECT id, email, plan, stripe_subscription_id FROM users
WHERE plan NOT IN ('free','trial') AND is_active = true;
One row. [email protected]. plan = 'pro'. stripe_subscription_id = NULL. That is me. I gave myself a pro account in the admin panel months ago. There is no Stripe subscription. There has never been a Stripe subscription from anyone.
The Stripe account is fully wired up. The /pricing page is live. The checkout flow works — I tested it. Nothing is broken. There is simply nobody on the other end of it.
87 accounts. 0 external revenue. 1 internal pro seat that is me.
I thought we had a retention problem. We have an acquisition problem.
For the last month I have been optimizing retention. Watching users sign up, watching them churn, writing post-mortems about why our onboarding drop-off was so high. I shipped seven or eight pieces of retention infrastructure. They were all useful. None of them would have moved the revenue number past zero, because the problem is one level upstream.
I pulled 30 days of analytics this morning. Here is what it says about who we are attracting:
/blog/*— 1,311 pageviews from 868 unique IPs. Biggest traffic source on the site.- Top blog posts, in order of pageviews: "How to grow your Telegram channel" (136 pv), "How to get more followers on X organically" (69 pv), "How to build a personal brand on Twitter" (32 pv), "Best AI marketing tools for indie hackers 2026" (25 pv).
/for/indie-developers— 15 unique IPs over 30 days. Our explicitly-ICP landing page.
I spent 4 days last month writing SEO blog posts about growing Telegram channels. Telegram-channel-growth people are not going to pay $29/mo for an AI social media agent pitched at indie SaaS founders. They want a different product — they want follower-growth hacks for a hobby account. And they are 98% of my blog traffic.
Meanwhile, the landing page I designed specifically for the audience I am trying to sell to gets 15 IPs a month. Fifteen.
The uncomfortable math
I built a product for indie SaaS founders who hate writing marketing. My acquisition machine delivers content-curious general consumers. Between the two is a wall, and I built it.
Every channel is telling me the same story:
- SEO: keyword choice pulled in amateurs, not builders.
- Free tools:
/free-tools/ai-post-generatoris a "make me a tweet" tool that attracts anyone with 30 seconds and curiosity, not the solo founder who has a SaaS and a problem. - OpenClaw skill + MCP repo: traction among devs who want to try new AI tooling, not SaaS founders who want to buy a marketing solution.
- Twitter build-in-public: the one channel that is actually reaching people who look like my ICP. It is also the channel I have invested the least in.
Want this done automatically for your product?
The checkout page works. The product works. The funnel from /pricing to payment is fine. The funnel from stranger to /pricing is bringing me the wrong strangers.
What I am doing today
- Rewrote
/free-tools/ai-post-generatorfrom "free AI social media post generator" (generic consumer bait) to "AI post generator for indie hackers — stop blanking on what to post about your SaaS." Keywords, H1, page copy all aligned to the specific audience I want. Same URL, same SEO equity, different magnet. - Added an ICP CTA block to the homepage — a dashed-border box below the free-tools section that reads "Building a SaaS alone? BlogBurst is built for indie hackers who ship code, not marketing." Linked directly to
/for/indie-developers. - Stopped writing Telegram-follower-growth SEO posts. The post you are reading is the replacement content strategy. Every future blog post on this site will be a build-in-public story from our own product, with real numbers. If that moves someone to sign up because they recognize themselves in it, great. If not, it at least stops pretending our blog is an SEO farm for people who will never pay.
- Making the existing Telegram-focused posts stop carrying the "BlogBurst is for you" implicit promise. Removing the signup CTAs from those posts over the next week. If a Telegram-channel-grower reads that post, they should leave with a takeaway — not a mislabeled invitation to a product they do not need.
This is scary to write. We have been in the market a while and I have one customer and that customer is me. The easy reflex is to post screenshots of the 4 users who actually used us this week as if that were traction.
It is not traction. It is accident. Accidents that line up the way ours have are not a strategy.
I will write this post again in 30 days. If there is a real paying customer on the other end, I will name them. If there is not, I will tell you exactly what I changed, and exactly what the next experiment is.
To the next indie hacker who reads this
If you have N_users > 50 and N_paying = 0:
- Pull your top 20 blog pages and audit the implicit audience each one targets.
- Pull the top 10 referrers and ask: is this traffic the person I am trying to sell to?
- Look at your ICP landing page's pageviews. Mine gets 15 IPs a month out of 3,000 total. That is a complete mismatch, not a conversion problem.
The retention graphs are not the problem. The people are the wrong people.
Related Articles
168 mentions, 0 replies. The 4-line bug that was silencing our audience.
168 Twitter @-mentions landed on BlogBurst in a day. Our auto-engagement system replied to 0 of them. The culprit was a 7-day "do not re-reply to the same author" throttle written for an account scale we do not have yet.
7 of our last 17 signups bounced in under a minute. Here is the Google OAuth redirect that killed them.
Audited 30 days of BlogBurst signups: 7 ghosts with zero events after signup, 1 user spent 46 hours on free-tools without onboarding. The bug was not the wizard — it was the OAuth callback routing new users to an empty dashboard.
How to Replace a $500-1,500/mo Freelance Social Media Manager with AI in 2026
The freelance SMM role unpacked: 5 tasks, 3 solved by AI, 1 still needing humans. A honest playbook for solo founders considering the switch — with real cost numbers and when not to do it.
Stop posting manually. Let AI do it 24/7.
BlogBurst writes, publishes, and grows your social media across Twitter, Bluesky, Telegram & Discord — while you sleep. 7-day free trial, no credit card.
Start 7-Day Free Trial7-day free trial · No credit card required