howtodistribute
← Back to the index

How FluoTest got its users

COPYABLEProgrammatic SEOsolob2bruns ads
Visit fluotest.com

Roughly 237 pages of templates, competitor comparisons and help docs, shipped in 3 locales, with a markdown twin of every URL and AI crawlers explicitly allowed, so answer engines can quote them.

Read from signals. Consistent with what is publicly observable, but nobody confirmed it. Check before you quote it.

Can you run this?
COPYABLE

You could start this on Monday. No budget, no audience, no permission needed.

Your time
3 to 6 months of writing and templating to reach a few hundred real pages
Your money
Close to zero: hosting, a domain and your own writing time. No paid tools needed.
First signal
4 to 8 weeks for the first crawler hits, around 3 months before the signup mix is readable
Upside
  • A traffic base that does not collapse when you stop publishing
  • Acquisition that owes nothing to any social platform
Price of entry
  • A proprietary or painful-to-assemble data source
  • A template with a reason to exist page by page
  • 6 to 12 months before it compounds

Programmatic SEO in 2026

Still alive, but the bar has moved. Thin pages get deindexed, so you need real data on every single page.

Everything on this channel →

The play

5 steps, in the order they ran them.

  1. 1

    Build one live, previewable page per use case the way they run 112+ quiz templates across 15 industry categories, each openable with no account at /templates/preview/<name>, so the page itself is the product trial.

    done whenYour preview URLs start collecting impressions in Search Console within weeks, and one or two categories clearly pull harder than the rest.

  2. 2

    Write one head to head page per named competitor (they have 9, from Typeform and Tally to Google Forms), each carrying a feature table, the competitor's actual quoted price, a 5 step switching guide and 5 FAQs.

    done whenYour vs pages surface for '<competitor> alternative' queries inside a month, and prospects start quoting your comparison table back to you.

  3. 3

    Serve every one of those URLs as plain text too: a .md twin of each page, an Accept: text/markdown response, a full product brief at /llms.txt, and robots.txt lines that Allow GPTBot, OAI-SearchBot, ClaudeBot and PerplexityBot.

    done whenServer logs show the AI crawlers fetching your .md twins by name, and asking ChatGPT or Perplexity your category question returns you.

  4. 4

    Republish the whole set in your buyers' languages the way they do en, cs and nl, turning one written page into three indexable URLs with no new writing.

    done whenNon-English URLs appear in your sitemap and non-English signups appear in analytics without any extra content work.

  5. 5

    Put a 'Powered by' badge on every free public quiz your users publish, make badge removal the headline paid feature, then write up your own channel split as a post so the play becomes citable content itself.

    done whenAnalytics shows referral sessions coming from quiz pages hosted by your own users, and paid upgrades start citing badge removal as the reason.

Run this against your own product

In your chat

Carries the play above, and is written to tell you no when this channel is out of reach for you.

In your editor

The same twelve channels as an agent skill. It reads your repository and eliminates what you cannot run. Open source, MIT.

curl -o ~/.claude/skills/howtodistribute/SKILL.md https://howtodistribute.com/skill.md

711 sitemap URLs (the same roughly 237 pages in en, cs and nl), a directory advertising "112+ templates", 9 head to head alternative pages, and on-page counters reading "255+ Active users" and "171 Days since launch". Their own blog post claims ChatGPT is roughly 50% of signups with zero ad spend, self-reported but printed on the site.

What else they ran

Nothing else identified. One channel carried it.

They ran the same play

Want this verdict on your product?

Describe it. You get back the channel I would run in your place, the 30-day plan, and the number at which you stop.