A bit of context before the post, I built SiteTell its a site scanner that scans for content that reads as AI generic. From this I've been able to gather data from over 10,000 pages and came to some interesting conclusions about the use of AI across websites. Google doesn't explicitly punish "AI writing" in its rankings, but it does punish generic, zero-value content that can be found in a hundred other places. I created a curated ruleset to catch these patterns, and so far, SiteTell has scanned 103 sites and 10,126 pages, flagging over 23,000 instances.
I collated the data, and it led to some counter-intuitive conclusions.
1. Structural habits give it away more than vocabulary
Everyone knows to delete the word "delve," but 58% of the items flagged so far aren't vocabulary—they are structural issues.
The Redundant Closing Paragraph (66% of sites): This is the most prevalent tell. LLMs love to write a summary conclusion that adds absolutely no new insight, merely repeating what the page already covered.
Em-Dash Frequency & The Rule of Three (63% of sites): LLMs lean heavily on specific rhythmic crutches. (Obviously, some technical SaaS products use these structures naturally, so it's a general pattern rather than an isolated error).
Paragraph Symmetry (10% of sites): A surprising tell, but once you see a page where every single paragraph is the exact same visual block length, you can't really unsee it.
2. Bigger sites score substantially worse
Sites with fewer than 200 pages typically score between 85-95/100. Once a site crosses the 200-page threshold, the average score drops to around 70.6. This forms part of the broader trend below but to be transparent there is a slight flaw with the analysis here. Most of my structural rules require a minimum of 100-150 words to run. A small landing page might not hit that threshold, saving it from structural penalties.
However, the broader trend is clear. It’s easy to hand-craft a 10-page site. But as a site scales, the owners inevitably turn to AI to churn out blog posts and resource pages, which introduces massive amounts of generic terminology.
So the question becomes how can you fix this?
If you don't want to use a tool, you can manually audit your site. This can most effectively be done with 3 checks:
Read your final paragraphs: Is it a meaningful conclusion, or just a regurgitation of the page above? AI loves to just repeat information in a closing paragraph. Conclusions should conclude and add insight, not just repeat.
Check for block symmetry: Are all your paragraphs the exact same length? Break them up.
The Competitor Test: Could a specific sentence sit on a competitor's website completely unchanged? If yes, it's generic, adds no unique value, and is less likely to rank. This, for me, is the most important of them all. If you're offering something unique, not found on competitors sites, then not only will it be more memorable it be less likely to read as generic content.
Fixing it at scale
Those manual checks work great for a homepage. Where it stops being viable is when you have 300 generated blog pages. Doing that by hand isn't realistic.
SiteTell crawls the whole domain, flags each instance with the specific rule that fired, and writes a replacement for it. You can export the whole thing as a CSV or JSON and feed it directly into an agent to fix your site in minutes.
I’d love for you to poke holes in the data, point out anything I've missed, or let me know what you think of the tool!
NotGeorgeHere•55m ago
I collated the data, and it led to some counter-intuitive conclusions. 1. Structural habits give it away more than vocabulary
Everyone knows to delete the word "delve," but 58% of the items flagged so far aren't vocabulary—they are structural issues.
The Redundant Closing Paragraph (66% of sites): This is the most prevalent tell. LLMs love to write a summary conclusion that adds absolutely no new insight, merely repeating what the page already covered. Em-Dash Frequency & The Rule of Three (63% of sites): LLMs lean heavily on specific rhythmic crutches. (Obviously, some technical SaaS products use these structures naturally, so it's a general pattern rather than an isolated error). Paragraph Symmetry (10% of sites): A surprising tell, but once you see a page where every single paragraph is the exact same visual block length, you can't really unsee it.
2. Bigger sites score substantially worse
Sites with fewer than 200 pages typically score between 85-95/100. Once a site crosses the 200-page threshold, the average score drops to around 70.6. This forms part of the broader trend below but to be transparent there is a slight flaw with the analysis here. Most of my structural rules require a minimum of 100-150 words to run. A small landing page might not hit that threshold, saving it from structural penalties.
However, the broader trend is clear. It’s easy to hand-craft a 10-page site. But as a site scales, the owners inevitably turn to AI to churn out blog posts and resource pages, which introduces massive amounts of generic terminology.
So the question becomes how can you fix this?
If you don't want to use a tool, you can manually audit your site. This can most effectively be done with 3 checks:
Read your final paragraphs: Is it a meaningful conclusion, or just a regurgitation of the page above? AI loves to just repeat information in a closing paragraph. Conclusions should conclude and add insight, not just repeat.
Check for block symmetry: Are all your paragraphs the exact same length? Break them up.
The Competitor Test: Could a specific sentence sit on a competitor's website completely unchanged? If yes, it's generic, adds no unique value, and is less likely to rank. This, for me, is the most important of them all. If you're offering something unique, not found on competitors sites, then not only will it be more memorable it be less likely to read as generic content.
Fixing it at scale
Those manual checks work great for a homepage. Where it stops being viable is when you have 300 generated blog pages. Doing that by hand isn't realistic.
SiteTell crawls the whole domain, flags each instance with the specific rule that fired, and writes a replacement for it. You can export the whole thing as a CSV or JSON and feed it directly into an agent to fix your site in minutes.
I’d love for you to poke holes in the data, point out anything I've missed, or let me know what you think of the tool!