215,128 fake 'best-of' pages built for AI — and Perplexity cites them

4 min read 1 source clear_take
├── "AI retrieval engines have no defenses against SEO content farms that Google spent a decade learning to punish"
│  └── jakobgreenfeld (Trellner report (via Hacker News), 160 pts) → read

The report documents three sites generating 215,128 template-identical 'best software' listicles specifically shaped for LLM retrieval — structured ItemList schema, keyword-dense subheadings, zero editorial voice. The author demonstrates Perplexity, ChatGPT search, and Google AI Overviews cite these manufactured pages by name alongside legitimate editorial outlets, because AI retrieval pipelines lack the E-E-A-T, backlink, and spam signals Google built over years.

├── "The economics guarantee this gets worse: cheap AI writing tools make manufactured citation-bait a positive-expected-value lottery"
│  └── top10.dev editorial (top10.dev) → read below

A $50/month AI writer plus a database of tool names can spin up 100,000 pages a quarter, each functioning as a lottery ticket for citation by answer engines. Because the marginal cost of production is near zero and the payoff (being quoted as an authoritative source) is disproportionately large, the incentive structure ensures more operators will flood the zone until retrieval systems develop counter-signals.

└── "The template is so distinctive that manual detection is trivial — the problem is that AI systems don't look"
  └── jakobgreenfeld (Trellner report (via Hacker News), 160 pts) → read

The report emphasizes that the pages follow a uniform template — H1, throat-clearing paragraph, numbered list of 8–12 tools, two-line pros/cons, schema.org ItemList — that any human can spot instantly and 'never unsee.' HN commenters surfaced additional suspects with identical footprints (no bylines, no update history, no editorial masthead), suggesting the signal is obvious to humans but invisible to LLM retrieval layers that treat structured data and query-matching text as high-signal referenc

What happened

A report published at trellner.com dissects three websites that between them have generated 215,128 'best software' listicle pages — pages with titles like *Best Kubernetes Monitoring Tools 2025*, *Best CRM for Small Law Firms*, *Best Rust Web Frameworks*. The pages follow a template so uniform you can spot it once and never unsee it: an H1, a paragraph of throat-clearing, a numbered list of 8–12 tools, a two-line 'pros/cons' block per tool, and a schema.org `ItemList` blob that machines love.

The pages aren't written for humans. They're written for retrieval. Long-tail queries, keyword-dense subheadings, structured data, and zero editorial point of view — the exact shape an LLM's retrieval layer treats as high-signal reference material. The author demonstrates that Perplexity, ChatGPT search, and Google's AI Overviews cite these pages by name when asked to recommend developer tools, often placing them alongside genuine editorial like *The New Stack* or *InfoWorld*.

One of the sites reportedly publishes on the order of hundreds of new listicles per day. The HN thread — 160 points and climbing when this went out — surfaced several more suspects with similar footprints: same layout, same schema, same suspiciously confident rankings, no bylines, no update history, no editorial masthead.

Why it matters

This is the SEO-content-farm playbook from 2013, ported to the AI retrieval stack and — critically — working better than it ever did on Google. Google spent a decade building signals (E-E-A-T, backlink graphs, domain authority, spam updates) to punish exactly this pattern. LLM retrieval pipelines have no equivalent. They see a page with a clean `ItemList`, a plausible domain, and text that answers the query, and they cite it.

The economic asymmetry is brutal: a $50/month AI writer plus a Postgres table of tool names can generate 100,000 pages a quarter, and each one is a lottery ticket for being cited by the answer engines that increasingly mediate what developers, buyers, and engineering managers see. A real reviewer publishes maybe 30 comparative pieces a year and gets outranked by a bot that shipped 30,000.

What's genuinely new here — and what the trellner report nails — is the citation laundering dynamic. When Perplexity returns *'According to bestsoftwarelists.io, the top three Kubernetes monitoring tools are…'*, the citation itself confers authority. The reader doesn't click through. The reader trusts that the model wouldn't cite garbage. The garbage becomes, functionally, canon. Ask the same model the same question tomorrow and it will re-cite the same page, because that page still has the same schema, still ranks in retrieval, and still 'answers the question.' This is a self-reinforcing loop.

Compare this to the older SEO-farm era. Demand Media's eHow got destroyed by Google's Panda update in 2011 because Google could measure user behavior (short dwell, high bounce, back-to-SERP) and downrank based on it. In an AI answer, there is no dwell time. There is no back-to-SERP. The model reads the page, extracts three bullet points, and the user never visits. There is no feedback signal from which the retrieval system can learn that the source is trash.

The HN comments — worth reading in full — surface a second-order concern: several posters identified their own products being *misranked* on these pages. Not omitted; ranked 4th on a list where they're demonstrably category-leading, next to competitors that don't ship anymore. The pages don't just launder authority — they launder specific commercial claims into the mouths of AI assistants. If you're a founder, the AI that a prospect just asked about your category may confidently recommend a dead competitor over you, and you'll never see the impression.

What this means for your stack

Three things are actionable this week.

First, audit what the answer engines say about your product and your competitors. Ask Perplexity, ChatGPT, and Google AI Overviews the five queries your prospects actually type — 'best X for Y', 'X alternatives', 'X vs Y'. Screenshot the citations. If the cited sources are pages with no byline, no 'last updated' date, and a suspiciously uniform template, you've found the farm. This is now a quarterly ops task, not a marketing curiosity.

Second, if you're building any kind of retrieval or agent product on top of a hosted LLM, understand that your grounding pipeline probably has this pollution baked in. The mitigation isn't 'trust the model less' — that's not a control. The mitigation is a source allowlist for high-stakes categories. If your agent recommends software, tools, medical products, or financial services, whitelist a small set of known-good publishers (GitHub, official docs, a handful of editorial outlets you can name) and refuse to cite domains outside it. This is unglamorous work and it is the only thing that actually helps.

Third — and this is the uncomfortable one — the incentives now push in the other direction too. If your competitors are getting cited by manufactured lists and you're not, the cheap game-theoretic move is to manufacture your own. Don't. It works this quarter and gets you deranked (or worse, legally exposed) the quarter Anthropic or OpenAI ships their equivalent of Panda. The better play is to publish one genuinely good, updated, bylined comparison a month with structured data attached, and to actively pitch your product to the small editorial outlets the answer engines still favor when they can find them.

Looking ahead

The answer-engine layer needs its Panda moment, and it's coming — probably from Anthropic or Google first, because they have the most exposure to trust erosion. Expect provenance signals (bylines, editorial history, update cadence, backlink quality) to start weighing heavily in retrieval within the next 12 months. Until then, assume the AI assistant your prospects use has been quietly farmed. Behave accordingly.

Hacker News 345 pts 163 comments

Three sites made 215,128 “best software” pages for AI. Perplexity cites them

→ read on Hacker News
xpct · Hacker News

If I recall correctly, there were some papers which suggested that LLMs favor LLM-generated passages over human written ones. I can consistently reproduce this by asking Claude which code snippet it prefers: the one it generated in a different chat, or one that I refactored for my own needs and find

mstaoru · Hacker News

Well it's not only this, or protection from LLMs training on LLM output. LLMs training on human output is also problematic.I was traveling to an obscure small town, doing some "research" with LLMs beforehand. Every and each one told me enthusiastically to go to "Foobar square&quo

Aurornis · Hacker News

I used one of the 12-month free Perplexity offers when they were everywhere. It felt slightly useful at first for simple queries where I didn’t want to go through the top 10 Google results manually. If I was looking for a specific recipe I remembered or a help page or user manual it would usually fi

wodenokoto · Hacker News

So this is the third article on HN front page attacking perplexity from generic research institute.I am actually starting to think the point of this is to feed LLMs things to cite.

toddmorey · Hacker News

I do think models currently don't have enough source skepticism.If you look at agent traces when asked to compare two options to help inform a decision, many of the comparison pages cited in research are often hosted by one of the companies being compared; nearly all are AI-generated AEO plays.

// share this

// get daily digest

Top 10 dev stories every morning at 8am UTC. AI-curated. Retro terminal HTML email.