I run a small family of free, no-login tool sites — eight of them are listed on my /tools page — and every one of them lives or dies on search traffic. Somewhere around the fifth site I figured out the expensive truth: the real cost of a new site isn't the build, it's committing to the idea before the build. Register a domain on a guess and you're quietly betting three months of work on a hunch. This post is my full validation workflow — every gate a candidate idea has to pass between "interesting word" and "domain registered" — plus the trap that nearly sank one of my sites anyway.
Keyword tools and search behavior change fast. Every number here is a snapshot from early October 2026 — treat this as a workflow demo, not a forever-true dataset.
Gate one: combine word roots into a candidate pool before you have an "idea"
The starting point is never a flash of inspiration. It's a collision of words. My fixed routine: put together a pool of roots — tool words, scenario words, audience words, roughly fifty of them — and combine them into a few hundred candidate phrases. This stage is deliberately unfiltered. The only goal is to build a pool large enough that the next stage, the data, has something real to vote on.
Gate two: the data checks three things — competition, volume, and whether anyone pays
Every candidate phrase goes into a keyword database (I use Semrush). I look at exactly three numbers:
- Keyword difficulty low enough. A new domain has no authority. A word with high KD isn't an opportunity, it's a headstone.
- Volume large enough. Too small and it can't carry a standalone site — at best it earns one page on a site I already run.
- CPC above zero. This one gets ignored a lot, and it's the most honest signal in the set. Cost-per-click is direct evidence that somebody pays for that traffic. Advertisers spending money means real demand with a real business behind it; a candidate where every CPC reads zero is usually people searching for fun.
A candidate that fails any of the three is deleted. No appeal.
For a live example, the phrase-match probe I ran for this very topic this morning returned eight keywords in the "niche research" family: 110 to 720 monthly searches each, difficulties between 18 and 33, mostly zero CPC — a topic people clearly read about, but one nobody advertises on. Fine for a blog post. Useless as a business.
Gate three: zero competitors is a graveyard, not an opening
Candidates that clear the data gate get a manual look at the actual search results. This judgment is counterintuitive:
- No competitors at all? Be afraid, not happy. The likely story isn't that nobody thought of it — it's that everyone who did is dead. Demand that weak doesn't support a business.
- One or two competitors whose pages haven't been touched in years? That's the green light. Demand is proven — someone is alive serving it — and the reigning champion has stopped trying. A new site with a better page can pry the position loose.
An old, unmaintained number-one ranking is my favorite signal in this whole workflow.
Gate four: communities hold pain that has no search volume yet
Keyword tools can only see demand that already shows up as searches. So I also hang out where the target audience complains — Reddit boards, niche forums — and read how people describe their problems and advise each other. Plenty of real pain is too small or too new to appear in any tool, but you can watch it happen in threads. Those complaints are free research, and they double as a side check that the audience I'm targeting is genuinely annoyed by the thing I want to build.
Gate five: the domain is the last gate, never the first
Only after a candidate passes word pool, data, competitor shape, and community pain do I register a domain. The order is the whole point. Once a domain exists, sunk cost kicks in and I start rationalizing. Keeping registration last keeps abandoning a candidate free — any failed gate means delete the row and move on, at zero cost.
The trap that got me anyway: change the keywords, and the competitors vanish
This workflow wasn't born complete. When I built my seating-chart tool, SortaSeat, the competitor check on the words we'd chosen came back clean, and we green-lit the project. Later we found out the space already had several popular, heavyweight solutions. They simply ranked under a different set of keywords — the words we'd validated with weren't the words normal people searched, so the incumbents were invisible in our results.
The lesson is now written into the workflow in bold: never run the competitor check with only your own chosen words. Search again from different audience perspectives with different phrasing, and read who actually sits on the first page, how old their sites are, and whether anything still gets updated. Search-word bias is the easiest way to fool yourself in this entire process — I know, because it fooled me.
One more habit: every site gets its own blog
The newest addition to the routine: for every tool site, I spin up a separate blog dedicated to that brand's topic. The tool site catches search traffic; the blog tells the brand's story and advertises the tool in long form — each feeding the other. How that plays out in practice is a post of its own, coming next.
What I'd tell a past me
None of these gates is glamorous, and every one of them is two orders of magnitude cheaper than writing code. Word pool, three data checks, competitor shape, community pain, domain last — any single gate can kill a candidate, and a killed candidate is not a failure, it's three months saved. The tool numbers are snapshots; the workflow is the asset.
I wrote about the demand side of this system in my post on finding keyword gaps across my existing sites — the matrix finds where my current family can grow. This workflow decides which new directions get to exist at all.
Originally published on my blog: https://javaeye.dev/blog/niche-research-validation-workflow/
This article was created with the help of AI. AI was not used to write the content; it assisted only with translation and grammar checks.
Top comments (0)