{"schema_version":"newruntime-reader-dossiers-v1","type":"reader_dossier","id":"reader:ccbot","slug":"ccbot","name":"CCBot","kind":"ai_training","kind_label":"AI model crawlers","operator":{"name":"Common Crawl","url":"https://commoncrawl.org/"},"docs_url":"https://commoncrawl.org/ccbot","robots_tokens":["CCBot"],"purpose":"Crawler of the non-profit Common Crawl, which builds an open web archive; the corpus is widely reused, including as AI training data.","feeds":["model_training","research"],"respects_robots":"documented_yes","robots_note":"Opt out with User-agent: CCBot / Disallow: /. Common Crawl warns that other crawlers spoof CCBot.","verification":{"method":"both","url":"https://index.commoncrawl.org/ccbot.json"},"why_it_matters":{"text":"Common Crawl snapshots are downstream inputs for many open and commercial models — one crawl, many future readers.","kind":"new_runtime_interpretation"},"confidence":"high","researched_at":"2026-10-23","sources":["https://commoncrawl.org/ccbot"],"icon_url":"https://newruntime.com/readers/icons/commoncrawl.png","matching":{"aliases":["ccbot"],"rule":"Reduce each agent_days label to a token: for labels starting with Mozilla/ take the product after 'compatible;', else a versioned crawler token such as 'FooBot/1.0' (a truncated 'Mozilla/5.0 (Linux; Android 7.0;) AppleWebKit/537.36 (KHTML, like Gecko) Mobile' prefix logged before 23 Oct 2026 is PetalBot; anything else is unidentified-android, unidentified-linux-chrome or unidentified-browser); otherwise take the text before the first '/', '(' or ';' and drop a trailing ' token probe'. Lowercase it. A dossier owns the tokens in its aliases."},"observed_baseline":{"as_of":"2026-10-23T08:01:01.990Z","window_first_day":"2026-07-23","window_last_day":"2026-10-23","observed_days":93,"note":"Refreshed daily in production from the live aggregates (dated by as_of). For current numbers aggregate live_sources.history agent_days by matching.aliases.","total_requests":29,"first_seen":"2026-07-23T23:35:34.057Z","last_seen":"2026-10-21T16:34:03.767Z","days_active":8,"recency":"returning","categories":["ai_crawler"],"label_variants":1,"journeys":{"requests":2,"content_reads":0,"feeds_or_discovery_reads":0,"machine_consumption_reads":0,"unique_materials":0,"unique_canonical_nodes":0,"verification":{"not_verifiable":{"requests":2,"method":"provider_not_published"}}}},"identity_note":"A family name is what a client claims in its user agent. It is verified only when its request came from the operator's published IP ranges or passed forward-confirmed reverse DNS, as reported per family in /crawler-journeys.json. Anyone can claim any name.","privacy":{"scope":"family-level aggregates only","ip_addresses":"not_output","raw_user_agents":"not_output (labels are sanitized; URLs inside them are redacted)","visitor_ids":"not_output","query_strings":"not_output"},"live_sources":{"history":"https://newruntime.com/bot-traffic-history.json","latest":"https://newruntime.com/bot-traffic-latest.json","machine_consumption":"https://newruntime.com/machine-consumption.json","crawler_journeys":"https://newruntime.com/crawler-journeys.json"},"routes":{"html":"https://newruntime.com/readers/ccbot/","markdown":"https://newruntime.com/readers/ccbot.md","json":"https://newruntime.com/readers/ccbot.json","index":"https://newruntime.com/readers.json","index_html":"https://newruntime.com/readers/"}}
