The demonstration that used to need a phone call
Two audiences. One method. One of them unreachable.
The same tool, on the same day, over the same free public sources, pointed at two different groups of people. For one of them the phrases those people would actually type returned nothing at all. For the other they returned 14,943.
Every figure below is computed from the two measurement files, and this page is regenerated from them — so a re-run that changed an answer would change what you are reading, and the qualifiers travel with the numbers rather than being left off in public.
01 / The pair
One audience the method reaches, one it does not
This is the whole argument for why the measurement is free: the answer is not always yes, and nobody should have to pay to find that out.
A niche trade
not reachableCalifornia balcony-inspection providers
0verbatim matches, anywhere in Hacker News
238 loose matches — the same words in any order, which is noise
2 of 11 candidate rooms publish enough about themselves to be ranked at all
19 quoted complaints pulled out for a person to score
Founders with no distribution
reachableThe audience this page is written for
14,943verbatim matches for phrases those people type
85% of it comes from just two phrases broad enough that they cannot point at a thread: product market fit and self-promotion
2,237 from the other 11 phrases, which are the useful ones — the narrowest, banned for self-promotion, returned 9 in all of Hacker News
9 of 15 candidate rooms publish enough about themselves to be ranked at all
139 quoted complaints pulled out for a person to score
Both runs used only free, unauthenticated sources — Hacker News, Stack Exchange, and the activity numbers that independent Discourse forums publish about themselves. No Reddit, no logged-in scraping, no purchased lists. The phrases were matched as exact strings, in the words those people would type to each other, rather than as search-engine keywords.
The niche trade is a real product of ours with a real target customer, and the finding that its customers are not readable in public English text is the most useful thing this tool has ever told us. It is also why this page exists instead of a testimonial.
02 / Every phrase
Including the ones that failed
A tool that shows you only its hits is not measuring anything. Both phrase lists are here in full, with what each returned and whether it survived.
| Phrase | Exact | Loose | Stack Exchange |
|---|---|---|---|
| balcony inspection | 0 | 60 | 4 |
| SB 326 inspection | 0 | 0 | 0 |
| SB 721 balcony | 0 | 0 | 0 |
| dry rot balcony | 0 | 4 | 0 |
| deck inspection report | 0 | 27 | 3 |
| structural inspection software | 0 | 147 | 0 |
| HOA balcony inspection cost | 0 | 0 | 0 |
| Phrase | Exact | Last 3y | Loose | Specificity | Stack Exchange | Verdict |
|---|---|---|---|---|---|---|
| first paying customer | 122 | 25 | 4,174 | 2.9% | 6 | counted |
| first 100 users | 127 | 44 | 4,593 | 2.8% | 4 | counted |
| find early adopters | 32 | 5 | 1,279 | 2.5% | 1 | counted |
| product market fit | 6,445 | 1,459 | 9,711 | 66.4% | 1 | counted |
| banned for self-promotion | 9 | 3 | 101 | 8.9% | 0 | counted |
| self-promotion | 6,261 | 1,445 | 7,662 | 81.7% | 4 | counted |
| customer discovery | 303 | 58 | 6,990 | 4.3% | 0 | counted |
| cold outreach | 403 | 207 | 1,517 | 26.6% | 1 | counted |
| cold email | 854 | 234 | 58,588 | 1.5% | 6 | too generic |
| nobody signed up | 34 | 9 | 1,126 | 3.0% | 2 | counted |
| talk to your customers | 172 | 23 | 6,527 | 2.6% | 5 | counted |
| validate the idea | 367 | 76 | 8,708 | 4.2% | 5 | counted |
| launched on Product Hunt | 112 | 50 | 1,192 | 9.4% | 0 | counted |
| build it and they will come | 556 | 135 | 11,332 | 4.9% | 4 | counted |
| distribution is the hard part | 2 | 1 | 2,125 | 0.1% | 0 | too generic |
| marketing my side project | 1 | 0 | 899 | 0.1% | 4 | too generic |
| how do I get users | 9 | 0 | 26,996 | 0.0% | 6 | too generic |
| no distribution | 303 | 64 | 36,989 | 0.8% | 3 | too generic |
What exact, loose and specificity mean — and the weakness in all three
Exact is the phrase, verbatim, in a comment. Loose is the same words in any arrangement, which is mostly noise. Specificity is exact ÷ loose: below 2% the phrase is disqualified as too generic and its hits are thrown away rather than banked, which is what happened to 5 of 18 phrases in the second run and took its total from 16,112 down to 14,943.
The weakness, stated rather than hidden. Specificity measures whether a phrase's words hang together, not whether it is on topic — so a phrase can be cohesive, clear the floor, and still be far too broad to point at a single thread. That is exactly what 85% of the second run's total is: two phrases like that. The narrow phrases returned tens to hundreds, and those are the ones worth acting on. Which is why the tool hands over quotes for a person to read, and why the paid work is a set of questions to ask rather than a pile of links.
03 / The rooms
Ranked where they could be, named where they could not
Thousands of independent Discourse forums publish their own activity numbers, which is what makes them rankable without an API key or an account. Plenty of the highest-intent rooms do not — and a room that cannot be measured is a finding, not a row to quietly drop from the list.
| Room | Topics / 30d | Posts / 30d | Active / 30d | Self-promotion rule |
|---|---|---|---|---|
| community.openai.com | 2,336 | 18,575 | 13,107 | its own rule |
| community.n8n.io | 743 | 10,057 | 6,798 | stock text |
| forum.obsidian.md | 330 | 2,203 | 3,205 | stock text |
| forum.bubble.io | 139 | 1,945 | 1,281 | its own rule |
| community.retool.com | 81 | 804 | 356 | stock text |
| discuss.streamlit.io | 79 | 473 | 1,031 | nothing written |
| community.glideapps.com | 36 | 240 | 381 | stock text |
| community.weweb.io | 27 | 172 | 150 | stock text |
| community.softr.io | 22 | 146 | 201 | stock text |
| forum.webflow.com | answered, and publishes nothing about itself (200) | a hand pass, or nothing | ||
| community.flutterflow.io | no activity endpoint (404) — not Discourse, or not public | a hand pass, or nothing | ||
| community.cloudflare.com | refused an unauthenticated reader (403) | a hand pass, or nothing | ||
| forum.indiehackers.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
| community.microconf.com | no activity endpoint (404) — not Discourse, or not public | a hand pass, or nothing | ||
| community.lennysnewsletter.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
| Room | Topics / 30d | Posts / 30d | Active / 30d | Self-promotion rule |
|---|---|---|---|---|
| discourse.mcneel.com | 563 | 5,385 | 4,038 | stock text |
| discourse.ladybug.tools | 20 | 171 | 179 | stock text |
| community.osarch.org | no activity endpoint (404) — not Discourse, or not public | a hand pass, or nothing | ||
| forum.buildingscience.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
| community.finehomebuilding.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
| forum.jlconline.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
| community.contractortalk.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
| www.diychatroom.com | no activity endpoint (404) — not Discourse, or not public | a hand pass, or nothing | ||
| forum.structuralengineering.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
| community.hoatalk.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
| forum.deckexpo.com | did not resolve, or refused the connection | a hand pass, or nothing | ||
Self-promotion rule is that forum's own written guidelines, fetched and compared against the stock Discourse text. Stock text means the page is boilerplate, so the real tolerance is whatever the moderators do and is written down nowhere — worth knowing before you post, and the opposite of what a list of links would tell you.
04 / The raw material
The first rows of the file, unpicked
Not our favourite quotes. Rows one to three of the reachable run's candidate list, in file order, so you can see what the tool actually hands a person.
I recently got my first paying customer too from someone who searched for "lightweight tool to announce product updates" - putting this out before anyone bashes out vibe coding products :)
Hacker News, 2026-07-24 · source
When I started using Claude Code I kept having to restart my whole project. It kept turning into a mess. So I stepped away from the screen, sat down the old fashioned way, and wrote everything out, every screen, every feature, in the order it needed to be built. When I looked back up at my computer I realized, I just built a scaffold. So I had Claude build me one. Scaffold interviews you about your app idea, generates a free build plan, then produces a packet of sequenced Claude Code prompts, one per screen or feature, in the exact order you should build them, scoped to specific files. Each phase lays out a different section of your app. It's not trying to build it for you. It's just organizing your ideas so you can focus on the actual work. Free to plan. $15 for the prompt packet. runscaffold.com solo built, first paying customer day one, curious what HN thinks.
Hacker News, 2026-05-21 · source
I'm building Kardo (https://kardo.cards/), AI tutor that listens to your calls with a teacher and creates cards for repetition.I live in Lisbon and I've been learning Portuguese with a tutor since 2022. After every lesson I'd sit down and make flashcards from my notes and screenshots. Spaced repetition works, but making the cards took manual effort each time. Most days I just didn't do it. So I have automated that process.The flow: you invite the Kardo bot to your call, it records and transcribes (Recall.ai + Deepgram Nova 3), then GPT-4o extracts vocabulary from the transcript and generates cards. You review them with spaced repetition — we use FSRS, which is the best open algorithm I could find. If you already use Anki or Mochi Cards, there's export.You can also throw in YouTube videos, podcasts, articles, PDFs — not just live lessons.Tech: built entirely with Claude Code. React + Vite frontend, Bun + Elysia backend, Convex for the database, Railway for hosting.We got 50 beta users through Telegram, and just landed our first paying customer. Now we're trying to figure out distribution — tutors seem like the obvious channel because one tutor recommends you to all their students, but reaching them with zero marketing budget is the hard part.Curious if anyone here learns a language with a tutor and what your review workflow looks like.
Hacker News, 2026-04-13 · source
And here is row one of the unreachable run, where every one of the 238 matches was a loose one. It is not picked to look bad; it is simply first, and it is what a loose match is worth:
Preferably on your chest at 5 am. At least that's what mine like to do, because they feel a little bit hungry or have seen a bird and want to get out on the balcony for further inspection.
Hacker News (loose match), 2022-02-23 · source
Some candidates are on the nose and some are that. Telling them apart is a person's job: in the workspace each one is marked usable or not, and the precision figure comes from those marks. Neither of these two runs has been scored yet — 19 and 139 quotes are sitting there waiting for it. We would rather say that than print a precision figure nobody measured.
05 / What this page is not
Two of ours, and never one of yours
Both audiences here are our own. One is a product of ours; the other is the audience for this product. A client's run is never published on this page, at any price, comped or paid — every other measurement this tool has produced sits behind a sign-in gate that refuses it to anyone the client is not.
A negative verdict is a claim about a phrase list until it has been run twice. A third audience came back unreachable on 22 exact matches, and then sixteen phrases rewritten by hand — same company, same claims, same sources — returned 1,328. The first list had missed the plainest English form of that company's own central claim. So the verdict is free, and it is delivered with the phrase list attached so you can see what was asked.
Nothing here posts on anybody's behalf. No generated comments, no aged accounts, no personas. You post, from your account, in your name, or you don't.
06 / Next
Your audience, measured, for nothing
Send a deck or write a paragraph about who you are building for. You get the same tables above for your own audience — the phrases, the rooms, their rules, the quoted complaints — and if it comes back like the first run, you will know that before you have paid anybody anything.