We rebuild the "most-referenced by AI" list in llms.txt from zero every month, counting the last 30 days of GA4 sessions from AI services per landing page. Four months in: from September on, 58–75% of each new list wasn't on the previous one; picking by count alone lets off-topic pages near the top; and GA4 "AI referrals" count people clicking links in AI answers — not AI crawlers reading your pages or your llms.txt. Whether rotating the list increased AI traffic is something this log can't tell.
What We Observed: The "Most-Referenced by AI" Section
The llms.txt of a web-development publication we run separately ("the site" below) has a section called "articles most referenced by AI," alongside hub articles by topic, a tool list, and recent posts. The llms.txt proposal calls the file a curated overview for LLMs but says nothing about what to curate. We added this section in May 2026 on the idea of putting pages that AI answers actually link to up front.
Since July, an automated job pulls GA4 data on the 1st of each month and writes a report with the selection table and the diff from last month. The job only proposes; a person reviews before anything goes live. Of the five runs from July to November, four were applied and one (August) was skipped. The site generates llms.txt server-side, and the list is a constant of article identifiers.
The Rules: What Counts, What's Out, How It's Ordered
| Item | Rule |
|---|---|
| Window | Last 30 days (run on the 1st of each month, through the previous day) |
| What counts as AI | Sessions whose GA4 sessionSource contains chatgpt, openai, gemini, copilot, perplexity, or claude |
| Unit | Summed per landing page across sources |
| Threshold | 2 sessions or more in total |
| Scope | Articles only — tool pages, practice apps, the home page, categories, and (not set) landings are excluded |
| Excluded | Hub articles (they already appear in another llms.txt section) |
| Order | By sessions; ties broken by engaged sessions |
| Method | Rebuilt from zero each time — the previous list is never carried over |
The source filter is a partial match on six words because one company's AI can show up under several labels. Visits from OpenAI's AI were split every month between two sources, chatgpt.com and openai. Filtering on one alone misses more than half the traffic for some pages — hence summing per landing page.
Engaged sessions are GA4's definition: lasting 10 seconds or more, including a key event, or including two or more page views. We use them only to break ties; the reason is in the section on removals below.
Monthly Turnover: 58–75% of Each New List Was New
| Run | Result | Kept from previous list | New in this list | Note |
|---|---|---|---|---|
| July | Applied | 100% | 0% | Same pages as before; one pair swapped places |
| August | Skipped | — | — | Most additions sat exactly at the threshold (2 sessions), so one visit decided whether they got in. The data was also a month old and missed that month's new articles, so we rebuilt from zero the next month |
| September | Applied | 27% | 75% | The biggest turnover; the previous #1 fell below the threshold |
| October | Applied | 58% | 63% | More pages cleared the threshold, so the list grew |
| November | Applied | 42% | 58% | Applied after removing one off-topic page that ranked #2 |
From September on, 58–75% of each month's list hadn't been on the previous one. The #1 page was different in all four applied runs, and only one article survived all four lists. Had we left July's list in place, fewer than 20% of it would still have met the threshold by November. A "most-referenced" list is, within a few months, a list of pages with no track record.
Turnover is tied to how thin the numbers are. Pages at exactly the 2-session threshold made up a quarter to a half of each month's list, and those move in or out on a single visit. We skipped August because most proposed additions sat in that band. On a site with little AI traffic, assume part of the churn is noise, not a change in track record.
The other shift was where AI visits land. This list covers articles only, yet the share of AI visits landing on articles fell from 60% in July to 43% in October. What grew were non-article pages such as tools and practice apps (tools have their own llms.txt section).
| Where AI visits landed (share of all AI visits) | Jul | Aug | Sep | Oct | Nov |
|---|---|---|---|---|---|
| Articles | 60% | 60% | 56% | 43% | 49% |
| Non-article pages (tools, practice apps) | 15% | 13% | 34% | 45% | 40% |
| Home page | 20% | 19% | 1% | 1% | 1% |
| Landing unknown (not set) | 5% | 7% | 9% | 11% | 10% |
Landings recorded as (not set) also grew from 5% to around 10%. Visits with no known landing page can't enter any list. The roughly 20% landing on the home page through August is likewise invisible to an article list.
Removals: One Case We Overrode, Two We Didn't
Off-topic Page A: Removed Despite Ranking #2
In November, page A — outside the site's subject, web development — ranked #2 under the rules. Its engaged share was high, and nothing in the numbers argued for removal. We removed it anyway, because llms.txt also tells AI what the site is about. An off-topic page second from the top of a web-development site's list risks blurring that. The reason is written right above the list definition, and the page will be removed for the same reason if it surfaces again.
To be candid, the same page A was #1 on July's list. We used the rule's output as-is and never looked at it from the subject angle. The session rule measures whether AI answers have linked to a page, not whether it fits the site. We keep that check out of the automated rule and leave it as something a person looks at each month.
Pages with Only Non-engaged Visits: Kept
Page B, #3 in November, had no engaged sessions at all. Page C, #1 in September, had an engaged share of 7% that month and 0% in October and November. We still kept the session-count order.
In September we considered reordering by engaged sessions because of page C. We didn't: the section is defined as "pages people reached from links in AI answers," and sessions are the most direct measure of that. Reordering by engagement would change what the section measures from month to month.
The other reason is that we can't verify what those visits are — someone closing the tab within 10 seconds, a link preview, a browser-based automated visit. GA4's numbers can't tell them apart. We don't treat something unidentified as grounds to remove a page, nor to keep it; that's why the order stays fixed.
GA4 "AI Referrals" Don't Count AI Crawlers
There's an easy mistake in calling this list "referenced by AI." GA4 counts a visit when its tag's JavaScript runs in a browser. Sessions sourced from ChatGPT or Gemini are people who clicked a link in an AI answer — not the number of times AI read the page.
AI crawlers barely register in GA4 by design. Vercel and MERJ's December 2024 study found that the major AI crawlers don't execute JavaScript (the exceptions being Gemini, which uses Googlebot's infrastructure, and Applebot). No JavaScript means no GA4 tag. OpenAI documents separate agents — OAI-SearchBot for search, GPTBot for training, and ChatGPT-User for fetches triggered by a user — and says ChatGPT-User isn't used for automatic crawling. Which of them came is something you see in server access logs, not GA4.
| Question | Where to look | What it shows | What it can't show |
|---|---|---|---|
| Did people arrive from an AI answer? | GA4 session source | Which pages, how many visits, whether they read | Why that page was linked |
| Did an AI crawler fetch the page? | Server access logs (user agent) | When and which URL | Whether the content was used in an answer |
| Was llms.txt itself fetched? | Requests to /llms.txt in access logs | That it was retrieved | Whether the list influenced what got linked |
| Showing in Google's AI features | Search Console Performance report | Only as part of the Web search totals | Isolating AI Overviews on their own |
Even when logs show a crawler came, you can't verify from outside whether what it read was used in an answer. Even when llms.txt was fetched, you can't tell whether its list affected what got linked. So this list is a trailing record of pages people reached from AI answers, not of pages AI read. To check you aren't blocking crawlers, see checking for AI crawler blocks; for how landing pages split by AI source, see our AI referral genre observation.
By AI Source: OpenAI at 60–80%, and More Pages Reached from Several AIs
| Share of all AI visits | Jul | Aug | Sep | Oct | Nov |
|---|---|---|---|---|---|
| OpenAI (both chatgpt.com and openai) | 75% | 59% | 64% | 73% | 77% |
| Gemini | 9% | 19% | 26% | 22% | 18% |
| Copilot | 9% | 15% | 7% | 4% | 4% |
| Perplexity | 3% | 3% | 1% | 1% | 1% |
| Claude | 3% | 4% | 3% | 0% | 0% |
OpenAI made up 60–80% every month; Gemini rose to 26% in September, then eased to 18%. Claude accounted for a few percent from July to September and zero in October and November. Volumes are small, so a point or two is within noise.
The notable change was the share of pages reached from two or more AIs. Among candidates (articles with 2+ sessions), it rose from 8% in July to 43% in November. A page reached from a single AI drops off the list with one change in that AI's answers. We suspect pages reached from several AIs are likelier to stay the next month, but four months isn't enough to confirm it.
Pitfall: Right After Deploying, llms.txt Serves the Old List
The site doesn't build llms.txt on every request; it's generated server-side and cached for up to 13 hours. Open it right after deploying a new list and you get the previous one. That's expected, not a failed deploy — check again after the cache expires.
Checking has its own trap. Searching the whole file for an article name matches the same article in other sections, like recent posts, even when the list hasn't updated. Extract from the changed section's heading to the next heading and compare only that.
If a WordPress plugin or your own code generates llms.txt, know its cache period and whether a CDN sits in front before you check. To see whether the live file follows the format, fetch what's actually being served with the llms.txt checker. For writing the file itself, see how to create llms.txt.
What This Log Can't Tell You
We can't say rotating the list increased AI visits. Total AI visits did grow from July to October, but the site's articles and tools grew over the same period, and we have neither an unchanged period nor a comparable site to compare against. Nothing ties the growth to the list.
Google states that you don't need new machine-readable files or AI text files to appear in AI Overviews or AI Mode. Whether ChatGPT and other AI services use llms.txt in answers hasn't been disclosed and can't be verified from outside. We cover this in is llms.txt really unnecessary? and does llms.txt work as a GEO strategy?.
We keep rebuilding monthly because it's cheap: the proposal is automatic, and a person only checks subject fit and deploys. These four months showed that a list left alone becomes a list of pages with no track record. We continue not because we've confirmed an effect, but because it's a fair price for not serving a stale list.
Related Tools
Sources (checked November 1, 2026)
FAQ
How often should the article list in llms.txt be reviewed?▾
Do GA4 "AI referrals" include visits from AI crawlers?▾
Should the list be ordered by sessions or by engaged sessions?▾
Should an off-topic page with plenty of AI traffic be listed in llms.txt?▾
Does rotating the llms.txt list increase AI referrals?▾
How do I confirm an llms.txt update has gone live?▾
Check That Your Live llms.txt Says What You Meant
Enter a URL and the checker fetches the llms.txt being served, then checks where it's placed and whether its format follows the spec. If the site has none, it can generate a template.
Open the llms.txt Checker
Written by
今井政和SEO Director / Frontend Developer
SEO Director with 20+ years of web industry experience. Creator of Direbase and the official WordPress plugin "ORECTIC SEO CHECK." Author of a book on web strategy inspired by Edo-era merchant principles.
@imai_directorRelated Articles
What Are AIO, AEO, GEO, and LLMO? Differences and Where to Start
A breakdown of the four AI-search abbreviations by the audience each addresses, plus a measurement-based framework for judging your site's stage and deciding where to start.
What Is google.com/goto? What the Search Redirect Changes and What It Does Not
A read on the passthrough URL Google now inserts into result links: nothing to change on your site, no ranking impact, but real effects on rank tracking and GA4 — and how to verify them in your own data.
How to Find SEO Improvements with GA4 | Analytics × SEO Audit Guide
Discover SEO issues through GA4 landing page reports and engagement rates, then pinpoint causes with an SEO audit tool.
Does llms.txt Work as a GEO Strategy? | CDN Log Data Analysis
Does deploying llms.txt get you cited in AI search? Analyzing CDN logs from ChatGPT, Perplexity, and Claude plus 300K domain studies to verify llms.txt GEO effectiveness.