branch.io: what it tells AI crawlers

On 27 October 2026, branch.io's robots.txt allowed all of GPTBot, OAI-SearchBot, ClaudeBot, Claude-SearchBot, Google-Extended, PerplexityBot and CCBot; it also published llms.txt.

Last verified 2026-10-28 03:59 UTC (daily run of 2026-10-27). Proof for that day.

Panel
top 1k (Tranco)
robots.txt
ok (HTTP 200) · https://www.branch.io/robots.txt
unchanged since 2026-10-26 · sha256 6d82fbc52f19b980… · view as recorded
The * group
allows applies to every agent without its own group

Per AI bot, 2026-10-27

User agentVerdictHow
GPTBotallowsnamed in its own group
OAI-SearchBotallowsthrough the * group
ChatGPT-Userallowsthrough the * group
ClaudeBotallowsnamed in its own group
Claude-SearchBotallowsthrough the * group
Claude-Userallowsthrough the * group
PerplexityBotallowsnamed in its own group
Perplexity-Userallowsthrough the * group
Googlebotallowsthrough the * group
Google-Extendedallowsnamed in its own group
Applebot-Extendedallowsnamed in its own group
CCBotallowsnamed in its own group
Bytespiderallowsthrough the * group
Meta-ExternalAgentallowsthrough the * group
Amazonbotallowsthrough the * group
anthropic-aiallowsnamed in its own group

Other signals

Publishes /llms.txtyes
Publishes /ai.txtno
Publishes /.well-known/tdmrep.jsonno
Reserves TDM rights (TDMRep file, header or meta)no
Declares Content Signals (robots.txt or header)no
Says ai-train=no in a Content Signalno
Points to an RSL licence (robots.txt License line or Link header)no
Answers with an x402 payment offer (lower bound: only the homepage is probed)no
Answers HTTP 402 Payment Required (lower bound: only the homepage is probed)no
Sends noai / noimageai directivesno
Refused our fetcher (403 / challenge)no

llms.txt: "Branch", 6,608 bytes, 47 links.

robots.txt as recorded sha256 6d82fbc52f19b980…

# ======================================================
# robots.txt for Branch.io
# ======================================================

# Default policy
User-agent: *
Allow: /

# -----------------------------
# Explicit ALLOW for AI/LLM crawlers
# -----------------------------
User-agent: GPTBot
Allow: /

User-agent: CCBot
Allow: /

User-agent: Google-Extended
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: ClaudeBot
Allow: /

User-agent: anthropic-ai
Allow: /

User-agent: Applebot-Extended
Allow: /

# -----------------------------
# Crawl hygiene (limit noisy URLs)
# -----------------------------
# Common tracking parameters
Disallow: /*utm_
Disallow: /*gclid=
Disallow: /*fbclid=
Disallow: /*msclkid=
Disallow: /*ref=

# Additional query params / WP patterns
Disallow: /*?currency=
Disallow: /*?page_id=
Disallow: /*?wvideo=
Disallow: /*?p=
Disallow: /*?amp

# WP endpoints - Security: Block REST API discovery
Disallow: /wp-json/

# Deep link/debug parameters that create infinite combinations
Disallow: /*&deeplink_path
Disallow: /*&branch

# Internal assets that don't need indexing
Disallow: /assets/
Disallow: /scripts/

# -----------------------------
# Security: Block sensitive paths
# -----------------------------
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/*/assets/
Disallow: /*.php$
Disallow: /xmlrpc.php
Disallow: /wp-trackback.php
Disallow: /wp-cron.php
Disallow: /readme.html
Disallow: /license.txt

# Allow specific needed paths
Allow: /wp-admin/admin-ajax.php
Allow: /wp-content/uploads/

# -----------------------------
# Sitemaps (production)
# Yoast sitemap index links to all section sitemaps
# -----------------------------
Sitemap: https://www.branch.io/sitemap_index.xml

robots.txt versions

FromThroughStateVersion
2026-10-262026-10-28ok 2006d82fbc52f19

Timeline of changes

DateWhat changed
No changes since the first observation (2026-10-26).

Reconstructed history (Common Crawl)

From Common Crawl's robots.txt captures: what CCBot was served, one crawl per quarter. A separate series from the daily observations above; a 403 here means Common Crawl was refused, not this ledger.

CrawlHostStateGPTBotOAI-SearchBotChatGPT-UserClaudeBotClaude-SearchBotClaude-UserPerplexityBot
2026-09-21 CC-MAIN-2026-39www2.branch.iook viewallowsallowsunknownallowsallowsunknownallows
2025-09-15 CC-MAIN-2025-38www2.branch.iook viewallowsallowsunknownallowsallowsunknownallows
2024-09-16 CC-MAIN-2024-38www2.branch.iook viewallowsallowsunknownallowsallowsunknownallows
2023-10-02 CC-MAIN-2023-40www2.branch.iook viewallowsallowsunknownallowsallowsunknownallows
2022-10-03 CC-MAIN-2022-40branch.iook viewallowsallowsunknownallowsallowsunknownallows
2021-09-27 CC-MAIN-2021-39branch.iook viewallowsallowsunknownallowsallowsunknownallows
2020-09-28 CC-MAIN-2020-40branch.iook viewallowsallowsunknownallowsallowsunknownallows
2019-09-23 CC-MAIN-2019-39branch.iook viewallowsallowsunknownallowsallowsunknownallows
2018-09-24 CC-MAIN-2018-39www2.branch.iook viewallowsallowsunknownallowsallowsunknownallows
2018-01-29 CC-MAIN-2018-05branch.iook viewallowsallowsunknownallowsallowsunknownallows
2017-10-23 CC-MAIN-2017-43www2.branch.iook viewallowsallowsunknownallowsallowsunknownallows
2017-09-25 CC-MAIN-2017-39www2.branch.iook viewallowsallowsunknownallowsallowsunknownallows
2017-07-24 CC-MAIN-2017-30branch.iook viewallowsallowsunknownallowsallowsunknownallows
2017-04-24 CC-MAIN-2017-17branch.iook viewallowsallowsunknownallowsallowsunknownallows
2017-01-23 CC-MAIN-2017-04branch.iook viewallowsallowsunknownallowsallowsunknownallows
2016-10-03 CC-MAIN-2016-40branch.iook viewallowsallowsunknownallowsallowsunknownallows
2016-09-05 CC-MAIN-2016-36branch.iook viewallowsallowsunknownallowsallowsunknownallows

Evidence

Every daily observation of branch.io is a leaf in that day's Merkle tree. Proof of the robots.txt line for 2026-10-27: audit path (JSON), day root and OpenTimestamps proof (complete (bitcoin block 973493)).

API: https://infrarabbit.com/crawlers/api/v1/policy/branch.io