Three months ago, my MRR was $0. Today it's $340 from three paying customers. Not a victory lap story—this is the actual journal of how I got here, mistakes included.
The Idea That Almost Never Launched
I built a KPI dashboard while freelancing for Korean startups. Founders obsessed over metrics but scattered them across Notion docs, Excel sheets, and sticky notes. Frustration equals opportunity.
Spent two weeks validating by talking to 14 founders directly on Twitter and Slack communities. Only 7 responded. Of those, only 2 actually had the problem I thought I was solving. Low conversion rate, but honest feedback.
The breakthrough came from reframing. Instead of asking "Is this billion-dollar material?" I asked "Can I charge $30/month for this?" That one question saved me from months of solo development chasing validation that never would have come.
MVP in 30 Hours, Bugs Included
June 1st commitment: ship something functional by June 15th. Not perfect. Functional.
Built on Next.js and Supabase—tools I knew cold. No design system. No animations. Just a dashboard showing KPI cards, a data input form, and CSV export. Three core features, nothing else.
Launched on Product Hunt June 16th: 47 upvotes, 120 signups, zero conversions. But the comments revealed actual needs. Users wanted mobile support before analytics. Real feedback beats assumptions every time.
Fixed database pooling bugs when we hit 50 concurrent users. Embarrassing, but valuable—hitting real bottlenecks taught me more than any scaling course. That's when you learn what matters.
Pricing: The Quiet Nightmare
Most indie hackers freeze here. I did too.
Instinct said "Build more before charging." Wrong. I published pricing anyway:
- Starter: $19/month (basic dashboard, 3 metrics)
- Pro: $59/month (unlimited metrics, Slack, API)
I offered Pro free for 30 days but announced the increase to $79 when Slack shipped. Psychological tactic? Yes. Honest? Also yes.
First week: one signup. Wanted to quit. Analytics showed the real problem: 340 signups, 18% activation rate. Everyone dropped at the data input screen—one form with 15 fields killed conversions instantly.
The Insight That Changed Everything
July 1st. I rebuilt input as progressive disclosure. Instead of 15 fields upfront, users see three: "What metric?" "Current value?" "Target?" Results immediately. Want to add more? Next screen.
Activation hit 43% in three days. Not a pivot, just listening to how people actually used it.
July 13th, a founder DMed me: "Your tool saved me an hour yesterday. When can I pay?"
That message changed everything. Not because of $59, but because it proved someone genuinely valued what I built. I didn't convert her with marketing. I converted her by having something worth paying for and listening when she was ready.
First Three Paying Customers: The Breakdown
By August 1st:
Founder A: $59/month Pro tier—signed day one, uses daily, never asks for discounts.
Founder B: $19/month Starter—basic usage, consistent payments, satisfied.
Founder C: $59/month Pro + asked for annual pricing.
That last one matters. I had no annual plan. Instead of delaying, I offered it immediately: "15% off, so $600 yearly." They paid in an hour.
The best product decisions come from listening, not planning alone.
Actual Metrics That Matter
$340/month is small intentionally. But at that level, I work 20 hours weekly instead of freelancing full-time. That's the real win—freedom to focus.
Current tracking:
- CAC: $0 (organic, word-of-mouth)
- Churn: 0% YTD
- Pro tier logins: 5.2/week average
- NPS: 42
Revenue matters less than the signals. Three paying customers using the product regularly means I'm solving a real problem.
What Actually Worked
Worked:
- Shipping scrappy and iterating on real usage
- Talking to users before and after launch
- Public, transparent roadmap
- Charging from day one
Didn't work:
- 15-minute demo videos (nobody watched)
- Long feature comparison tables (skimmed once, left)
- Guessing what users needed
Direct conversation beats speculation every single time.
Retention Over Acquisition
With three customers, keeping them matters infinitely more than finding three more. I spend 10 hours monthly listening:
Support response under 6 hours always. Monthly check-in: "Everything working?" Feature requests tracked by frequency, not noise.
Customer B wanted target ranges instead of single targets. One customer mentioned it. I built it in 4 hours. They felt heard. That's retention.
Right now I'm at the inflection point where the next 10 customers either validate this as a real business or reveal I've solved a problem for exactly three founders. Either way, I'm learning faster than I ever did writing code for other companies.
The path from zero to $340 wasn't viral marketing or perfect design. It was shipping honestly, listening obsessively, and believing $19 from someone who uses it beats $0 from someone who doesn't.
If you're tracking metrics scattered across tools, I'd genuinely love your feedback. I'm building in public and learning from every conversation. See what I've built at https://sajuapp.app/?utm_source=devto&utm_medium=social&utm_campaign=longform_weekly and tell me what I got wrong.
Top comments (0)