Two weeks ago I put Localdock — a macOS menubar app that gives every dev server a real address — on Product Hunt. It finished #8 for the day. This is what that turned into, every number straight off the dashboard, including the ones that don't flatter.

What I launched

Localdock names your dev servers. Start something in ~/code/dashboard and it answers at dashboard.localhost — no port, no hosts file, no sudo — and the name keeps pointing at the newest server when the framework auto-increments 3000 → 3001 behind your back. Flip one control and the same project is dashboard.local for your phone on the Wi-Fi; flip it again and it's a public HTTPS link with a key in the URL that expires after an hour. The tunnel binary is bundled and signed with the app, so there is nothing to install and no account to make. For people running Claude Code or Cursor, it also ships an MCP server with exactly three tools so parallel agent sessions stop colliding on ports — that page has the details.

It's a one-time purchase, sold to one person at a time by one person. I built it in about three weeks, leaning hard on coding agents — which is also how the port problem it solves became personal.

Launch day

Product Hunt on 24 August 2026: 121 upvotes, #8 product of the day. A respectable number, not a headline one, and I'd take the comment thread over the rank. Three questions from it did more for the product than the traffic did:

The other launch-day event: I also shipped 1.2.0, because launch day was the day I discovered — on my own 2020 iMac — that every earlier build was Apple-silicon-only and Intel Macs refused it with “not supported on this Mac”. Nobody had reported it. Nobody had reported it because nobody on an Intel Mac had got as far as reporting; they had simply left. The changelog has the whole three weeks, day-one crash included.

The numbers

Thirty days ending 6 September 2026, the launch in the middle of the window.

Headline figures
metricvalue
Visitors3,755
Started checkout 3.1% of visitors117
Paid 16% of checkouts · 0.5% of visitors19
Revenue$364
Bounce rate93%
Median session40 s

Traffic came in three spikes, not a curve: a short video on TikTok a few days before launch, Product Hunt itself, and — the biggest day of the month — a single link a week after launch. Between spikes the site sees a few dozen people a day, which is the real baseline and the one I plan around.

Revenue by referrer
referrerrevenue
Product Hunt$163
Email$27
Direct / none$22
X$19
ChatGPT$10
TikTok · Reddit · Google$0

Product Hunt was almost half the money. The three biggest countries by visitors were the United States (810), India (378) and Turkey (302); the United Kingdom and Germany followed at just under 200 each.

Pages by visitors
pagevisitors
/3,700
/vs/ngrok33
/refunds27
/test-localhost-on-phone24
/ai-coding-agents17
/vs/localcan16

What the numbers say

Traffic is not audience. 436 of those visitors arrived inside TikTok's in-app browser and bought nothing — a Mac developer tool does not sell to a phone that can't run it, however good the video. A 93% bounce and a 40-second median session are what that looks like in aggregate. The visitors who mattered came from places where people were already looking for a fix.

Every extra step is a cliff. 117 people opened checkout and 19 finished — an 84% drop on the payment page itself, which I don't control. What I do control is how many steps precede it. For one day I tried routing every button through the pricing card first, on the theory that seeing the refund promise and the delivery line would help. Four people reached the card; zero continued. Every button opens the checkout directly again.

People check the exit before they enter. The refund policy is the third-most-read page on the site, ahead of every feature page. The 14-day no-questions refund line sits next to the Buy buttons on purpose, and the numbers say leave it there.

“Why not X?” deserves its own URL. The most-read page after the homepage is Localdock vs ngrok. That's the same question the best launch comment asked. If a comparison is the first thing your buyer wants, writing it yourself — including where the other tool wins — beats letting them assemble it from your pricing page.

Answer engines are a channel now. ChatGPT appears in the revenue table: a visitor arrived from a ChatGPT answer and bought. In the same window the answer-engine crawlers (ChatGPT's, Claude's, Gemini's) fetched the site 314 times, Google's search referrals bought nothing yet, and robots.txt welcomes every one of them on purpose. A dozen pages of plain, specific, honestly dated text is what they had to read; I'm not sure a video would have helped.

Your own Mac is a test device. The Intel bug survived three weeks of releases because every machine that ran CI and every machine I tested on was Apple silicon. The fix shipped the same day; the release pipeline now refuses to publish a binary that isn't universal. A checklist item costs nothing until it is the one you didn't write down.

What I'd tell someone launching next week

Get Localdock

If you run dev servers on a Mac — especially several at once, especially ones an agent started — Localdock gives each of them a name that doesn't move. One-time purchase, no subscription, no account, and version 1 updates included. Not for you? There's a 14-day refund, no reason needed.

Get Localdock

Questions, or a launch story of your own? I'm @dmytrovirych on X, and the blog is where the next numbers will go.