Bloggers July 31, 2020

My $9,000 blog post

Michael Lynch @mtlynch

TL;DR - After a couple months of low sales on my new project, I wrote a blog post that told the story of how and why I created the product. The post reached #1 on Hacker News and led to ~$9k in new sales.


For the past two months, I've been working on an tool called TinyPilot. It runs on the Raspberry Pi (an inexpensive, small computer) and allows you to manage servers remotely.

TinyPilot connected to an Ubuntu laptop

It's a little bit like Remote Desktop / Team Viewer / VNC, except it works at the physical level. That means it doesn't require any software on the target machine. In fact, you can control the target machine before its OS even boots, allowing you to modify BIOS or install a new OS.

Unsuccessfully attempts at pre-sale buzz

Before releasing TinyPilot, I created a prototype called Key Mime Pi that was basically the first half of TinyPilot. It supported keyboard forwarding but it didn't have video capture, so you couldn't see what you were typing unless you were staring at the other computer.

Photo of Key Mime Pi, early TinyPilot prototype

I wrote a blog post about that prototype and invited people to sign up for my mailing list to find out if I could get video capture working.

The post got a small response on a few subreddits, but nothing major. In its first week, 1,239 people read the post, and 11 signed up for the mailing list.

Traffic graph for Key Mime Pi article

I emailed several IT shops, offering to pay them their hourly rate to speak with me about a remote server management device, but only 2 of 10 responded. Neither seemed particularly excited about a product that was so limited in functionality compared with the commercial solutions, even if it cost much less.


After a month of hacking away, I got video capture working. I emailed my 11 mailing list subscribers offering 15% off if they pre-ordered, and two subscribers purchased. It wasn't as high as I'd hoped, but it also gave me hope that I was making something some people would value.

Advertising with myself

One of my old posts is the top Google result for "homelab VM." It attracts 30-50 readers a day interested in building their own homelab VM server.

That audience seemed like a good market for TinyPilot, so I created little ads on that post to point readers to my product, but this seems to have had no impact on sales.

Self ads on my own article

My blog post

I blog frequently, and I've had good luck with Hacker News. I had published an article a few years ago about using a Raspberry Pi to create a mostly ineffectve plant-watering robot, and that reached #1 on HN.

I thought if I could write an engaging story about my process building TinyPilot, it might attract attention from Hacker News and similar sites. I spent ~30 hours writing and editing the post and creating screenshots to make it easy for readers to follow along with my process.

Screenshot of my blog post

Going #1 on Hacker News

I submitted the post to Hacker News at 10 AM last Thursday. Within 25 minutes, it hit the front page. In less than an hour, it jumped to the #2 spot.

Screenshot of TinyPilot at #2 on Hacker News

It stayed in the #1 or 2 spot for the rest of the day, eventually accruing 750 points.

I was thrilled! I hoped to reach the front page of Hacker News, but I didn't expect it to get to #1.

Still no sales

I had deliberately avoided sharing the article elsewhere because I figured it it did do well, it would be better to space out my marketing efforts. I only had enough equipment to ship 9 TinyPilot units, so a surge in sales would be a waste if it happened all at once.

By 1pm, there were still no sales. TinyPilot had been at the #1 spot on Hacker News for several hours and attracted lots of positive comments, but it didn't seem like anyone was interested in purchasing one.

People who had seen the post on HN had already submitted it to a few different subreddits like /r/programming and /r/raspberry_pi. At this point, it seemed like people weren't buying, so may as well capitalize on sharing a fresh post:

Screenshot of reddit submissions

All of a sudden: sales

Suddenly, there was a burst of sales. After no purchases the entire day, suddenly 4 customers ordered in the span of half an hour:

Stripe notifications

By 2:44pm, I had sold all nine of the kits I had in stock, so I put up notices letting people know there'd be a delay of up to 10 days on future orders:

Backorder notice on TinyPilot website

Fortunately, customers kept buying, albeit at a slower pace.

By the numbers

Here are my stats for the day of my blog post:

  • Sales: 16
  • Total revenue: $3,013
  • Blog readers: 22,385

Stripe stats

After one week:

  • Sales: 51
  • Total revenue: $8,861
  • Blog readers: 48,730

Google analytics stats

Additionally, there are five international customers waiting to place around $1k in additional orders when I open sales through eBay's Global Shipping Program. My margins on each device are around 40-50%, so TinyPilot has earned around $4k in profit.

Squandering my traffic spike

I obviously wish I had stocked more TinyPilot units, as I think I could have capitalized better on the spike of interest. That said, it would have been hard, given the information I had at the time.

Each kit costs me $50-100. If I had stocked say, 50 kits, I'd be out around $3k if it turned out that this wasn't a product people found compelling. And at the time, there wasn't much evidence people were interested in purchasing it.

I could have done a better job of preparing for a spike while minimizing risk of overspending on unused inventory. I need 8 different parts to ship a kit, but the piece that takes the longest to ship to me is also the cheapest, at only ~$11. I could have stocked 50 of just that piece and then gotten everything else delivered within 1-2 days if I paid a premium for shipping. That way, I'd never really have to go into backorder.

Lessons learned

  • You can market a product by telling the story of building it.
    • Caveat: This mainly works if your customers enjoy the technical details of what you build.
  • Don't use Stripe to sell physical goods (sorry IH parent company).
    • They make the whole process very difficult.
    • Shopify and other eCommerce platforms support the sales workflow of physical items far better.
  • Plan for success.
    • If you're selling a physical product, plan ways to strategically resupply fast if it does better than you expect.
    • Host on a platform that can handle traffic spikes. I forgot to configure a paid Firebase plan and had to quickly flip billing on before they shut off my site.

A lot of this is luck

Personally, it frustrates me to see posts reach the top of IH that are like, "I spent 20 minutes putting up a landing page, and the next day I had $50k in pre-sales! Indie hacking is great!" Some people find traction right out of the gate, but many of us are not so lucky.

If it seems like I experienced overnight success, I haven't. I've been trying to build businesses full-time for the last 2.5 years. I've taken on about 10 different projects in that time, investing weeks or months into each one. This is the first thing that's had clear success early on, and I have no idea if it's sustainable. To me, each failed project is an opportunity to increase the probability of success on the next one.

  1. 2

    Fascinating story! Thanks for sharing! A great example of high quality, organic content rising to the top.

    1. 1

      Thanks for reading!

  2. 2

    amazing. congrats!

  3. 2

    Very motivating Story. Thanks for sharing. I was hoping to finish my current project in 3 months and move on. But, it looks as if it will take one more month and I was feeling down about that. This gave me some boost in morale. Thank you.

    1. 1

      Awesome, I'm glad to hear about the morale boost!

  4. 2

    Congrats and thank you so much for sharing your story.

    1. 1

      Thanks! And thanks for reading.

  5. 2

    Great write up, I loved it. Thx for sharing your story.

    1. 1

      Definitely! Thanks for reading.

  6. 2

    Great write up, thanks for posting it.

    1. 1

      Thanks! I'm glad you enjoyed it.

  7. 2

    Congrats, great post! And thanks for making me not feel bad about my lack of overnight success :)

    1. 1

      Thanks for reading!

  8. 2

    Nice 🤩 I was following the story through the newsletter. Glad to hear you managed to make a profit with the project 🙌

    1. 1

      Oh awesome. Thanks for following along!

  9. 2

    Love it, nice work Michael! And thanks for sharing :)

  10. 1

    This comment was deleted 5 months ago.

Recommended Posts