The B2B Podcast Index
Index
All categories
MarketingSalesSaaSFinanceHROpsLeadershipCustomer SuccessAI & DataProductStartups & FoundersRevOpsEngineering & DevTools
MethodologySubmit
Best of:MarketingSalesSaaSFinanceHROpsLeadershipCustomer SuccessAI & DataProductStartups & FoundersRevOpsEngineering & DevTools
An independent project byFame
SearchBest episodesGuestsInsightsMethodologySubmit a podcast
Index/Startups & Founders/The Indie Hacker Podcast with Fexingo
The Indie Hacker Podcast with Fexingo artwork

How a Solo Dev Built a SaaS With No Landing Page

The Indie Hacker Podcast with Fexingo · 2026-06-24 · 7 min

0:00--:--

Key moments - from our scoring

Substance score

49 / 100

Five dimensions, 20 points each

Insight Density12 / 20
Originality13 / 20
Guest Caliber4 / 20
Specificity & Evidence13 / 20
Conversational Craft7 / 20

InvoiceDev built a $10K MRR SaaS entirely around an API and CLI tool, bypassing the traditional landing page entirely. Instead of a homepage, pricing page, or sign-up flow, the developer released an invoice-generation CLI on Hacker News that let users try the service immediately via 'npm install invoice-cli'. The single-endpoint API charged $0.50 per invoice with 50 free to start, meaning users only added payment information after already getting value. This founder prioritized API documentation and community support over marketing collateral - keeping the product to just 2,000 lines of Node.js code. By focusing on where developers actually congregate (Hacker News, GitHub, Discord, Reddit), rather than building a traditional web presence, InvoiceDev reached 18K MRR in under five months with under 2% churn, proving that for developer-first products, distribution through working tools outperforms conversion-optimized landing pages.

Key takeaways

  • →Distribution for developer products happens where developers already are (GitHub, Hacker News, Discord) rather than on traditional landing pages.
  • →Eliminating signup friction by letting users experience the product first (50 free invoices) converted better than traditional free trials with signup requirements.
  • →API-first positioning with a single POST endpoint and CLI wrapper reduced the entire product to ~2,000 lines of Node.js while enabling high-value embedded integrations.
  • →Community support through Discord and GitHub issues scaled with documentation quality, dropping support time from 1 hour/day to 15 minutes/day as docs improved.
  • →Churn stayed below 2% because customers built the API into their own products, creating switching costs that became the sustainable moat instead of brand loyalty.

In this episode

  1. 1The Unconventional Launch: Building a $10K MRR SaaS Without a Landing Page
  2. 2CLI-First Distribution: Making the Tool the Landing Page on Hacker News
  3. 3API-Driven Business Model: Embedding the Invoice Service Into Other Products
  4. 4Frictionless Pricing: $0.50 Per Invoice With 50 Free to Start
  5. 5Community-Powered Support: GitHub Issues, Discord, and Developer-Led Growth
  6. 6Organic Viral Growth: From Hacker News to Reddit to Tech Newsletters
  7. 7Key Insights: Where Your Users Are and What the CLI Version of Your SaaS Could Be

Mentioned

Hacker NewsGitHubDiscordStripeNode.jsRedditInvoiceDev

Topics in this episode

StripeCLI toolsHacker News distributionAPI-first SaaSGitHub IssuesDiscord communitiesNode.jsGitHub README documentationNo-code tool integrationsnpm package distribution

Questions this episode answers

How did InvoiceDev acquire 20,000 monthly invoice users without a landing page?

The founder launched a CLI tool on Hacker News that made trying the service frictionless - users simply ran 'npm install invoice-cli' and started generating invoices immediately. One integration with a freelance marketplace alone accounted for $3K/month in usage, and organic distribution through Hacker News, Reddit's r/node, and developer tweets drove viral growth without paid marketing.

What was InvoiceDev's pricing model and how did it drive conversions?

He charged a flat $0.50 per invoice with the first 50 free, requiring no signup or trial period. Users only encountered a Stripe payment link after hitting 50 free invoices, which resulted in higher conversion rates than traditional trials because users had already proven the value to themselves through repeated use.

How did InvoiceDev handle customer support without a website or traditional help systems?

Support happened entirely through GitHub issues and a Discord server, which initially required about an hour daily but dropped to 15 minutes as documentation improved. The Discord community became self-supporting, with developers helping each other and sharing integrations in a 'show and tell' channel that served as organic marketing.

What made InvoiceDev's API simple enough to embed in other products at scale?

The entire API consisted of a single POST endpoint that accepted invoice data and returned a PDF link - no dashboard, web UI, or complex features. The simplicity meant developers could integrate it into their own apps with minimal friction, turning his API into infrastructure for other SaaS products.

What's the key difference between InvoiceDev's distribution strategy and traditional SaaS landing pages?

Rather than optimizing a landing page for conversions, InvoiceDev met developers where they already were (GitHub, Hacker News, Discord) with a concrete, testable tool that solved one specific problem. The distribution strategy prioritized being useful first and marketable second, making the CLI the actual landing page.

What our scoring noted

Our reviewer’s read on each dimension, with quotes from the episode.

Insight Density

12 / 20

The episode packs several non-obvious distribution ideas (CLI-as-landing-page, paying after use rather than trial, integration as moat) into seven minutes, but it's a single case study with some repetition and a few platitudes.

the CLI was the landing page
the psychological barrier of 'signing up' is higher than the barrier of 'I've already used it 50 times and it works'

Originality

13 / 20

The framing of replacing a landing page with a usable tool and 'what's the CLI version of your SaaS' is a fresher take than typical indie-hacker growth advice, though API-first distribution is acknowledged as a known play.

distribution isn't about where you put your landing page - it's about where your users already are
what's the CLI version of your SaaS? What's the single command that solves a problem?

Guest Caliber

4 / 20

There is no actual guest in the room - two hosts narrate a third-party story about an anonymous 'InvoiceDev', with a passing 'he told me' but no verifiable practitioner present, so the relevant operator is absent from the transcript.

The developer, who goes by the handle 'InvoiceDev' on Hacker News
And he told me that his biggest competitor was a company with a beautiful landing page

Specificity & Evidence

13 / 20

Plenty of concrete numbers and examples (fifty cents per invoice, 20,000 invoices, $3k from one integration, 18k MRR, sub-2% churn, ~2,000 lines of Node), though all attributed to an anonymous source that can't be verified.

He charged a flat fifty cents per invoice
That one integration alone accounted for about three thousand dollars in monthly usage

Conversational Craft

7 / 20

Luna mostly lobs supportive, scripted prompts that set up Lucas's points rather than challenging any claim, and the segment includes an unprompted donation plug; no real pushback or probing of the convenient numbers.

That's a great insight.
the way these stay ad-free is listener support - you can find us at buy me a coffee dot com slash fexingo

Conversation analysis

Computed from the transcript - who did the talking, and the words that came up most.

Most-used words

lucas15luna13invoice9thousand8page8landing7developers7product6tool6didn6dollars5free5pricing5single5invoices5first5

Episode notes

Most indie hackers obsess over their landing page - but what if you skipped it entirely? In this episode of The Indie Hacker Podcast, Lucas and Luna unpack the story of a solo developer who built a SaaS product that never had a traditional website or signup flow. Instead, he relied entirely on an API-first distribution model, letting developers integrate his payment and invoicing tool directly into their own apps via a single endpoint. He hit $10K MRR in five months without a single visitor to a homepage. We break down the distribution mechanics, the pricing model (a flat $0.50 per invoice, no tiers), the customer acquisition strategy (developer docs, Hacker News, and a CLI tool), and the surprising lesson: sometimes the best landing page is no landing page at all. If you're a solo developer or indie hacker tired of optimizing conversion rates, this episode offers a counterintuitive path to revenue. #API #APIFirst #SaaS #IndieHacker #SoloDeveloper #NoLandingPage #DeveloperTools #Distribution #Revenue #Bootstrapping #Invoicing #CLI #HackerNews #Technology #Business #Startup #FexingoBusiness #BusinessPodcast Keep every episode free: buymeacoffee.com/fexingo

Full transcript

7 min

Transcribed and scored by The B2B Podcast Index.

Lucas: So a solo developer hits ten thousand dollars in monthly recurring revenue in five months - and he never built a landing page. Luna: Wait - no homepage at all? No 'Sign Up for Free' button? Lucas: None.

No website. No email capture. No pricing page. The product was an API - a single endpoint that lets you generate and send invoices.

You sign up by making your first API call. That's it. Luna: That's wild. But how do people even find it if there's nowhere to land?

Lucas: That's the part that makes this a genuinely different distribution story. The developer, who goes by the handle 'InvoiceDev' on Hacker News, launched the product as a CLI tool first - you could run a command like 'invoice create - amount 50 - client ACME' and it would create an invoice through his API. He posted the CLI on Hacker News, and the conversation was entirely about the tool, not the business behind it. Luna: So the CLI was the landing page.

That's clever. Lucas: Exactly. Developers don't want to read about your product - they want to try it. He made trying it a single command.

'npm install invoice-cli', run it, and boom - you've generated an invoice. He didn't ask for an email. He didn't show a pricing table. The tool just worked, and if you wanted to do more, you read the docs, which were just a GitHub README.

Luna: But ten thousand dollars a month from a CLI and a README? That's a lot of invoices. Lucas: He charged a flat fifty cents per invoice - no tiers, no monthly subscription. So at ten thousand dollars, that's twenty thousand invoices a month.

And he got there in about five months. The key is that his customers weren't end-users sending one invoice a month - they were other developers building invoicing into their own apps. One customer was a freelance marketplace that integrated his API to handle payments between clients and freelancers. That one integration alone accounted for about three thousand dollars in monthly usage.

Luna: So it's less about volume per user and more about embedding the API into someone else's product. That's a classic api first play. Lucas: Right. And he made it incredibly easy to embed.

The API was a single POST endpoint. You send the invoice data, it returns a PDF link. That's it. He didn't build a dashboard, didn't build a web UI for managing invoices - just the API and a CLI wrapper around it.

The entire 'product' was maybe two thousand lines of Node.js code. Luna: If today was actually useful to you, the way these stay ad-free is listener support - you can find us at buy me a coffee dot com slash fexingo. Lucas: Yeah, we love doing these deep dives on unconventional builds, and knowing it's helpful keeps us going.

So back to the story - the most interesting part is how he handled pricing transparency with no landing page. Lucas: He had a single line in the README: 'Pricing: $0.50 per invoice, first 50 free.' No signup required to start.

You just make requests, and after you hit 50 free invoices, he sends you a Stripe link to add a card. No subscription, no commitment. Luna: That's a really low-friction model. Developers hate jumping through hoops to try something.

Lucas: Absolutely. And he told me that his biggest competitor was a company with a beautiful landing page, a free trial, and a three-tier pricing table. His conversion rate from trial to paid was actually higher because there was no trial - you just started paying when you needed to. He said the psychological barrier of 'signing up' is higher than the barrier of 'I've already used it 50 times and it works'.

Luna: That's a great insight. So many indie hackers spend weeks perfecting their landing page copy and CTA buttons. He spent that time building the API docs and the CLI. Lucas: Exactly.

And the docs were crucial. He wrote them in a very conversational, problem-solving style. For example, instead of 'Authentication: Use Bearer token in Authorization header', he wrote 'To get started, just run the CLI with no arguments. It'll walk you through it.'

Developers respond to that - it signals that you respect their time. Luna: What about customer support? Without a website, where do people go with questions? Lucas: GitHub issues and a Discord server.

He said he spent about an hour a day on support in the beginning, but as the docs improved, that dropped to about fifteen minutes. And because his users were developers, they often helped each other in Discord. He had a channel called 'show and tell' where people posted what they built with his API. That became his best marketing - seeing real integrations.

Luna: So the community became the landing page in a sense. Lucas: Exactly. He never had to write a blog post or run an ad. The CLI went viral on Hacker News, then Reddit's r/node, and then a few developers tweeted about it.

One integration with a popular no-code tool got picked up by a tech newsletter, and that drove a spike of about a thousand new users in a week. He didn't even know the newsletter had mentioned him until his Stripe dashboard started lighting up. Luna: What's the biggest takeaway for someone listening who's building a SaaS right now? Lucas: I think it's that distribution isn't about where you put your landing page - it's about where your users already are.

Developers are on GitHub, on Hacker News, in Discord servers. Meet them there with a tool that solves one specific problem, not a website that tries to sell them on a vision. He didn't sell 'invoicing software' - he sold 'send an invoice from your terminal.' That's a concrete, testable value prop.

Luna: And he kept it simple. No dashboard, no analytics, no onboarding emails. Just the API. Lucas: Right.

He's now at about eighteen thousand dollars MRR, and he still doesn't have a website. He says he might build one eventually, but it's not a priority. His churn is under two percent because the people who use his API have built it into their own products - switching costs are high. That's the moat: integration, not a brand.

Luna: So for indie hackers listening, the question might be: what's the CLI version of your SaaS? What's the single command that solves a problem? Lucas: That's exactly the right question. And it doesn't have to be a CLI - it could be a Slack bot, a GitHub Action, a Chrome extension.

The point is to make the first interaction feel like a tool, not a product. Once they're using it, you've already won the hardest part of the funnel.

Related episodes across the Index

Other episodes covering the same guests and topics, from across The B2B Podcast Index.

  • How API Webhook Delivery SLOs Create Hidden Reliability RisksThe Developer Tools Podcast with Fexingo · on Stripe98 / 100
  • Trust, stablecoins, and the AI margin squeeze:What McKinsey and QED's fintech report means for banksTearsheet Podcast: Exploring Financial Services Together · on Stripe89 / 100
  • He quit Stripe and hit $10M ARR in 4 years - with $0 marketing spend. | Anurag Goel, Founder of RenderA Product Market Fit Show · on Stripe89 / 100
  • Fintech Recap: ALT5 Sigma, Increase & Fed Master AccountsFintech Business Podcast · on Stripe86 / 100
  • "The CEO Must Be the Chief AI Officer"Y Combinator Startup Podcast · on Stripe85 / 100
  • How a Solopreneur Built a Two-Sided Marketplace AloneSolopreneur Sessions with Fexingo · on Stripe82 / 100

More from The Indie Hacker Podcast with Fexingo

All episodes →
  • How a Solo Dev Hit 10K MRR by Tripling Prices Overnight75 / 100
  • How a Solo Dev Hit 10K MRR With a SaaS That Sells to Other SaaS Companies83 / 100
  • How a Solo Dev Hit 10K MRR With a Product Hunt Launch and Nothing Else85 / 100
  • How a Solo Dev Hit 10K MRR With a CLI Tool and No UI72 / 100
  • How a Solo Dev Hit 10K MRR by Selling to Universities76 / 100
Explore the best B2B Startups & Founders podcasts →
All The Indie Hacker Podcast with Fexingo episodes →