6
27 Comments

118 visitors, 0 signups, and the two bugs I only found by digging

Three weeks ago I launched Postmint, which turns one sentence into a finished social graphic in your brand colours. Eight days in: about 118 unique visitors, zero signups that weren't me. Here's the whole autopsy, because the posts that helped me most were the ones with real numbers in them.

Why I built it

My first prototype made marketing graphics straight from a text prompt. I generated twenty, looked at them, and wouldn't have posted one. You know the look. Half-empty canvas, a grey gradient doing nothing, a fake button painted on that leads nowhere, a number the model invented. Technically an image. Also obviously slop, and posting that damages a brand worse than posting nothing does.

So I deleted it and spent my time on the boring part.

The boring part, which turned out to be the interesting part

The model never touches pixels. It writes an HTML document, a real headless browser renders it, and then two things look at the result.

The browser measures. It walks the rendered DOM and reports eight faults it can prove:

  • text past the canvas edge,
  • text clipped by an ancestor that hides overflow,
  • a box too small for its own text,
  • text painted over by an opaque shape,
  • text overlapping other text,
  • contrast under the WCAG minimum against whatever is actually painted behind the glyphs,
  • text sitting in a format's reserved strips (the bands Instagram covers with its own UI on a Story),
  • word count over a density ceiling. Every one comes back with an element reference and a number attached. Nothing in there is a judgement call.

Then a vision pass looks at the screenshot and grades it against the brief and the reference style. That covers what no measurement reaches: whether the composition is empty, whether the thing reads like the kind of post somebody actually asked for.

Both feed a revise step, and the loop runs a couple of rounds before you see anything. If a render or a model call dies mid-loop it hands back the best version it has so far, so the loop can only ever improve a design that already works.

One thing surprised me. Asking for hex values isn't enough on its own. "Use these colours" gets drifted away from often enough that you can't ship on trust, so the critique pass that grades the layout also checks the palette against the brand's stored values and sends the design back when it wanders. That's a review, and a review is weaker than a deterministic recolour pass. I'd rather say so than claim a pass I haven't written.

The launch, honestly

  • ~118 unique visitors over 8 days. Half DE, half US.
  • About 2 of them reached the register page. Roughly 1.7%.
  • Zero external signups.
  • 80% logged as "Direct", because I tagged exactly nothing.
  • My Show HN got flagged in 25 minutes. Baity title, AI-fatigued crowd, cold account, and a link straight into a signup wall. Entirely deserved.

The two bugs

The landing page was the first one. Visitors from social bounced in about five seconds, because the first screen explained the product where it should have shown what the product makes. Nobody scrolled far enough to find out.

The second one is worse. My analytics never recorded a single signup: the goal wasn't firing, lost across a redirect. So the one number I actually cared about, signup to first generation, was structurally unmeasurable for the whole launch. I spent that week reading a dashboard that could not have shown me a signup if there had been one.

Which is why I'll push this on anyone about to launch. Register a throwaway account in an incognito window and confirm every funnel event fires. Five minutes. I skipped it and burned my only launch spike.

What changed since

  • Fixed the goal, cut a release, verified an incognito signup fires the events end to end. The funnel records now.
  • Rebuilt the landing's first screen around output.
  • Killed the blank canvas. A new user used to land on an empty brief box and get asked to invent the one sentence they don't yet know the shape of. It's prefilled with an example now, so the first render is a button press.
  • Tagged every channel link, so this time I can tell where people came from.

Where I am now

One real signup since, on day 18, someone I never spoke to. They generated an image without anyone walking them through it. That's the entire customer-side data set: n=1, still zero paying.

The gallery is here if you want to poke at it, no signup needed to look: https://postmint.de/ih

And the question I actually want answered. The product is German-first and the buyers I have in mind are small businesses and shops. But the two most engaged audiences in my launch data were from IndieHackers and Product Hunt, English and technical, averaging 16 and 49 minutes a session. Twice now, sampled independently, and across three weeks that audience has converted zero times. Is that real interest worth chasing, or builders admiring the machinery who will never buy? I can't tell from here, and it changes what I build next.

on August 4, 2026
  1. 2

    "This is the most honest launch post I've read in a while. The part about the analytics goal not firing hits hard — I've been there too, staring at a dashboard that couldn't show me the truth.

    I'm building Rallynex (AI workspace for founders building in public), and I'm in a similar spot: getting visitors but no conversions yet.

    One thing that stood out: you fixed the bugs and got one real signup. That's proof the product works. Now it's about getting it in front of the right people.

    On your question — I think builders admiring the machinery is real, but they might also become your best advocates if the product solves their problem. What's your plan for reaching small businesses directly?"

    1. 1

      As you said the product works, I also use it to generate my marketing images directly to a. dogfeed me and validate different use cases and b. combine outreach with visiblity.
      For reaching SMBs going forward I leverage my network I already have via outreach. And more broadly working on SEO tasks which are not only focused on the product but providing value even if the product is not for you specifically.

      1. 1

        "That's a smart approach — using your own product to generate marketing images while validating use cases at the same time. Dogfooding + outreach in one move.

        On the SEO angle — what kind of content are you creating that provides value beyond the product? I'm trying to figure that out for Rallynex too."

  2. 2

    The 16- and 49-minute sessions alongside zero conversions are the most interesting numbers here.

    They show attention, but they don’t yet tell you what kind of attention it is. That distinction matters a lot before letting those sessions influence what you build next.

    1. 1

      No it should only trigger a review, if there is something wrong, in my opinion. Just validate that those sessions were not someone trying to convert but being held back.
      That I can almost certainly rule out given the analytics data

      1. 1

        That makes sense. The important distinction is separating meaningful intent signals from activity that only looks interesting in isolation.

  3. 1

    Your broken analytics goal is a good reminder that time on page is not the same as intent. For Speechara.Ai, a long session can still be a miss if the user never gets one useful transcript or translation. We now separate first useful outcome from return usage and test the full path in an incognito window before trusting the dashboard. We currently offer free access with no card required, so we are watching first useful outcome closely instead of treating signup as the finish line. Did the repaired event change what you decided to build, or mostly confirm the landing page problem?

  4. 1

    I stumbled onto Postmint and it stood out to me. I do live product reviews on video. I'd like to do one for Postmint at this stage. The feedback is genuine. I say what I actually think. Would that be useful for you and we'll get it on the calendar.

  5. 1

    The dead analytics goal is the scariest kind of bug — it doesn't error, it just reports zero, and zero looks plausible when you're small. I had a similar wake-up: spent months writing blog content for one of my products, finally wired up first-touch attribution from traffic event to payment, and found the homepage + tool pages drove 91% of revenue while the whole blog section had produced almost nothing. Every decision before that measurement was based on vibes.

    Also, your Show HN being flagged in 25 minutes — mine died the same way this week (new account plus a link). Worth knowing: you can email the HN moderators at the contact address in their footer with your post link, and they do read those and un-kill legitimate Show HNs. Two minutes before you write the channel off.

  6. 1

    reading a dashboard that structurally couldn't show a signup for a whole week is brutal. and 49 minute sessions from people who never convert is usually builders enjoying the machinery, not buyers.

  7. 1

    I like how the landing page immediately shows what the product is all about, that's for sure a win. Also showing the prompt that was used is really useful. In my case with MidJourney my issue was reaching the perfect prompt to get what I need, which is not an easy task tbh.

  8. 1

    Answering from a weaker position than yours: my own experiment has $0 in sales and close to no reach, so this is a reading of your numbers, not advice from someone who solved it.

    Your closing question treats this as a choice between two audiences. Before that, I'd check whether the two zeros are the same kind of measurement.

    The IH/PH zero is measured — those people arrived, stayed 16 and 49 minutes, didn't buy. The German one is softer than it looks. About half your 118 were DE, so that side isn't untouched. But DE is a location, not the buyer you described; a shop owner and a German developer reading your render loop log identically. And whoever they were, they landed on the first version of the page — the one that explained the product instead of showing it — and passed a signup goal that wasn't firing. Visited, not tested.

    Which is the part I'd date before deciding anything. You wrote the goal was lost across a redirect and that the number was structurally unmeasurable for the whole launch. The three-week no-conversion figure you're weighing sits partly inside that window. Since the fix you have day 18, n=1, someone you never spoke to and who generated something unaided. That's the first row a working instrument produced.

    So the decision I'd make this week isn't builders versus buyers. It's: recount those three weeks using only post-fix days, and see how many days of trustworthy data you actually own. If that number is as small as it looks from here, neither audience has earned a vote in what you build next — and GregoryScottHenson's twenty German shop owners with a price attached stops being a pivot and becomes the cheapest way to get row two.

  9. 1

    The audience paradox you're describing is the real diagnostic tool here. High engagement from builders, zero conversions - that's not a marketing problem, it's a customer problem. Builders admiring the architecture isn't the same as a shop owner who needs this urgently. The fact that you can measure that difference is valuable. Most founders don't look close enough to see the gap. What if the next move isn't fixing the product for technical audiences, but finding a single shop owner who does need this and understanding what their actual problem is? That's your real n=1 that matters.

  10. 1

    The German-first + small business angle makes the IH/PH sessions uninterpretable — not just unlikely to convert, but drawn from a fundamentally different population than your actual buyer.

    On the raw numbers: cold traffic signup conversion typically runs 0.5–1% even with the right audience. At 118 visitors, the expected range is literally 0–2 signups. Zero is inside that range — you can't distinguish "funnel broken," "wrong 118 people," or "working funnel, not enough of the right people" from this sample size alone. You'd need roughly 500–1000 of the right visitors before the conversion rate becomes legible.

    I hit the same pattern earlier this year: two weeks of content, technically sound execution, zero revenue from the people I was actually targeting. The audience engaged, the mechanics worked fine — but the distribution channel and the buyer were completely different populations. It took me a while to stop reading engagement as a purchase signal.

    The question I'd focus on: can you get 100 German shop owners to that page? Local Facebook groups, German business directories, cold outreach to shops in your target sector. That cohort gives you data the current traffic structurally can't.

    The one organic signup is still the most interesting data point you have. Did they say anything about how they found it?

  11. 1

    This is such a detailed and honest write-up, Tobias! The DOM validation approach for layout defects (contrast, overflow, overlapping) is really clever engineering. On your question about the high-engagement visitors: developers and builders love digging into how things work under the hood, but SMB owners usually buy on immediate utility and simplicity. Moving the landing page focus to live output showcase over text prompts sounds like the right pivot. Have you thought about testing localized outreach directly to German shop owners or agency founders to see if direct cold demo conversions differ from feed traffic?

  12. 1

    The gap between building something that technically works and something that actually converts is brutal. Most people would have just blamed the marketing or the copy, but digging into the session recordings to find those specific friction points is exactly what's needed at this stage. It is common to be blind to your own onboarding flow because you already know where the buttons are supposed to be. If you have not already, setting up a simple event tracker on that sign-up button might be a good next step to see exactly where people are dropping off now that the bugs are cleared. It is a solid exercise in rigorous debugging over guessing.

  13. 1

    I would separate a useful distribution audience from the buyer segment. Indie Hackers can provide technical feedback and links while still being a terrible market for the product; long sessions on an engineering post do not justify changing the roadmap or language. Test three German shop verticals with examples that look like their real promotions, then measure first render, download, repeat use, and willingness to prepay. On instrumentation, give the browser and server events one correlation ID and run the whole synthetic funnel after every deploy so a redirect cannot silently break the metric again.

  14. 1

    at ~15 uniques a day, neither bug "killed" signups in a way you can prove. zero out of 118 is also what you'd see with a perfect funnel and the wrong 118 people, so i'd hold the bug story loosely until you have step counts.

    what i'd want from the autopsy is the drop point, not the defect: view -> first generate -> render finishes -> signup prompt. one number per step. if people never hit generate, the render QA work was never the constraint, the promise on the page was.

    the cheap version is a fresh browser on a phone you never used for dev, do the flow cold, and time how long you sit staring at the render before anything moves. usually that pause is the whole thing.

  15. 1

    The broken signup event is the worst finding, because it turns every later funnel choice into guesswork. While building DictaFlow, I had one activity query show 719 weekly users and another show 209 because they used different definitions, so I now put the event definition next to every headline metric. Your incognito signup test is a good launch rule, and I would add one server-side event for the first successful generation so redirects cannot hide it again. Are you tracking the render result on the backend now, or are you still relying on the browser event?

  16. 1

    Sessions of 16 and 49 minutes with zero conversions across three weeks is the signature of builders reading your engineering, not buyers evaluating a purchase. I run a social tool aimed at small businesses and the split is stark: technical readers will happily go through every word about your render loop and never pay, while a shop owner reads none of it and converts off one gallery of graphics that look like their own industry. Cheapest way to settle it is to stop measuring interest and ask for money: put a price and a checkout link in front of twenty German shop owners this week, because attention that costs the visitor nothing predicts almost nothing, and n=1 in three weeks is a distribution problem rather than a product one.

  17. 1

    The analytics bug hurts 😅

    Honestly, 16–49 minute sessions sound like developers trying to reverse engineer how you built it rather than potential customers. We've all been that guy.

    At least you got one real signup now. That's already better than "only my mom tested it" stage 😂

  18. 1

    Those 16- and 49-minute sessions sound like people studying the mechanism, not evidence that the product should pivot toward builders. Before changing the positioning, I’d run a deliberately small test with 5–10 German businesses: make one real post for each using their brand, then ask them to regenerate or edit it themselves and pay for the next batch. That gives you an outcome signal—usable assets plus willingness to pay—while the gallery analytics can remain what they are: interesting but ambiguous.

  19. 1

    The most valuable part here isn't the product, it's publishing the real numbers and failures. That feedback loop is much harder to fake than growth metrics.

  20. 1

    Those long sessions may be builders reverse-engineering the implementation. Useful attention, but not necessarily demand. I’d put two actions on the gallery — “make this in my brand” and “show me how it works” — then compare clicks by source before changing the product. That separates a job-to-be-done from curiosity much more cleanly than session length.

    1. 1

      Well, thats something no one can prevent

  21. 1

    The IH/Product Hunt attention sounds useful, but I would not treat it as buyer validation yet. I'd split the next test into two paths: one German-small-business page with 3-5 concrete use cases and one builder-facing page that asks for a totally different action, like feedback or template requests. If the technical audience keeps watching but never takes a painful action, that is probably admiration, not demand.

    1. 1

      Thanks for your insight.
      I will try to seperate the two audiences and get a better feel for intent and if the product really solves their pain points or just looking from the outside

Trending on Indie Hackers
I built a launch coach after my own product launch got 11 upvotes and 3 signups User Avatar 95 comments 700 downloads and stuck — five months later... User Avatar 71 comments I told a founder to get listed on the review sites. Her report showed AI was citing her competitors' homepages. User Avatar 52 comments Most directories forget you exist after you list. We're trying something different. User Avatar 36 comments I’m building a Product Hunt alternative for indie makers — what would make you actually use it? User Avatar 33 comments Built TermsGuard to explain contracts in plain English — looking for feedback User Avatar 29 comments