Latest / The Indie Hacker Podcast with Fexingo: Solo Developers, SaaS Side Projects, and Independent Tech / How a Solo Dev Used a Pricing Page Test to Double Revenue
Transcript
- Lucas: You ever look at a pricing page and think, 'that's just three rows and two buttons — how much difference can it really make?' Luna: All the difference, apparently. I've seen a single change double a product's revenue. Lucas: That's exactly what happened to a solo developer I've been following. He runs a B2B SaaS tool — think project management for small creative teams, about two hundred paying users when he started the experiment. He wasn't bleeding money, but growth had flatlined. So he did one thing: he redesigned his pricing page. Not the product, not the marketing. Just the pricing page. Luna: And that doubled his revenue? What was the original setup? Lucas: It was a pretty standard three-tier layout: Free, Pro at $19 a month, and Business at $49 a month. About sixty percent of his users were on the free plan, maybe thirty percent on Pro, and maybe ten percent on Business. He was making around six thousand dollars a month in MRR. Not terrible, but he knew he was leaving money on the table. Luna: Right, because free users cost support time and server resources without contributing revenue. Lucas: Exactly. So his first change was to kill the free plan entirely. He grandfathered existing free users for three months, but new signups had to start on a paid tier. That alone bumped his conversion rate from signup to paid from about four percent to nearly twelve percent. Luna: But that's also risky — you lose the top of funnel leads that might convert later. Luna: Yeah, that's a trade-off he weighed. But for his niche — small agencies that need the tool immediately — the free plan was mostly attracting tire-kickers. His real prospects were willing to pay from day one if the value was clear. And speaking of which, that's where the pricing page design came in. Lucas: The second change was adding a high-price anchor tier. He created a new tier called Enterprise at $149 a month — no new features, just a higher price point with 'priority support' and 'custom integrations' that were essentially just promises. He didn't expect anyone to buy it, though a few did. But the real effect was psychological. Suddenly the $49 Business tier looked reasonable by comparison. Luna: Classic anchoring. You see the $149 tier and think, 'well, $49 is a bargain for that.' Luna: Right. And he made the Business tier the default — the one with the 'Most Popular' badge and a highlighted border. That's a well-known pattern but he executed it cleanly: the button said 'Start Free Trial' but it was clear the trial was for the paid plan, not a free plan. Lucas: He also switched from monthly-only billing to offering annual at a discount. The annual was $49 a month billed yearly, but he presented it as $588 per year — and next to the monthly $49 it looked like a better deal because the monthly column showed $588 as the yearly cost too, but without the discount. Luna: So the monthly option was $49 per month, but the annual was $49 per month billed annually? That's the same per-month price. Lucas: Exactly. The trick was that he raised the monthly price to $59 for new customers, and the annual stayed at $49 per month. So annual looked like a $120 savings per year. But he didn't announce a price increase — he just changed the page and let the new pricing apply to new signups. Existing customers were locked in at the old rates for six months. Luna: Smart. So the annual commitment gave him upfront cash and reduced churn. Lucas: Yeah. The combination of those changes — removing free, adding an anchor tier, highlighting the middle plan, and incentivizing annual — led to a ninety-percent increase in average revenue per user. Within three months, his MRR went from six thousand to about eleven thousand five hundred. Almost double. Luna: That's impressive. But it's also a small sample size. How do you know it wasn't just seasonality or a coincidental spike in demand? Lucas: He ran it as a proper A/B test using a tool called Convert. For two weeks, fifty percent of new visitors saw the old page, fifty percent saw the new one. The new page converted at nine point eight percent to paid trial; the old page at three point two percent. Statistically significant at ninety-nine percent confidence. So the pricing page itself drove the lift. Luna: That is a huge delta. And he did this with only about a thousand visitors total during the test period, right? Because his traffic wasn't huge. Lucas: Right. About twelve hundred visitors over two weeks. That's the beauty of a focused test with a strong effect size. You don't need millions of users to get signal. Luna: And I think this is exactly why we talk about pricing experiments so often on this show — because it's one of the highest-leverage changes a solo dev can make without writing new code. Lucas: And if today's conversation gave you something usable, I want to mention something quickly. We deliberately keep this podcast ad-free — no sponsors, no mid-roll interruptions. It's a choice we made because we think the content is better when we're not selling your attention to someone else. If you want to support that, there's a link: buy me a coffee dot com slash fexingo. No pressure, just a way to keep the show independent. Luna: Yeah, it's a small way to say this kind of deep-dive content matters. And we really appreciate it. Lucas: So back to the experiment. The developer also made a third change that I think is worth examining: he redesigned the feature comparison table. Before, it was a simple list of checkmarks and X's. After, he used a three-column grid with the 'Most Popular' tier having a slightly larger font and a colored header. He also added a 'What's included' subheading with brief, benefit-oriented copy. Luna: So less about features, more about outcomes. That's a classic value-based pricing approach. Lucas: Exactly. Instead of 'Unlimited projects' he wrote 'Manage unlimited client projects without slowdown.' Instead of 'API access' he wrote 'Connect your tools and automate workflows.' That shift from features to benefits is a well-known copywriting principle but surprisingly few indie hackers apply it to their pricing page. Luna: And he tested that too? Or was it part of the same variant? Lucas: He tested the copy as a separate A/B test after the first test confirmed the new layout worked. The benefit-oriented copy added another fifteen percent lift on top of the layout changes. So the final version combined all three: no free plan, anchor tier, annual discount, benefit copy, and the highlighted middle tier. Luna: What about the free trial? Did he change that? Lucas: Good question. He kept a fourteen-day free trial for all paid plans, but he required a credit card upfront. That was a change from the old page where you could sign up for the free plan without a card. Requiring the card for the trial increased the quality of leads and reduced support burden — people who weren't serious self-selected out. Luna: That can tank trial to paid conversion though, if people forget to cancel. Lucas: It can, but he sent reminder emails on day ten and day thirteen. And his trial to paid conversion actually went up from about twenty percent to thirty-three percent. The card requirement filtered out the least committed users, but the ones who did sign up were far more likely to convert. So net positive. Luna: What about existing customers? Did he grandfather them or force them onto the new pricing? Lucas: He grandfathered all existing customers for six months at their old rates. After six months, they would be migrated to the new pricing — but with a personalized email offering to lock in the old monthly price for life if they switched to annual. About forty percent took that offer, which gave him a big cash infusion and reduced churn. Luna: That's a smart retention play. And it also helps smooth over any resentment from price changes. Lucas: Right. He wrote a candid email explaining why he was changing the pricing: to ensure the business remained sustainable and could keep improving the product. People appreciated the transparency, and very few complained. Luna: So the takeaway for indie hackers listening is: your pricing page is not a static document. It's a living experiment. And you can run these tests even with modest traffic. Lucas: Absolutely. The tools are cheap — Convert is about fifty bucks a month, and there are free alternatives like Google Optimize. The risk is low because you can always revert. And the upside can be enormous. This developer doubled his revenue in three months with no product changes. That's the kind of leverage most founders underestimate. Luna: How long did the whole process take, from planning to final implementation? Lucas: He spent about two weeks designing the new page and setting up the A/B test, then two weeks running the test, then another week analyzing and implementing the winner. So about five weeks total. And that was working evenings and weekends — he still had a day job at the time. Luna: So five weeks of part-time work to double your revenue. That's a pretty incredible return on time. Lucas: Exactly. And the best part is, the principles apply broadly. Whether you're selling a $5 app or a $500 enterprise tool, the same psychology works. Anchoring, decoy effects, benefit copy, annual discounts — these are all well-documented in behavioral economics but rarely applied by solo developers. Luna: I wonder if there's a limit though. Like, if you're selling to consumers, would these same tactics work? Consumer pricing psychology is different from B2B. Lucas: It is different, but not completely. The anchoring effect works in both. The decoy effect works in both. The main difference is that B2B buyers are more sensitive to feature comparisons, while consumers are more sensitive to absolute price. But a well-designed pricing page can address both. The key is to test what works for your specific audience. Luna: Good point. And I think the biggest barrier for most indie hackers is just starting. They think they need a big marketing push or a new feature to grow, but often the pricing page is the low-hanging fruit. Lucas: Right. So if you're listening and you haven't touched your pricing page in six months, maybe it's time to run a simple A/B test. Change one thing — just one — and see what happens. You might be surprised. Luna: And if you do run a test, we'd love to hear about it. Tag us or drop us a note. We might feature your results on a future episode. Lucas: That's a wrap for today. Next week, we're looking at how a solo dev used a simple onboarding drip campaign to reduce churn by forty percent. See you then.