xnxx.health: what it tells AI crawlers
On 27 October 2026, xnxx.health's robots.txt fully blocked GPTBot, ClaudeBot, Google-Extended and CCBot; it also signalled ai-train=no.
Last verified 2026-10-28 03:59 UTC (daily run of 2026-10-27). Proof for that day.
- Panel
- top 10k (Tranco)
- robots.txt
- ok (HTTP 200) · https://xnxx.health/robots.txt
unchanged since 2026-10-27 · sha256ee7b807e601a66dd…· view as recorded - The * group
- allows applies to every agent without its own group
Per AI bot, 2026-10-27
| User agent | Verdict | How |
|---|---|---|
| GPTBot | blocks | named in its own group |
| OAI-SearchBot | allows | through the * group |
| ChatGPT-User | allows | through the * group |
| ClaudeBot | blocks | named in its own group |
| Claude-SearchBot | allows | through the * group |
| Claude-User | allows | through the * group |
| PerplexityBot | allows | through the * group |
| Perplexity-User | allows | through the * group |
| Googlebot | allows | through the * group |
| Google-Extended | blocks | named in its own group |
| Applebot-Extended | blocks | named in its own group |
| CCBot | blocks | named in its own group |
| Bytespider | blocks | named in its own group |
| Meta-ExternalAgent | blocks | named in its own group |
| Amazonbot | blocks | named in its own group |
| anthropic-ai | blocks | named in its own group |
| atlassian-bot | blocks | named in its own group |
| Claude-Web | blocks | named in its own group |
| cohere-ai | blocks | named in its own group |
| Cotoyogi | blocks | named in its own group |
| Diffbot | blocks | named in its own group |
| Google-CloudVertexBot | blocks | named in its own group |
| GoogleOther | blocks | named in its own group |
| ICC-Crawler | blocks | named in its own group |
| KimiBot | blocks | named in its own group |
| MistralAI-Training | blocks | named in its own group |
| omgili | blocks | named in its own group |
| PetalBot | blocks | named in its own group |
| QualifiedBot | blocks | named in its own group |
| SemrushBot-SWA | blocks | named in its own group |
| WARDBot | blocks | named in its own group |
Other signals
| Publishes /llms.txt | no |
| Publishes /ai.txt | no |
| Publishes /.well-known/tdmrep.json | no |
| Reserves TDM rights (TDMRep file, header or meta) | no |
| Declares Content Signals (robots.txt or header) | yes |
| Says ai-train=no in a Content Signal | yes |
| 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 directives | no |
| Refused our fetcher (403 / challenge) | no |
Content signals: search=yes, ai-train=no, use=reference for *
robots.txt as recorded sha256 b6088448c71a7d35…
User-Agent: *
Disallow: /video-vote/
Disallow: /account/<script type="text/javascript">
const $ = {};
$.analytics = {
run: function () {
$.script.onload('https://www.googletagmanager.com/gtag/js?id=UA-221143336-8' , () => {
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments)
}
gtag('js', new Date());
gtag('config', 'UA-221143336-8');
})
}
};
$.clickadu = {
run: function () {
$.script.onload('https://king3rsc7ol9e3ge.com/t/9/fret/meow4/1891714/8858fea9.js');
$.script.onload('https://quokkacheeks.com/lv/esnk/1897252/code.js');
$.script.onload('https://fd5orie8e.com/lv/esnk/1906172/code.js');
$.script.onload('https://fd5orie8e.com/lv/esnk/1906971/code.js');
$.script.onload('https://fd5orie8e.com/lv/esnk/1906972/code.js');
$.script.onload('https://fd5orie8e.com/lv/esnk/1906973/code.js');
}
};
$.script = {
onload: function(url, callback = () => {})
{
let script = document.createElement('script');
script.type = "text/javascript";
script.onload = callback;
script.src = url;
document.getElementsByTagName('head')[0].appendChild(script);
}
};
$.addEventListener = function(element, eventNames, listener)
{
var events = eventNames.split(' ');
for (var i=0, size=events.length; i<size; i++)
{
element.addEventListener(events[i], listener, false);
}
};
document.addEventListener("DOMContentLoaded", () =>
{
let isLoad = false;
$.addEventListener(document, 'scroll click resize', () => {
if (isLoad === false) {
$.clickadu.run();
$.analytics.run();
isLoad = true
}
});
});
</script>
<script type="text/javascript">
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
ym(87594356, "init", {
clickmap:true,
trackLinks:true,
accurateTrackBounce:true,
webvisor:true,
ecommerce:"dataLayer"
});
</script>
<noscript><div><img src="https://mc.yandex.ru/watch/87594356" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
robots.txt versions
| From | Through | State | Version | |
|---|---|---|---|---|
| 2026-10-27 | 2026-10-27 | ok 200 | ee7b807e601a | diff with previous |
| 2026-10-26 | 2026-10-26 | ok 200 | 8c71185fec74 |
Timeline of changes
| Date | What changed |
|---|---|
| 2026-10-27 | robots.txt changed |
| 2026-10-27 | now blocks Amazonbot (was allow) |
| 2026-10-27 | now blocks anthropic-ai (was allow) |
| 2026-10-27 | now blocks Applebot-Extended (was allow) |
| 2026-10-27 | now blocks atlassian-bot (was allow) |
| 2026-10-27 | now blocks Bytespider (was allow) |
| 2026-10-27 | now blocks CCBot (was allow) |
| 2026-10-27 | now blocks Claude-Web (was allow) |
| 2026-10-27 | now blocks ClaudeBot (was allow) |
| 2026-10-27 | now blocks cohere-ai (was allow) |
| 2026-10-27 | now blocks Cotoyogi (was allow) |
| 2026-10-27 | now blocks Diffbot (was allow) |
| 2026-10-27 | now blocks Google-CloudVertexBot (was allow) |
| 2026-10-27 | now blocks Google-Extended (was allow) |
| 2026-10-27 | now blocks GoogleOther (was allow) |
| 2026-10-27 | now blocks GPTBot (was allow) |
| 2026-10-27 | now blocks ICC-Crawler (was allow) |
| 2026-10-27 | now blocks KimiBot (was allow) |
| 2026-10-27 | now blocks Meta-ExternalAgent (was allow) |
| 2026-10-27 | now blocks MistralAI-Training (was allow) |
| 2026-10-27 | now blocks omgili (was allow) |
| 2026-10-27 | now blocks PetalBot (was allow) |
| 2026-10-27 | now blocks QualifiedBot (was allow) |
| 2026-10-27 | now blocks SemrushBot-SWA (was allow) |
| 2026-10-27 | now blocks WARDBot (was allow) |
| 2026-10-27 | Content-Signal lines changed |
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.
| Crawl | Host | State | GPTBot | OAI-SearchBot | ChatGPT-User | ClaudeBot | Claude-SearchBot | Claude-User | PerplexityBot |
|---|---|---|---|---|---|---|---|---|---|
| 2026-09-21 CC-MAIN-2026-39 | xnxx.health | ok view | blocks | allows | unknown | blocks | allows | unknown | allows |
| 2025-09-15 CC-MAIN-2025-38 | xnxx.health | ok view | allows | allows | unknown | allows | allows | unknown | allows |
| 2024-09-16 CC-MAIN-2024-38 | xnxx.health | ok view | allows | allows | unknown | allows | allows | unknown | allows |
| 2023-10-02 CC-MAIN-2023-40 | xnxx.health | ok view | allows | allows | unknown | allows | allows | unknown | allows |
| 2022-10-03 CC-MAIN-2022-40 | xnxx.health | ok view | allows | allows | unknown | allows | allows | unknown | allows |
Evidence
Every daily observation of xnxx.health 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/xnxx.health