CHRIS HAY / MACHINE READERSHIP
Who is
reading?
Most of the audience for this publication never runs a line of its JavaScript. Training crawlers, AI search indexers, feed clients and the fetch an assistant makes because somebody asked it a question — none of them appear in ordinary analytics. This page counts them at the server, where they are actually visible.
A count here is a request, not a person. Where a provider publishes the addresses its agents use, every claim is checked against that list and the checked and unchecked figures are kept apart. MACHINE-READABLE ↗
LAST 30 DAYS · 2026-08-09 01:00Z TO 2026-09-08 01:00Z · 381 REQUESTS COUNTED
The declared agent’s provider publishes the addresses it uses, and this request came from one of them.
An agent named itself and its provider publishes no list this site can test the claim against.
An agent named itself and its own provider’s published addresses exclude this request. Counted here and nowhere else on this page.
100% of identified agent requests are verified against a published address list.
BY SYSTEM
| System | Retrieval | Indexing | Training | Share of AI |
|---|---|---|---|---|
| OpenAI | 12 | 0 | 0 | 67% |
| Anthropic | 0 | 0 | 6 | 33% |
WHAT IS BEING READ
The column that matters is the first one. Indexing says a page is discoverable. A user-initiated retrieval says an idea entered somebody’s conversation and a machine came back here for the primary source.
| Path | User-initiated | All AI | Browsers |
|---|---|---|---|
| other paths | 1 | 3 | 37 |
| /robots.txt | 0 | 2 | 1 |
| / | 1 | 1 | 43 |
| /notebook/my-ci-has-to-undo-my-coding-agent | 1 | 1 | 14 |
| /about | 1 | 1 | 13 |
| /notebook | 1 | 1 | 13 |
| /research | 1 | 1 | 13 |
| /systems | 1 | 1 | 13 |
| /film | 1 | 1 | 12 |
| /notebook/which-source-wins | 1 | 1 | 11 |
| /readership | 0 | 1 | 11 |
| /objects | 1 | 1 | 6 |
| /record | 1 | 1 | 6 |
| /ideas | 1 | 1 | 5 |
| /sitemap.xml | 0 | 1 | 1 |
| /work/larql | 0 | 0 | 12 |
| /film/youtube/W3iQbl5R_Jk | 0 | 0 | 11 |
| /thread/the-map | 0 | 0 | 11 |
| /film/youtube | 0 | 0 | 10 |
| /film/youtube/5_ZiJpl4hvs | 0 | 0 | 10 |
SCRAPED, OR SUBSCRIBED TO
This publication offers machines documents of their own — two feeds, a follow signal, a record API, a sitemap. Whether an agent takes them, or only takes the pages, is the difference between being read and being harvested.
| Document | Requests | Share |
|---|---|---|
| Pages | 350 | 92% |
| Feeds | 3 | 1% |
| Agent documents | 5 | 1% |
| Record API | 22 | 6% |
| Assets | 1 | 0% |
Feed clients polling on someone’s behalf: 0. Preview cards built for shared links: 0. Conventional search indexing: 0. Machine requests this site cannot attribute: 11.
CITATIONS SOMEBODY FOLLOWED
A retrieval is a machine reading. This is the other half of the same event: a browser arriving from the answer that cited the page. ChatGPT marks its citation links, so the two stages can be told apart.
| Arrived from | Browser requests |
|---|---|
| Web search | 2 |
| Social | 1 |
RECENT · BUCKETED TO THE HOUR
| Hour | Agent | Purpose | Path | Requests |
|---|---|---|---|---|
| 2026-09-08 01:00Z | ClaudeBot VERIFIED | training | /readership | 1 |
| 2026-09-08 01:00Z | ClaudeBot VERIFIED | training | /robots.txt | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | / | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /about | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /film | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /ideas | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /notebook | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /notebook/my-ci-has-to-undo-my-coding-agent | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /notebook/which-source-wins | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /objects | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /record | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /research | 1 |
| 2026-09-08 00:00Z | ClaudeBot VERIFIED | training | /robots.txt | 1 |
| 2026-09-08 00:00Z | ClaudeBot VERIFIED | training | /sitemap.xml | 1 |
| 2026-09-08 00:00Z | ChatGPT-User VERIFIED | retrieval | /systems | 1 |
What these numbers do not say.
Counts are server-side HTTP requests. They are not people, sessions or visits.
Agent identity is a header the client chose to send. Where a provider publishes the addresses its agents use, the claim is checked against that published list and reported as verified; where no list is published it is reported as declared and nothing more.
A claim contradicted by its own provider's published addresses is recorded as refuted and excluded from every total on this page.
No address, cookie, session, fingerprint or query string is stored. The finest record kept is an hourly count per path, agent and outcome.
Paths this site does not publish are counted together as one line rather than named.
Figures are recomputed at most once every five minutes, so they trail live traffic by up to that long.
Verification uses a dated snapshot of each provider’s own published address list, retrieved 2026-09-07 and held in this repository: 646 address ranges across 8 published documents. Anthropic, OpenAI, Perplexity, Google and Microsoft publish one. Apple and most others do not, so their agents can be recorded and never confirmed.
Hourly counts are kept for 400 days and then deleted. Definitions for every category are published with the counts at /api/readership, and the classifier, the address snapshot and the retention rule are in the source of this site.
EVERY CATEGORY, DEFINED
- AI USER
- Requests by provider agents that fetch on a person's behalf — ChatGPT-User, Claude-User, Perplexity-User. Requests, not people: one question can cause several.
- AI SEARCH
- Requests by agents that index for AI answers and citations — OAI-SearchBot, Claude-SearchBot, PerplexityBot.
- AI TRAINING
- Requests by agents that collect text for model training — GPTBot, ClaudeBot, CCBot and others.
- SEARCH BOT
- Conventional web search indexing — Googlebot, bingbot, Applebot and others.
- FEED READER
- Feed clients polling on a subscriber's behalf.
- LINK PREVIEW
- Fetches that build a preview card for a shared link.
- AUTOMATION
- Machine-shaped requests that are none of the above, named or not.
- HUMAN
- Requests from an ordinary browser.