howtodistribute
← Back to the index

How Similarweb got its users

HARDProgrammatic SEOgiantb2bruns ads
Visit similarweb.com

One page per analyzed domain, millions of URLs fed by their own data. The data is both the moat and the content.

Confirmed. The team said it publicly, or the signals leave no room for doubt.

Can you run this?
HARD

Reproducible, but it will cost you real money, real months, or a skill you may not have.

The edge you do not have: A measurement panel impossible to rebuild without capital

Your time
24 months
Your money
Cost of acquiring the data
First signal
12 months
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

    Similarweb's unit is one domain. The template is /website/[domain]/, titled "[domain] Traffic Analytics, Ranking & Audience [Month Year]". The list is not bought: /corp/ourdata/ names its four pillars, contributors network, first party analytics, public data, partners. Pick the single unit your product already measures and can restate monthly. Hand-write that template for three real units before scripting anything. If it reads the same with the unit swapped, there is no page.

    done whenTake your three hand-written pages and swap the unit name in each. If every sentence still reads fine unchanged, your template carries no real data and scripting it just multiplies a blank page 5,000 times.

  2. 2

    One dataset, several templates. Off the same measurements Similarweb runs /ai-traffic/[domain]/, /website/[a]/vs/[b]/ ("airbnb.com vs. vrbo.com Ranking Comparison"), /website/[domain]/competitors/, and the grid /top-websites/[country]/[category]/[subcategory]/, which holds 12,831 URLs in their top-websites-001 sitemap. Ship one template and get it indexed first. Add the vs/ pairing only after single-unit pages rank: pairs square your page count and your thin pages.

    done whenCount the templates you have planned against the templates with at least one page actually ranking. Until the first is indexed and pulling clicks, a second template is duplicated work on an unproven format.

  3. 3

    Make every page a crawl hub. Each /website/[domain]/ page carries a "Top 10 [domain] Competitors" module ranked by affinity across keyword traffic, audience targeting and market overlap, and links out to all ten. The /top-websites/[country]/[category]/ grid feeds downward into those same pages. Copy it: every unit page links to five or ten siblings chosen by a computed relation, never alphabetical. Your long tail gets found through those links, not through the nav.

    done whenPick a page fifteen levels deep in your own set and count the clicks from your homepage to reach it. Past three, it sits uncrawled no matter how good the underlying data is.

  4. 4

    Stamp the period into the page. Similarweb titles read "airbnb.com Traffic Analytics, Ranking & Audience [July 2026]" and the AI page H1 reads "airbnb.com AI Traffic for July 2026". Their index at /sitemaps/sitemap_index.xml.gz carries a fresh lastmod per shard. Only pick this channel if your numbers actually move month to month. Static facts make a directory, and a directory gets scraped and outranked. Recomputed numbers earn the recrawl.

    done whenRun your generator twice, a month apart, on the same unit and diff the two outputs. If nothing changed, you have a static directory and no reason for a crawler to return, so pick a different channel.

  5. 5

    Give away the answer, gate the next question. The public /website/ page hands over global rank, country rank, bounce rate, pages per visit, visit duration, top countries and ten competitors. Deeper cuts sit behind "Start a trial" and "Register to download PDF" buttons placed inside each section, not at the top. Copy that placement: the visitor gets exactly what they searched for, then meets the wall the moment they want the layer below it.

    done whenOpen your own generated page logged out and read only what loads free. If you cannot answer the query you targeted without signing up, you rank and bounce. If you answer everything, nobody signs up.

The product itself

read from similarweb.com, live

Win Your Market with AI-Powered Digital Data

free tier~405k public pages

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

Publicly listed company

What else they ran

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.