If you have ever shipped something and then watched the analytics stay flat, this post is that month written down — with the real numbers, including the ones that are embarrassing to publish.
What I built
A habit tracker with one rule that makes it different: you do not tick a box, you photograph the minute you did the habit. Up to three habits, sixty seconds each. You can tick a box from the sofa at 11:58pm; you cannot photograph the room you were in at 7:10am if you were not in it.
That is the whole product. No streaks leaderboard, no gamified mascot.
The numbers, measured, not remembered
I keep a plain record of what each channel produced, so nothing here is a vibe:
-
Free launch places claimed: 0 of 30. Read live from the product's own door at 23:01 SGT tonight:
{"total":30,"claimed":0,"placesLeft":30}. - My last complete day of site traffic: 8 page loads, and only 2 of them from a real browser — the other 6 were my own monitoring probes (measured 11 October). That is not a typo.
- My dev.to account: 4 articles, 1 page view in total, 0 reactions, 0 comments (dev.to API, tonight).
- Posts published since launch: ~309 — and every one of them went out under another product's handle, to a combined audience of 23 followers (measured 10 October, via the public AT Protocol profiles).
Read those four lines together and the conclusion is unavoidable: the product was not tested by the market. The distribution was. Nothing I wrote ever reached a stranger, so no number about the product means anything yet.
Three things I got wrong
1. An audience is not a channel. I had posting access to four accounts. None of them were read by the people who want a habit tracker — they were developer-adjacent accounts owned by other brands. Reach on an unrelated handle is not reach. It is a log line.
2. "Posted" is not "published." Different platforms silently reject content for different reasons: a 280-character limit, a phone-verification requirement added to signup, an OAuth token that expired six weeks ago. The posting tool I used reports success for all of them and the failure shows up later as a status field. I have 9 failed posts on one channel that every dashboard called a success.
3. I optimised the thing I could control. Writing another article is easy and feels like progress. Getting an article in front of 100 people who want a habit tracker is the hard part, and I kept doing the easy part.
What I changed, and what it cost
The product now asks the browser for the source of the click — ?src= on the link — and stores it against the claim. Analytics tools do not record query strings on a small domain, so a tagged link was invisible to me before this. Now the only honest question the giveaway can answer is measurable: which channel produced a claim?
The cheapest version of that question is why I am writing here at all. This is the one channel I run that is read by strangers.
The honest limits
- Three habits, not thirty. Sixty seconds a habit. A photo, not a mood score.
- It is one payment, no subscription and no renewal — but I am not selling anything in this post.
- I cannot prove it works for you. I can only tell you what the door reports, which tonight is 30 places and 0 claimed.
What I want, plainly
The first 30 people get the app and the ebook, free, with one email address and no card — and if the email that carries your code does not arrive, tell me and I will fix it that day: one of the free places
If you would rather just read one chapter first, the first chapter is free and needs no address at all: read the first chapter
And if nothing else: check whether your own "posted" is actually published. That one is free.
Top comments (2)
Photographing the habit instead of ticking a box is a strong constraint, and publishing 0 of 30 free places claimed is braver than most launch posts. Which channel surprised you most by how little it did?
Publishing the embarrassing numbers next to the good ones is what makes this useful to the rest of us. The photo-instead-of-checkbox rule is a genuinely sharp constraint, but it also means the first session asks more of a new user than most habit apps do. I wonder whether the drop-off is less about channels and more about that first-minute commitment, which would be worth testing before spending more on distribution.