Skip to content
DnsLister Forum

Where domain hunters compare notes

Part three. My build log lied about a number for five months, and this week a real person paid me and I still lost them in 68 minutes.

Follow-up to my post here eight days ago about written status being the most dangerous artifact in a solo project. It kept going, and this time it cost me something real.

THE SALE

Someone found SocialMate with zero marketing, evaluated it, and bought Pro Annual on Friday. 55 dollars and 20 cents. First revenue in six months of building.

Forty minutes later they tried to connect a second Mastodon account and the app told them their plan did not allow it. They tried four times. They had already paid for exactly that.

The plan is stored in two tables. The Stripe webhook writes one. Around twenty enforcement checks read the other, which was NULL for 83 of 86 rows because it had only ever been set by hand in SQL. So the app took the money, recorded them as Pro, and enforced free limits on them for their entire first session.

They cancelled 68 minutes after paying. I do not blame them.

I emailed them personally and put 2,000 permanent credits on the account. The payout still lands September 2. So does the churn.

THE NUMBER I HAD BEEN REPORTING

I have been telling this subreddit that one user had ever published a post. I excluded my admin account from that number back in March and thought that made me rigorous.

I own four accounts. The single publisher was one of mine, seven Bluesky posts over four days in March, then nothing. Excluding all four, the real figure is zero. Nobody outside my own logins has ever published anything.

Five months of a number that felt honest because I had done one obvious subtraction and stopped.

THEN I FOUND WHY

The function that saves everything at the end of onboarding, the profile name, the completion flag, the goal, the starter post, the bonus credits, was wired to the secondary button on the final screen. The large primary button directly above it was a plain navigation link.

Press the obvious button and you leave having saved nothing.

onboarding_completed was true for 5 accounts out of 103. The goal field, captured on step one and written only in that function, existed on 2.

Ninety-eight people reached the end of setup and none of it was kept.

THE ONE THAT ACTUALLY STUNG

Fifty-three places in my codebase send email. Two of them set a reply-to address. The domain has no mailbox, its MX points at inbound infrastructure with nothing handling it.

Every reply anyone has ever sent me was discarded. I found two from real users sitting in a dashboard I had never opened, one of them nine days old.

People wrote to me and I never saw it. That is not a bug I would have found by reading code.

HOW I ACTUALLY FOUND ALL OF IT

I walked the product like a stranger, then queried the database to see whether anything happened. Twice I shipped a fix, walked it again, and found it still saved nothing.

The audits I built two weeks ago were clean the whole time. They catch phantom columns and impossible database constraints. They cannot catch a function nothing calls, a button that is a link, or an email nobody can reply to.

WHERE IT STANDS

104 accounts and 1,530 posts published, up from 90 and 1,323 eight days ago.

2,507 visitors in the last 30 days, down 5 percent. 88 percent bounce. Singapore 38 percent, China 28 percent, United States 19 percent. US share was 15 percent last time.

Zero external users who have ever published. One sale, cancelled.

WHAT I WOULD TELL PAST ME, AGAIN

Last time I said a document saying something is done is not evidence. I want to sharpen that.

An exclusion you made once is not still correct. I subtracted one account in March and never revisited it as I created three more. The number stayed technically defensible and quietly became false.

If you have a metric with a carve-out in it, go re-derive the carve-out today. Mine had rotted into a lie without anyone touching it.

Genuinely curious whether anyone else has a filtered metric they have not re-checked since the day they wrote the filter. I suspect that is more common than the counter thing from last time.

Source: r/buildinpublic · by /u/InterestingRun7594

Leave a Reply

Your email address will not be published. Required fields are marked *