Latest / The Indie Hacker Podcast with Fexingo: Solo Developers, SaaS Side Projects, and Independent Tech / How a Solo Dev Hit 10K MRR With an API-First Product
Transcript
- Lucas: So there's this solo developer — goes by the handle 'pdfpete' online — who built a dead-simple API that converts PDFs to plain text. No dashboard, no user interface, no fancy onboarding flow. Just an API endpoint and some documentation. And he's pulling in about ten thousand dollars a month in recurring revenue. Luna: Wait — no UI at all? So how do customers even sign up or manage their usage? Lucas: Exactly the question. And that's actually the whole point. He uses a Stripe-hosted checkout page for subscription sign-up, and customers get an API key emailed to them. Usage is tracked server-side, and he sends a monthly invoice. That's it. The product is literally just the endpoint. Luna: That's so stripped down. But I guess if your customers are developers, they don't need a fluffy UI. They want a clean API and good docs. Lucas: Right. And that's the insight — he's selling to developers who are already comfortable working with curl commands and JSON responses. They don't want to click through a setup wizard. They want to make one API call and get back clean text. So by removing the UI, he removed a huge amount of development and maintenance overhead. Luna: Yeah, that makes sense. And if today's tech conversation gave you something usable, you can support the show at buy me a coffee dot com slash fexingo. Keeps the podcast ad-free and independent. Anyway — how did he even get the first users? Lucas: He actually launched on Product Hunt with a simple landing page that just had a code snippet and a pricing table. No demo video, no fancy graphics. And it did surprisingly well — got around 400 upvotes. But the real traction came from a Hacker News post where he shared his revenue numbers after three months. Developers love transparency, and that post drove a ton of sign-ups. Luna: So the transparency itself became a marketing channel. That's clever. What was his pricing model? Lucas: Usage-based pricing. He charges one one-hundredth of a cent per page — so ten dollars for every ten thousand pages processed. There's a free tier that covers a hundred pages a month. Most customers are small teams or individual developers who need to batch-process a few thousand PDFs occasionally. The average customer spends about thirty dollars a month. Luna: That means he needs a lot of customers to hit ten thousand MRR. How many is that? Lucas: About three hundred and thirty paying customers. But here's the thing — because the product is so simple, his churn is really low. Developers who integrate an API into their workflow are sticky. They don't want to rewrite their code to switch to a competitor. So his monthly churn rate is under three percent. Luna: That's really good for a solo dev product. What about competition? There are tons of pdf to text APIs out there. Lucas: There are, and that's the challenge. But he focused on one specific niche — extracting text from scanned PDFs using optical character recognition. Most general-purpose APIs handle digital PDFs fine but struggle with scans. He tuned his model specifically for that use case, and it shows in the accuracy. He actually benchmarked against three competitors on his documentation page and published the results. Luna: That's bold. Publishing a comparison table. But if you're confident in your product, it's a great trust signal. Lucas: Absolutely. And it's worked. Several large customers — including a legal tech startup and a university library — signed up specifically because of that benchmark. They had tried other APIs and were getting garbled text from scanned documents. Luna: So what does his tech stack look like? He must be keeping costs low to make the math work. Lucas: He's running on a single server with a GPU attached for the OCR processing. Total infrastructure cost is about four hundred dollars a month. He uses a Python framework called FastAPI for the endpoint, and the OCR engine is an open-source model called Tesseract with some custom fine-tuning. The whole thing is surprisingly lightweight. Luna: Four hundred dollars a month for infrastructure on ten thousand MRR? That's a ninety-six percent gross margin. Unreal. Lucas: Yeah, the unit economics are ridiculous. His biggest expense is actually the Stripe processing fees, which run about three hundred dollars a month. So net margin is still above ninety percent. That's the beauty of an API product — once you've built the model and the endpoint, the marginal cost per API call is almost nothing. Luna: What about support? If there's no UI, how do customers get help when something breaks? Lucas: He has a simple help desk tool — just an email inbox and a knowledge base. Most issues are actually about integration — developers misformatting their requests or not handling errors properly. He estimates he spends about five hours a week on support. But because the product is so focused, the questions are repetitive, so he's built up a library of canned responses. Luna: Five hours a week for a ten thousand dollar a month business. That's the indie hacker dream right there. Lucas: It is. But let's be clear — he didn't get here overnight. He started the project two years ago as a side project while working a full-time job. The first six months were just building the model and getting the accuracy where he wanted it. He didn't launch publicly until month seven. And for the first year, revenue was under a thousand dollars a month. Luna: So there was a long grind before the hockey stick. What changed? Lucas: Two things. First, he started writing technical blog posts about how he optimized the OCR pipeline — things like preprocessing the image, adjusting contrast, and using a custom language model. Those posts got picked up on Hacker News and Reddit, driving organic traffic. Second, he added a batch processing endpoint that allowed customers to submit multiple PDFs in a single request. That feature alone doubled his revenue in three months. Luna: So listening to what customers actually needed — even without a UI, he could still gather feedback from support emails and feature requests. Lucas: Exactly. He keeps a public roadmap on a simple Trello board, and customers can vote on features. The batch endpoint was the top request for months. And because he's solo, he can turn around a new feature in a few days. That speed is a competitive advantage against larger companies with longer release cycles. Luna: What's next for him? Is he planning to add more endpoints, or double down on the one? Lucas: He's actually considering an adjacent endpoint — converting PDFs to structured JSON, so instead of getting plain text, you get something like a parsed invoice or a table. That would open up a whole new market of accounting and data extraction use cases. But he's being careful not to bloat the product. He's seen too many indie hackers kill their golden goose by adding features that dilute the core value. Luna: That's a good lesson. Stay focused on what works, and only expand when there's clear demand. Lucas: Right. And I think that's the real takeaway from this story — you don't need a fancy app or a complex go to market strategy. If you can solve one specific problem really well for a technical audience, and you're transparent about your pricing and your process, you can build a sustainable solo business. No VC funding, no team, no office. Just a server, a Stripe account, and a lot of patience. Luna: And good documentation. Don't forget the documentation. Lucas: Absolutely. Good docs are the UI for an API product. If your docs are clear and your endpoint returns accurate results, you've already won half the battle.