Ultimate Block List to Stop AI Bots _ Perishable Press.html 110 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740
  1. <!DOCTYPE html>
  2. <html lang="en-US"><head>
  3. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  4. <!-- Yes theme by Jeff Starr @ monzillamedia.com -->
  5. <meta charset="UTF-8">
  6. <title>Ultimate Block List to Stop AI Bots | Perishable Press</title>
  7. <meta name="description" content="More than you might think, AI (Artificial Intelligence) and ML (Machine Learning) bots are crawling your site and scraping your content. They are...">
  8. <meta name="robots" content="index,follow">
  9. <meta name="author" content="Jeff Starr">
  10. <meta name="application-name" content="Perishable Press">
  11. <meta name="msapplication-TileImage" content="/mstile.png">
  12. <meta name="viewport" content="width=device-width, initial-scale=1">
  13. <meta name="google-site-verification" content="OEfZ5m3NS5E7Wx57kXAzWN_66Wlmdbne_8wQ6FTwnt4">
  14. <link rel="search" href="https://perishablepress.com/search.xml" type="application/opensearchdescription+xml" title="Perishable Press">
  15. <link rel="icon" type="image/png" href="https://perishablepress.com/android.png" sizes="192x192">
  16. <link rel="icon" type="image/png" href="https://perishablepress.com/favicon.png" sizes="194x194">
  17. <link rel="apple-touch-icon" type="image/png" href="https://perishablepress.com/apple-touch-icon.png">
  18. <link rel="image_src" href="https://perishablepress.com/wp/wp-content/themes/yes/img/perishable-press.jpg">
  19. <link rel="author" href="https://perishablepress.com/humans.txt">
  20. <link rel="stylesheet" id="prismatic-highlight-css" href="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/gruvbox-dark.css" type="text/css" media="all">
  21. <link rel="stylesheet" id="yes-css" href="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/style.css" type="text/css" media="all">
  22. <link rel="canonical" href="https://perishablepress.com/ultimate-ai-block-list/">
  23. </head>
  24. <body id="yes" class="lite">
  25. <div class="yn bg1">
  26. <div class="wrap box">
  27. <div class="yn1 box">
  28. <div class="yn1a box">
  29. <a class="menu-link" href="https://perishablepress.com/menu/" title="Visit site menu">Main Menu</a>
  30. <a id="mode" href="#mode" title="Toggle light/dark mode" class="mode lite-mode">Night Mode</a></div>
  31. <ul class="t1">
  32. <li><a href="https://books.perishablepress.com/">Books</a></li>
  33. <li><a href="https://plugin-planet.com/" target="_blank">Plugins</a></li>
  34. <li class="ys"><a href="https://perishablepress.com/search/">Search</a></li>
  35. </ul>
  36. </div>
  37. <div class="yn2 box">
  38. <div class="yn2a t2"><strong>Winter Sale!</strong> Save 20% on <a target="_blank" rel="noopener noreferrer" href="https://plugin-planet.com/">Pro Plugins</a> &amp; <a target="_blank" rel="noopener noreferrer" href="https://books.perishablepress.com/">Books</a> w/ code <code>WINTER20</code></div>
  39. <form method="get" class="search" action="/" onsubmit="location.href='/search/'+encodeURIComponent(this.s.value).replace(/%20/g,'+')+'/';return false;">
  40. <label for="s-49" class="h">Search</label>
  41. <input id="s-49" name="s" type="search" title="Search" maxlength="100" placeholder="Type &amp; press enter to search..">
  42. </form>
  43. </div>
  44. </div>
  45. </div>
  46. <div class="wrap">
  47. <div class="w1">
  48. <div class="w1a"><a href="https://perishablepress.com/">Perishable Press</a></div>
  49. <div class="w1b">Web Dev + WordPress + Security</div>
  50. </div>
  51. <div class="w2 box">
  52. <div class="w2a box">
  53. <div class="feat feat-top">
  54. <div>
  55. <a href="https://htaccessbook.com/" title="Improve site performance and security" target="_blank">
  56. <img src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/htaccess-made-easy.jpg" width="200" alt="eBook: .htaccess made easy">
  57. </a>
  58. </div>
  59. <div class="t3">
  60. <a href="https://htaccessbook.com/" title="eBook + Bonus Content" target="_blank">.htaccess made easy</a>: Improve site performance and security.
  61. </div> </div>
  62. <div class="w2a2">
  63. <div class="t1">Related Posts</div>
  64. <ul class="t2"><li><a href="https://perishablepress.com/wordpress-block-proxy-visits/">WordPress Block Proxy Visits</a></li><li><a href="https://perishablepress.com/new-plugin-blackhole-bad-bots/">WordPress Plugin: Blackhole for Bad Bots</a></li><li><a href="https://perishablepress.com/block-bad-bots/">How to Block Bad Bots</a></li><li><a href="https://perishablepress.com/request-router-php-apache-htaccess/">Simple Request Router via PHP and Apache/.htaccess</a></li><li><a href="https://perishablepress.com/security-obscurity/">ALL Security is Security Thru Obscurity</a></li></ul><div class="t2">+ <a href="https://perishablepress.com/related/?related-id=16650">More related posts »</a></div> </div>
  65. </div>
  66. <div class="w2b box">
  67. <div class="w2b1 box">
  68. <div id="content" class="post">
  69. <h1><a href="https://perishablepress.com/ultimate-ai-block-list/">Ultimate Block List to Stop AI Bots</a></h1>
  70. <div class="post-header">
  71. <div class="post-author">♦ Posted by <a href="https://perishablepress.com/author/perish/" title="Posts by Jeff Starr" rel="author">Jeff Starr</a> in <a href="https://perishablepress.com/category/web-design/htaccess/" title="Visit category archive">.htaccess</a>, <a href="https://perishablepress.com/category/web-design/security/" title="Visit category archive">Security</a>, <a href="https://perishablepress.com/category/web-design/seo/" title="Visit category archive">SEO</a></div>
  72. <div class="post-meta t1">
  73. Updated <time class="post-date published" datetime="2026-01-05T16:30:26-08:00" title="Original Post Date: Feb 11th, 2025 @ 9:28 am">January 5, 2026</time>
  74. • <a href="https://perishablepress.com/ultimate-ai-block-list/#comments">56 comments</a>
  75. </div>
  76. </div>
  77. <p>More than you might think, <abbr title="Artificial Intelligence">AI</abbr> (Artificial Intelligence) and <abbr title="Machine Learning">ML</abbr>
  78. (Machine Learning) bots are crawling your site and scraping your
  79. content. They are collecting and using your data to train software like
  80. ChatGPT, OpenAI, DeepSeek, and thousands of other <abbr title="Artificial Intelligence">AI</abbr>
  81. creations. Whether you or anyone approves of all this is not my concern
  82. for this post. The focus of this post is aimed at website owners who
  83. want to stop <abbr title="Artificial Intelligence">AI</abbr> bots from
  84. crawling their web pages, as much as possible. To help people with this,
  85. I’ve been collecting data and researching AI bots for many months now,
  86. and have put together a “Mega Block List” to help <strong>stop AI bots</strong> from devouring your content.</p>
  87. <p></p>
  88. <blockquote><p>The ultimate block list for stopping AI bots from crawling your site.</p></blockquote>
  89. <h2 id="table-of-contents">Contents</h2>
  90. <ul>
  91. <li><a href="#block-ai-via-bbq-pro">Block AI Bots via BBQ Pro</a></li>
  92. <li><a href="#block-ai-via-robots">Block AI Bots via robots.txt</a></li>
  93. <li><a href="#block-ai-via-apache">Block AI Bots via Apache/.htaccess</a></li>
  94. <li><a href="#block-ai-nginx">Block AI Bots via Nginx</a></li>
  95. <li><a href="#block-ai-text">Download plain-text list</a></li>
  96. <li><a href="#notes">Notes</a></li>
  97. <li><a href="#changelog">Changelog</a></li>
  98. <li><a href="#disclaimer">Disclaimer</a></li>
  99. <li><a href="#support">Show Support</a></li>
  100. <li><a href="#references">References</a></li>
  101. <li><a href="#feedback">Feedback</a></li>
  102. </ul>
  103. <blockquote><p>If you can edit a file, you can block a ton of AI bots.</p></blockquote>
  104. <div class="popout"><strong>Thanks:</strong> Special Thanks to Kristina Ponting for help with researching AI bots and sharing with the community. Find Kristina at <a href="https://teskedsgumman.se/" target="_blank">Teskedsgumman</a> and on <a href="https://github.com/tinaponting/" target="_blank">Github</a>.</div>
  105. <h2 id="block-ai-via-bbq-pro">Block AI Bots via BBQ Pro</h2>
  106. <p>🔥 Users of my <a href="https://plugin-planet.com/bbq-pro/" title="Fastest WordPress Firewall" target="_blank">BBQ Pro</a> firewall plugin can <a href="https://plugin-planet.com/bbq-pro-add-ultimate-ai-block-list/" title="BBQ Pro - Add the Ultimate AI Block List" target="_blank">add the Ultimate AI Block List with just a few clicks&nbsp;»</a></p>
  107. <h2 id="block-ai-via-robots">Block AI Bots via robots.txt</h2>
  108. <p>The easiest way for most website owners to block AI bots, is to append the following list to their site’s <a href="https://perishablepress.com/robots-notes-plus/" title="About the Robots.txt File">robots.txt file</a>. There are many resources explaining the robots.txt file, and I encourage anyone not familiar to take a few moments to <a href="#references" title="Scroll down to References">learn more</a>. </p>
  109. <p>In a nutshell, the robots.txt file is a file that contains rules for
  110. bots to obey. So you can add rules that limit where bots can crawl,
  111. whether individual pages or the entire site. Once you have added some
  112. rules, simply upload the robots file to the public root directory of
  113. your website. For example, here is my <a href="https://perishablepress.com/robots.txt" title="Perishable Press robots.txt file" target="_blank">robots.txt</a> for Perishable Press.</p>
  114. <div class="popout"><strong>Using WordPress?</strong> Block bad bots automatically with my free plugin, <a href="https://wordpress.org/plugins/blackhole-bad-bots/" title="Get it at WordPress.org" target="_blank">Blackhole for Bad Bots</a>. Trap bad bots in a virtual black hole :)</div>
  115. <p>To block AI bots via your site’s robots.txt file, append the following rules. Understand that <strong>bots are not required to obey</strong>
  116. robots.txt rules. Robots rules are merely suggestions. Good bots will
  117. follow the rules, bad bots will ignore the rules and do whatever they
  118. want. To force compliance, you can <a href="#block-ai-via-apache" title="Scroll down to Apache rules">add blocking rules via Apache/.htaccess</a>. That in mind, here are the robots rules to block AI bots..</p>
  119. <blockquote><p>Blocks over 700+ AI bots and user agents.</p></blockquote>
  120. <h3>Block list for robots.txt</h3>
  121. <p>Before using, read the <a href="#notes" title="Scroll down to Notes">Notes</a> and <a href="#disclaimer" title="Scroll down to Disclaimer">Disclaimer</a>.</p>
  122. <pre class="language-plaintext"><code data-highlighted="yes" class="hljs language-plaintext"># Ultimate AI Block List v1.8 20260105
  123. # https://perishablepress.com/ultimate-ai-block-list/
  124. # Allow all other bots full access
  125. User-agent: *
  126. Disallow:
  127. # Block AI bots from all access
  128. User-agent: .ai
  129. User-agent: -ai
  130. User-agent: _ai
  131. User-agent: ai.
  132. User-agent: ai-
  133. User-agent: ai_
  134. User-agent: ai=
  135. User-agent: AddSearchBot
  136. User-agent: Agentic
  137. User-agent: AgentQL
  138. User-agent: Agent 3
  139. User-agent: Agent API
  140. User-agent: Agent-
  141. User-agent: AI Agent
  142. User-agent: AI Article Writer
  143. User-agent: AI Assistant
  144. User-agent: AI Chat
  145. User-agent: AI Content Detector
  146. User-agent: AI Detection
  147. User-agent: AI Dungeon
  148. User-agent: AI Journalist
  149. User-agent: AI Legion
  150. User-agent: AI RAG
  151. User-agent: AI Search
  152. User-agent: AI SEO Crawler
  153. User-agent: AI Training
  154. User-agent: AI Web
  155. User-agent: AI Writer
  156. User-agent: AI2
  157. User-agent: AIBot
  158. User-agent: aiHitBot
  159. User-agent: AIMatrix
  160. User-agent: Airesearch
  161. User-agent: AISearch
  162. User-agent: AITraining
  163. User-agent: Alexa
  164. User-agent: Alice Yandex
  165. User-agent: AliGenie
  166. User-agent: AliyunSec
  167. User-agent: Alpha AI
  168. User-agent: AlphaAI
  169. User-agent: Amazon
  170. User-agent: Amelia
  171. User-agent: AndersPinkBot
  172. User-agent: AndiBot
  173. User-agent: Anomura
  174. User-agent: Anonymous AI
  175. User-agent: Anthropic
  176. User-agent: AnyPicker
  177. User-agent: Anyword
  178. User-agent: Applebot
  179. User-agent: Aria AI
  180. User-agent: Aria Browse
  181. User-agent: Articoolo
  182. User-agent: Ask AI
  183. User-agent: Atlassian
  184. User-agent: AutoGen
  185. User-agent: Automated Writer
  186. User-agent: AutoML
  187. User-agent: Autonomous RAG
  188. User-agent: AutoRAG
  189. User-agent: Awario
  190. User-agent: AWS Trainium
  191. User-agent: Azure
  192. User-agent: BabyAGI
  193. User-agent: BabyCatAGI
  194. User-agent: BardBot
  195. User-agent: Basic RAG
  196. User-agent: Bedrock
  197. User-agent: Big Sur
  198. User-agent: Bigsur
  199. User-agent: Botsonic
  200. User-agent: Brightbot
  201. User-agent: Browser MCP Agent
  202. User-agent: Browser Use
  203. User-agent: BuddyBot
  204. User-agent: Bytebot
  205. User-agent: ByteDance
  206. User-agent: Bytespider
  207. User-agent: CarynAI
  208. User-agent: CatBoost
  209. User-agent: CC-Crawler
  210. User-agent: CCBot
  211. User-agent: Chai
  212. User-agent: Channel3Bot
  213. User-agent: Character
  214. User-agent: Charstar AI
  215. User-agent: Chatbot
  216. User-agent: Chatsonic
  217. User-agent: ChatUser
  218. User-agent: Chinchilla
  219. User-agent: Claude
  220. User-agent: ClearScope
  221. User-agent: Clearview
  222. User-agent: Cognitive AI
  223. User-agent: Cohere
  224. User-agent: Common Crawl
  225. User-agent: CommonCrawl
  226. User-agent: Compass
  227. User-agent: Content Harmony
  228. User-agent: Content King
  229. User-agent: Content Optimizer
  230. User-agent: Content Samurai
  231. User-agent: ContentAtScale
  232. User-agent: ContentBot
  233. User-agent: Contentedge
  234. User-agent: ContentShake
  235. User-agent: Conversion AI
  236. User-agent: Copilot
  237. User-agent: CopyAI
  238. User-agent: Copymatic
  239. User-agent: Copyscape
  240. User-agent: CoreWeave
  241. User-agent: Corrective RAG
  242. User-agent: Cotoyogi
  243. User-agent: CRAB
  244. User-agent: Crawl4AI
  245. User-agent: CrawlQ AI
  246. User-agent: Crawlspace
  247. User-agent: Crew AI
  248. User-agent: CrewAI
  249. User-agent: Crushon AI
  250. User-agent: Cypex
  251. User-agent: DALL-E
  252. User-agent: DarkBard
  253. User-agent: DarkBERT
  254. User-agent: DataFor
  255. User-agent: DataProvider
  256. User-agent: Datenbank Crawler
  257. User-agent: DeepAI
  258. User-agent: Deep AI
  259. User-agent: DeepL
  260. User-agent: DeepMind
  261. User-agent: Deep Research
  262. User-agent: DeepResearch
  263. User-agent: DeepSeek
  264. User-agent: Devin
  265. User-agent: Diffbot
  266. User-agent: Dolma
  267. User-agent: Doubao AI
  268. User-agent: DuckAssistBot
  269. User-agent: DuckDuckGo Chat
  270. User-agent: DuckDuckGo-Enhanced
  271. User-agent: Echobot
  272. User-agent: Echobox
  273. User-agent: Elixir
  274. User-agent: FacebookBot
  275. User-agent: FacebookExternalHit
  276. User-agent: Factset
  277. User-agent: Falcon
  278. User-agent: FIRE-1
  279. User-agent: Firebase
  280. User-agent: Firecrawl
  281. User-agent: Flyriver
  282. User-agent: Frase AI
  283. User-agent: FriendlyCrawler
  284. User-agent: Gato
  285. User-agent: Gemini
  286. User-agent: Gemma
  287. User-agent: Gen AI
  288. User-agent: GenAI
  289. User-agent: Generative
  290. User-agent: Genspark
  291. User-agent: Gentoo-chat
  292. User-agent: Ghostwriter
  293. User-agent: GigaChat
  294. User-agent: GLM
  295. User-agent: GodMode
  296. User-agent: Goose
  297. User-agent: GPT
  298. User-agent: Grammarly
  299. User-agent: Grendizer
  300. User-agent: Grok
  301. User-agent: Groq
  302. User-agent: GT Bot
  303. User-agent: GTBot
  304. User-agent: GTP
  305. User-agent: Hemingway Editor
  306. User-agent: Hetzner
  307. User-agent: Hugging
  308. User-agent: Hunyuan
  309. User-agent: Hybrid Search RAG
  310. User-agent: Hypotenuse AI
  311. User-agent: iAsk
  312. User-agent: IbouBot
  313. User-agent: ICC-Crawler
  314. User-agent: Ideogram
  315. User-agent: ImageGen
  316. User-agent: Imagen
  317. User-agent: ImagesiftBot
  318. User-agent: ImageSpider
  319. User-agent: img2dataset
  320. User-agent: imgproxy
  321. User-agent: INK Editor
  322. User-agent: INKforall
  323. User-agent: Instructor
  324. User-agent: IntelliSeek
  325. User-agent: Inferkit
  326. User-agent: ISSCyberRiskCrawler
  327. User-agent: Janitor AI
  328. User-agent: Jasper
  329. User-agent: Jenni AI
  330. User-agent: Julius AI
  331. User-agent: Kafkai
  332. User-agent: Kaggle
  333. User-agent: Kangaroo
  334. User-agent: Keyword Density AI
  335. User-agent: Kimi
  336. User-agent: Klaviyo
  337. User-agent: Knowledge
  338. User-agent: KomoBot
  339. User-agent: Kruti
  340. User-agent: KunatoCrawler
  341. User-agent: LAIONDownloader
  342. User-agent: LangChain
  343. User-agent: Langfuse
  344. User-agent: Language AI
  345. User-agent: Le Chat
  346. User-agent: Lensa
  347. User-agent: Leonardo
  348. User-agent: Lightpanda
  349. User-agent: LightRAG
  350. User-agent: LinerBot
  351. User-agent: LinkupBot
  352. User-agent: LLaMA
  353. User-agent: LCC
  354. User-agent: LLM
  355. User-agent: Local RAG Agent
  356. User-agent: Lovable
  357. User-agent: Magistral
  358. User-agent: magpie-crawler
  359. User-agent: MAI-Image
  360. User-agent: Manus
  361. User-agent: MarketMuse
  362. User-agent: MBZUAI
  363. User-agent: Meltwater
  364. User-agent: Meta-AI
  365. User-agent: Meta-External
  366. User-agent: Meta-Webindexer
  367. User-agent: Meta AI
  368. User-agent: MetaAI
  369. User-agent: MetaTagBot
  370. User-agent: Middleware
  371. User-agent: Midjourney
  372. User-agent: Mini AGI
  373. User-agent: MiniMax
  374. User-agent: Mintlify
  375. User-agent: Mistral
  376. User-agent: Mixtral
  377. User-agent: model-training
  378. User-agent: Molmo
  379. User-agent: Monica
  380. User-agent: Nano
  381. User-agent: Narrative
  382. User-agent: NeevaBot
  383. User-agent: netEstate
  384. User-agent: Neural Text
  385. User-agent: NeuralSEO
  386. User-agent: NinjaAI
  387. User-agent: NodeZero
  388. User-agent: NotebookLM
  389. User-agent: Nova Act
  390. User-agent: NovaAct
  391. User-agent: Nytheon
  392. User-agent: OAI-SearchBot
  393. User-agent: OAI SearchBot
  394. User-agent: OASIS
  395. User-agent: Olivia
  396. User-agent: OLM
  397. User-agent: Omgili
  398. User-agent: Onyx
  399. User-agent: Open AI
  400. User-agent: Open Interpreter
  401. User-agent: OpenAGI
  402. User-agent: OpenAI
  403. User-agent: OpenBot
  404. User-agent: OpenInterpreter
  405. User-agent: OpenPi
  406. User-agent: OpenRouter
  407. User-agent: OpenText AI
  408. User-agent: Operator
  409. User-agent: Outwrite
  410. User-agent: OVHcloud
  411. User-agent: Owlin
  412. User-agent: Page Analyzer AI
  413. User-agent: PaLM 2
  414. User-agent: PanguBot
  415. User-agent: Panscient
  416. User-agent: Paperlibot
  417. User-agent: Paraphraser.io
  418. User-agent: peer39_crawler
  419. User-agent: Perflexity
  420. User-agent: Perplexity
  421. User-agent: Petal
  422. User-agent: Phind
  423. User-agent: PiplBot
  424. User-agent: Pixmo
  425. User-agent: Playwright
  426. User-agent: PoeBot
  427. User-agent: PoeSearchBot
  428. User-agent: Poggio
  429. User-agent: Poseidon
  430. User-agent: ProWritingAid
  431. User-agent: Proximic
  432. User-agent: PulsarRPA
  433. User-agent: Puppeteer
  434. User-agent: Python AI
  435. User-agent: Python lxml
  436. User-agent: PyTorch
  437. User-agent: Qualified
  438. User-agent: Quark
  439. User-agent: QuillBot
  440. User-agent: Qopywriter
  441. User-agent: Qwen
  442. User-agent: RAG Agent
  443. User-agent: RAG Azure AI
  444. User-agent: RAG Chatbot
  445. User-agent: RAG Database
  446. User-agent: RAG IS
  447. User-agent: RAG Pipeline
  448. User-agent: RAG Search
  449. User-agent: RAG with
  450. User-agent: RAG-
  451. User-agent: RAG_
  452. User-agent: Raptor
  453. User-agent: React Agent
  454. User-agent: Reasoning
  455. User-agent: Redis AI RAG
  456. User-agent: Reka Flash
  457. User-agent: Replicate
  458. User-agent: RobotSpider
  459. User-agent: RunPod
  460. User-agent: Rytr
  461. User-agent: SaplingAI
  462. User-agent: SBIntuitionsBot
  463. User-agent: Scala
  464. User-agent: Scalenut
  465. User-agent: Scrap
  466. User-agent: ScriptBook
  467. User-agent: Seekr
  468. User-agent: SEObot
  469. User-agent: SEO Content Machine
  470. User-agent: SEO Robot
  471. User-agent: SemrushBot
  472. User-agent: Sentibot
  473. User-agent: Serper
  474. User-agent: ShapBot
  475. User-agent: Sidetrade
  476. User-agent: Simplified AI
  477. User-agent: Sitefinity
  478. User-agent: Skydancer
  479. User-agent: Skyvern
  480. User-agent: SlickWrite
  481. User-agent: SmartBot
  482. User-agent: Sonic
  483. User-agent: Sora
  484. User-agent: Spider/2
  485. User-agent: SpiderCreator
  486. User-agent: Spin Rewrite
  487. User-agent: Spinbot
  488. User-agent: Stability
  489. User-agent: Stable Diffusion
  490. User-agent: StableDiffusionBot
  491. User-agent: Stagehand
  492. User-agent: Stealth
  493. User-agent: Sudowrite
  494. User-agent: SummalyBot
  495. User-agent: Super Agent
  496. User-agent: Superagent
  497. User-agent: SuperAGI
  498. User-agent: Surfer AI
  499. User-agent: Taiko
  500. User-agent: TavilyBot
  501. User-agent: TerraCotta
  502. User-agent: Text Blaze
  503. User-agent: TextCortex
  504. User-agent: Thinkbot
  505. User-agent: Thordata
  506. User-agent: TikTokSpider
  507. User-agent: Timpibot
  508. User-agent: Tinybird
  509. User-agent: Together
  510. User-agent: Traefik
  511. User-agent: Tulu
  512. User-agent: Tülu
  513. User-agent: TurnitinBot
  514. User-agent: TwinAgent
  515. User-agent: uAgents
  516. User-agent: UI-TARS
  517. User-agent: VelenPublicWebCrawler
  518. User-agent: Venus Chub AI
  519. User-agent: Vidnami AI
  520. User-agent: Vision RAG
  521. User-agent: WARDBot
  522. User-agent: WebSurfer
  523. User-agent: WebText
  524. User-agent: WebVoyager
  525. User-agent: Webzio
  526. User-agent: WeChat
  527. User-agent: Whisper
  528. User-agent: WordAI
  529. User-agent: Wordtune
  530. User-agent: WPBot
  531. User-agent: Writecream
  532. User-agent: WriterZen
  533. User-agent: Writescope
  534. User-agent: Writesonic
  535. User-agent: WRTNBot
  536. User-agent: xAI
  537. User-agent: Xanthorox
  538. User-agent: xBot
  539. User-agent: XLNet
  540. User-agent: YaK
  541. User-agent: YaML
  542. User-agent: YandexAdditional
  543. User-agent: YouBot
  544. User-agent: Zanista
  545. User-agent: Zendesk
  546. User-agent: Zero
  547. User-agent: Zhipu
  548. User-agent: Zhuque AI
  549. User-agent: Zimm
  550. Disallow: /</code></pre>
  551. <div class="popout"><strong>Important:</strong> Whenever making changes to your robots.txt file, take a few moments to <a href="https://www.google.com/search?q=validate+robots.txt+online" title="Search via Google" target="_blank">validate the rules</a> using a free online robots checker.</div>
  552. <h2 id="block-ai-via-apache">Block AI Bots via Apache/.htaccess</h2>
  553. <p>To actually <strong>enforce</strong> the “Ultimate AI Block List”, you can add the following rules to your Apache configuration or main <a href="https://wp-mix.com/create-htaccess-files-osx-windows/" title="Create .htaccess files on OS X and Windows" target="_blank">.htaccess file</a>. Like many others, I’ve written <strong>extensively</strong> on <a href="https://perishablepress.com/tag/apache/" title="Explore articles on Apache">Apache</a> and <a href="https://perishablepress.com/category/web-design/htaccess/" title="Explore articles on .htaccess">.htaccess</a>. So if you’re unfamiliar, there are plenty of great resources, including my book <a href="https://htaccessbook.com/" title="Secure and optimize your site" target="_blank">.htaccess made easy</a>.</p>
  554. <p>In a nutshell, you can add rules via Apache/.htaccess to customize
  555. the functionality of your website. For example, you can add directives
  556. that help control traffic, optimize caching, improve performance, and
  557. even <a href="https://perishablepress.com/block-bad-bots/" title="How to Block Bad Bots">block bad bots</a>. And these rules operate at the server level. So while bots may ignore rules added via <a href="#block-ai-via-robots">robots.txt</a>, they can’t ignore rules added via Apache/.htaccess (unless they falsify their user agent).</p>
  558. <div class="popout"><strong>Using Apache?</strong> Check out my free, open-source <a href="https://perishablepress.com/8g-firewall/" title="8G Firewall at Perishable Press">8G Firewall</a>. <abbr title="8th Generation">8G</abbr> is lightweight, fast, and protects your site against a wide range of threats.</div>
  559. <p>To block AI bots via Apache/.htaccess, add the following rules to
  560. either your server configuration file, or add to the main (public root)
  561. .htaccess file. Before making any changes, be on the safe side and make a
  562. backup of your files. Just in case something unexpected happens, you
  563. can easily roll back. That in mind, here are the Apache rules to block
  564. AI bots..</p>
  565. <blockquote><p>Blocks over 700+ AI bots and user agents.</p></blockquote>
  566. <h3>Block list for Apache/.htaccess</h3>
  567. <p>Before using, read the <a href="#notes" title="Scroll down to Notes">Notes</a> and <a href="#disclaimer" title="Scroll down to Disclaimer">Disclaimer</a>.</p>
  568. <pre class="language-apache"><code data-highlighted="yes" class="hljs language-apache"><span class="hljs-comment"># Ultimate AI Block List v1.8 20260105</span>
  569. <span class="hljs-comment"># https://perishablepress.com/ultimate-ai-block-list/</span>
  570. <span class="hljs-section">&lt;IfModule mod_rewrite.c&gt;</span>
  571. <span class="hljs-attribute">RewriteEngine</span> <span class="hljs-literal">On</span>
  572. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (\.ai|-ai|_ai|ai\.|ai-|ai_|ai=|AddSearchBot|Agentic|AgentQL|Agent\ <span class="hljs-number">3</span>|Agent\ API|Agent-|AI\ Agent|AI\ Article\ Writer|AI\ Assistant|AI\ Chat|AI\ Content\ Detector|AI\ Detection|AI\ Dungeon)<span class="hljs-meta"> [NC,OR]</span>
  573. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (AI\ Journalist|AI\ Legion|AI\ RAG|AI\ Search|AI\ SEO\ Crawler|AI\ Training|AI\ Web|AI\ Writer|AI2|AIBot|aiHitBot|AIMatrix|Airesearch|AISearch|AITraining|Alexa|Alice\ Yandex|AliGenie|AliyunSec|Alpha\ AI)<span class="hljs-meta"> [NC,OR]</span>
  574. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (AlphaAI|Amazon|Amelia|AndersPinkBot|AndiBot|Anomura|Anonymous\ AI|Anthropic|AnyPicker|Anyword|Applebot|Aria\ AI|Aria\ Browse|Articoolo|Ask\ AI|Atlassian|AutoGen|Automated\ Writer|AutoML|Autonomous\ RAG)<span class="hljs-meta"> [NC,OR]</span>
  575. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (AutoRAG|Awario|AWS\ Trainium|Azure|BabyAGI|BabyCatAGI|BardBot|Basic\ RAG|Bedrock|Big\ Sur|Bigsur|Botsonic|Brightbot|Browser\ MCP\ Agent|Browser\ Use|BuddyBot|Bytebot|ByteDance|Bytespider|CarynAI)<span class="hljs-meta"> [NC,OR]</span>
  576. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (CatBoost|CC-Crawler|CCBot|Chai|Channel3Bot|Character|Charstar\ AI|Chatbot|Chatsonic|ChatUser|Chinchilla|Claude|ClearScope|Clearview|Cognitive\ AI|Cohere|Common\ Crawl|CommonCrawl|Compass|Content\ Harmony)<span class="hljs-meta"> [NC,OR]</span>
  577. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Content\ King|Content\ Optimizer|Content\ Samurai|ContentAtScale|ContentBot|Contentedge|ContentShake|Conversion\ AI|Copilot|CopyAI|Copymatic|Copyscape|CoreWeave|Corrective\ RAG|Cotoyogi|CRAB|Crawl4AI|CrawlQ\ AI|Crawlspace|Crew\ AI)<span class="hljs-meta"> [NC,OR]</span>
  578. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (CrewAI|Crushon\ AI|Cypex|DALL-E|DarkBard|DarkBERT|DataFor|DataProvider|Datenbank\ Crawler|DeepAI|Deep\ AI|DeepL|DeepMind|Deep\ Research|DeepResearch|DeepSeek|Devin|Diffbot|Dolma|Doubao\ AI)<span class="hljs-meta"> [NC,OR]</span>
  579. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (DuckAssistBot|DuckDuckGo\ Chat|DuckDuckGo-Enhanced|Echobot|Echobox|Elixir|FacebookBot|FacebookExternalHit|Factset|Falcon|FIRE-<span class="hljs-number">1</span>|Firebase|Firecrawl|Flyriver|Frase\ AI|FriendlyCrawler|Gato|Gemini|Gemma|Gen\ AI)<span class="hljs-meta"> [NC,OR]</span>
  580. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (GenAI|Generative|Genspark|Gentoo-chat|Ghostwriter|GigaChat|GLM|GodMode|Goose|GPT|Grammarly|Grendizer|Grok|Groq|GT\ Bot|GTBot|GTP|Hemingway\ Editor|Hetzner|Hugging)<span class="hljs-meta"> [NC,OR]</span>
  581. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Hunyuan|Hybrid\ Search\ RAG|Hypotenuse\ AI|iAsk|IbouBot|ICC-Crawler|Ideogram|ImageGen|Imagen|ImagesiftBot|ImageSpider|img2dataset|imgproxy|INK\ Editor|INKforall|Instructor|IntelliSeek|Inferkit|ISSCyberRiskCrawler|Janitor\ AI)<span class="hljs-meta"> [NC,OR]</span>
  582. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Jasper|Jenni\ AI|Julius\ AI|Kafkai|Kaggle|Kangaroo|Keyword\ Density\ AI|Kimi|Klaviyo|Knowledge|KomoBot|Kruti|KunatoCrawler|LAIONDownloader|LangChain|Langfuse|Language\ AI|Le\ Chat|Lensa|Leonardo)<span class="hljs-meta"> [NC,OR]</span>
  583. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Lightpanda|LightRAG|LinerBot|LinkupBot|LLaMA|LCC|LLM|Local\ RAG\ Agent|Lovable|Magistral|magpie-crawler|MAI-Image|Manus|MarketMuse|MBZUAI|Meltwater|Meta-AI|Meta-External|Meta-Webindexer|Meta\ AI)<span class="hljs-meta"> [NC,OR]</span>
  584. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (MetaAI|MetaTagBot|Middleware|Midjourney|Mini\ AGI|MiniMax|Mintlify|Mistral|Mixtral|model-training|Molmo|Monica|Nano|Narrative|NeevaBot|netEstate|Neural\ Text|NeuralSEO|NinjaAI|NodeZero)<span class="hljs-meta"> [NC,OR]</span>
  585. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (NotebookLM|Nova\ Act|NovaAct|Nytheon|OAI-SearchBot|OAI\ SearchBot|OASIS|Olivia|OLM|Omgili|Onyx|Open\ AI|Open\ Interpreter|OpenAGI|OpenAI|OpenBot|OpenInterpreter|OpenPi|OpenRouter|OpenText\ AI)<span class="hljs-meta"> [NC,OR]</span>
  586. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Operator|Outwrite|OVHcloud|Owlin|Page\ Analyzer\ AI|PaLM\ <span class="hljs-number">2</span>|PanguBot|Panscient|Paperlibot|Paraphraser\.io|peer39_crawler|Perflexity|Perplexity|Petal|Phind|PiplBot|Pixmo|Playwright|PoeBot|PoeSearchBot)<span class="hljs-meta"> [NC,OR]</span>
  587. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Poggio|Poseidon|ProWritingAid|Proximic|PulsarRPA|Puppeteer|Python\ AI|Python\ lxml|PyTorch|Qualified|Quark|QuillBot|Qopywriter|Qwen|RAG\ Agent|RAG\ Azure\ AI|RAG\ Chatbot|RAG\ Database|RAG\ IS|RAG\ Pipeline)<span class="hljs-meta"> [NC,OR]</span>
  588. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (RAG\ Search|RAG\ with|RAG-|RAG_|Raptor|React\ Agent|Reasoning|Redis\ AI\ RAG|Reka\ Flash|Replicate|RobotSpider|RunPod|Rytr|SaplingAI|SBIntuitionsBot|Scala|Scalenut|Scrap|ScriptBook|Seekr)<span class="hljs-meta"> [NC,OR]</span>
  589. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (SEObot|SEO\ Content\ Machine|SEO\ Robot|SemrushBot|Sentibot|Serper|ShapBot|Sidetrade|Simplified\ AI|Sitefinity|Skydancer|Skyvern|SlickWrite|SmartBot|Sonic|Sora|Spider/<span class="hljs-number">2</span>|SpiderCreator|Spin\ Rewrite|Spinbot)<span class="hljs-meta"> [NC,OR]</span>
  590. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Stability|Stable\ Diffusion|StableDiffusionBot|Stagehand|Stealth|Sudowrite|SummalyBot|Super\ Agent|Superagent|SuperAGI|Surfer\ AI|Taiko|TavilyBot|TerraCotta|Text\ Blaze|TextCortex|Thinkbot|Thordata|TikTokSpider|Timpibot)<span class="hljs-meta"> [NC,OR]</span>
  591. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Tinybird|Together|Traefik|Tulu|Tülu|TurnitinBot|TwinAgent|uAgents|UI-TARS|VelenPublicWebCrawler|Venus\ Chub\ AI|Vidnami\ AI|Vision\ RAG|WARDBot|WebSurfer|WebText|WebVoyager|Webzio|WeChat|Whisper)<span class="hljs-meta"> [NC,OR]</span>
  592. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (WordAI|Wordtune|WPBot|Writecream|WriterZen|Writescope|Writesonic|WRTNBot|xAI|Xanthorox|xBot|XLNet|YaK|YaML|YandexAdditional|YouBot|Zanista|Zendesk|Zero|Zhipu)<span class="hljs-meta"> [NC,OR]</span>
  593. <span class="hljs-attribute">RewriteCond</span> <span class="hljs-variable">%{HTTP_USER_AGENT}</span> (Zhuque\ AI|Zimm)<span class="hljs-meta"> [NC]</span>
  594. <span class="hljs-attribute">RewriteRule</span> (.*) -<span class="hljs-meta"> [F,L]</span>
  595. <span class="hljs-section">&lt;/IfModule&gt;</span></code></pre>
  596. <div class="popout"><strong>Important:</strong> Remember to test well before going live. You can use a free user-agent request tool to make requests posing as various AI bots.</div>
  597. <h2 id="block-ai-nginx">Block AI Bots via Nginx</h2>
  598. <p>As with the previous <a href="#block-ai-via-apache" title="Go to Apache rules">Apache rules</a>, you can go beyond robots.txt and actually <strong>enforce</strong>
  599. the “Ultimate AI Block List”, by adding the following rules to your
  600. Nginx configuration file. Like Apache, Nginx directives operate at the
  601. server level. So while bots may ignore rules added via <a href="#block-ai-via-robots">robots.txt</a>, they can’t ignore rules added via Nginx configuration (unless they falsify their user agent).</p>
  602. <p>To block AI bots via Nginx, add the following rules to your main
  603. server configuration file. Before making any changes, be on the safe
  604. side and make a backup of your files. Just in case something unexpected
  605. happens, you can easily roll back. That in mind, here are the
  606. Nginx-formatted rules to block AI bots..</p>
  607. <blockquote><p>Blocks over 700+ AI bots and user agents.</p></blockquote>
  608. <h3>Block list for Nginx</h3>
  609. <p>Before using, read the <a href="#notes" title="Scroll down to Notes">Notes</a> and <a href="#disclaimer" title="Scroll down to Disclaimer">Disclaimer</a>.</p>
  610. <pre class="language-apache"><code data-highlighted="yes" class="hljs language-apache"><span class="hljs-comment"># Ultimate AI Block List v1.8 20260105</span>
  611. <span class="hljs-comment"># https://perishablepress.com/ultimate-ai-block-list/</span>
  612. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(\.ai|-ai|_ai|ai\.|ai-|ai_|ai=|AddSearchBot|Agentic|AgentQL|Agent\ 3|Agent\ API|Agent-|AI\ Agent|AI\ Article\ Writer|AI\ Assistant|AI\ Chat|AI\ Content\ Detector|AI\ Detection|AI\ Dungeon)"</span>) {
  613. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  614. }
  615. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(AI\ Journalist|AI\ Legion|AI\ RAG|AI\ Search|AI\ SEO\ Crawler|AI\ Training|AI\ Web|AI\ Writer|AI2|AIBot|aiHitBot|AIMatrix|Airesearch|AISearch|AITraining|Alexa|Alice\ Yandex|AliGenie|AliyunSec|Alpha\ AI)"</span>) {
  616. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  617. }
  618. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(AlphaAI|Amazon|Amelia|AndersPinkBot|AndiBot|Anomura|Anonymous\ AI|Anthropic|AnyPicker|Anyword|Applebot|Aria\ AI|Aria\ Browse|Articoolo|Ask\ AI|Atlassian|AutoGen|Automated\ Writer|AutoML|Autonomous\ RAG)"</span>) {
  619. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  620. }
  621. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(AutoRAG|Awario|AWS\ Trainium|Azure|BabyAGI|BabyCatAGI|BardBot|Basic\ RAG|Bedrock|Big\ Sur|Bigsur|Botsonic|Brightbot|Browser\ MCP\ Agent|Browser\ Use|BuddyBot|Bytebot|ByteDance|Bytespider|CarynAI)"</span>) {
  622. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  623. }
  624. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(CatBoost|CC-Crawler|CCBot|Chai|Channel3Bot|Character|Charstar\ AI|Chatbot|Chatsonic|ChatUser|Chinchilla|Claude|ClearScope|Clearview|Cognitive\ AI|Cohere|Common\ Crawl|CommonCrawl|Compass|Content\ Harmony)"</span>) {
  625. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  626. }
  627. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Content\ King|Content\ Optimizer|Content\ Samurai|ContentAtScale|ContentBot|Contentedge|ContentShake|Conversion\ AI|Copilot|CopyAI|Copymatic|Copyscape|CoreWeave|Corrective\ RAG|Cotoyogi|CRAB|Crawl4AI|CrawlQ\ AI|Crawlspace|Crew\ AI)"</span>) {
  628. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  629. }
  630. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(CrewAI|Crushon\ AI|Cypex|DALL-E|DarkBard|DarkBERT|DataFor|DataProvider|Datenbank\ Crawler|DeepAI|Deep\ AI|DeepL|DeepMind|Deep\ Research|DeepResearch|DeepSeek|Devin|Diffbot|Dolma|Doubao\ AI)"</span>) {
  631. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  632. }
  633. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(DuckAssistBot|DuckDuckGo\ Chat|DuckDuckGo-Enhanced|Echobot|Echobox|Elixir|FacebookBot|FacebookExternalHit|Factset|Falcon|FIRE-1|Firebase|Firecrawl|Flyriver|Frase\ AI|FriendlyCrawler|Gato|Gemini|Gemma|Gen\ AI)"</span>) {
  634. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  635. }
  636. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(GenAI|Generative|Genspark|Gentoo-chat|Ghostwriter|GigaChat|GLM|GodMode|Goose|GPT|Grammarly|Grendizer|Grok|Groq|GT\ Bot|GTBot|GTP|Hemingway\ Editor|Hetzner|Hugging)"</span>) {
  637. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  638. }
  639. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Hunyuan|Hybrid\ Search\ RAG|Hypotenuse\ AI|iAsk|IbouBot|ICC-Crawler|Ideogram|ImageGen|Imagen|ImagesiftBot|ImageSpider|img2dataset|imgproxy|INK\ Editor|INKforall|Instructor|IntelliSeek|Inferkit|ISSCyberRiskCrawler|Janitor\ AI)"</span>) {
  640. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  641. }
  642. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Jasper|Jenni\ AI|Julius\ AI|Kafkai|Kaggle|Kangaroo|Keyword\ Density\ AI|Kimi|Klaviyo|Knowledge|KomoBot|Kruti|KunatoCrawler|LAIONDownloader|LangChain|Langfuse|Language\ AI|Le\ Chat|Lensa|Leonardo)"</span>) {
  643. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  644. }
  645. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Lightpanda|LightRAG|LinerBot|LinkupBot|LLaMA|LCC|LLM|Local\ RAG\ Agent|Lovable|Magistral|magpie-crawler|MAI-Image|Manus|MarketMuse|MBZUAI|Meltwater|Meta-AI|Meta-External|Meta-Webindexer|Meta\ AI)"</span>) {
  646. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  647. }
  648. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(MetaAI|MetaTagBot|Middleware|Midjourney|Mini\ AGI|MiniMax|Mintlify|Mistral|Mixtral|model-training|Molmo|Monica|Nano|Narrative|NeevaBot|netEstate|Neural\ Text|NeuralSEO|NinjaAI|NodeZero)"</span>) {
  649. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  650. }
  651. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(NotebookLM|Nova\ Act|NovaAct|Nytheon|OAI-SearchBot|OAI\ SearchBot|OASIS|Olivia|OLM|Omgili|Onyx|Open\ AI|Open\ Interpreter|OpenAGI|OpenAI|OpenBot|OpenInterpreter|OpenPi|OpenRouter|OpenText\ AI)"</span>) {
  652. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  653. }
  654. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Operator|Outwrite|OVHcloud|Owlin|Page\ Analyzer\ AI|PaLM\ 2|PanguBot|Panscient|Paperlibot|Paraphraser\.io|peer39_crawler|Perflexity|Perplexity|Petal|Phind|PiplBot|Pixmo|Playwright|PoeBot|PoeSearchBot)"</span>) {
  655. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  656. }
  657. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Poggio|Poseidon|ProWritingAid|Proximic|PulsarRPA|Puppeteer|Python\ AI|Python\ lxml|PyTorch|Qualified|Quark|QuillBot|Qopywriter|Qwen|RAG\ Agent|RAG\ Azure\ AI|RAG\ Chatbot|RAG\ Database|RAG\ IS|RAG\ Pipeline)"</span>) {
  658. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  659. }
  660. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(RAG\ Search|RAG\ with|RAG-|RAG_|Raptor|React\ Agent|Reasoning|Redis\ AI\ RAG|Reka\ Flash|Replicate|RobotSpider|RunPod|Rytr|SaplingAI|SBIntuitionsBot|Scala|Scalenut|Scrap|ScriptBook|Seekr)"</span>) {
  661. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  662. }
  663. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(SEObot|SEO\ Content\ Machine|SEO\ Robot|SemrushBot|Sentibot|Serper|ShapBot|Sidetrade|Simplified\ AI|Sitefinity|Skydancer|Skyvern|SlickWrite|SmartBot|Sonic|Sora|Spider/2|SpiderCreator|Spin\ Rewrite|Spinbot)"</span>) {
  664. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  665. }
  666. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Stability|Stable\ Diffusion|StableDiffusionBot|Stagehand|Stealth|Sudowrite|SummalyBot|Super\ Agent|Superagent|SuperAGI|Surfer\ AI|Taiko|TavilyBot|TerraCotta|Text\ Blaze|TextCortex|Thinkbot|Thordata|TikTokSpider|Timpibot)"</span>) {
  667. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  668. }
  669. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Tinybird|Together|Traefik|Tulu|Tülu|TurnitinBot|TwinAgent|uAgents|UI-TARS|VelenPublicWebCrawler|Venus\ Chub\ AI|Vidnami\ AI|Vision\ RAG|WARDBot|WebSurfer|WebText|WebVoyager|Webzio|WeChat|Whisper)"</span>) {
  670. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  671. }
  672. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(WordAI|Wordtune|WPBot|Writecream|WriterZen|Writescope|Writesonic|WRTNBot|xAI|Xanthorox|xBot|XLNet|YaK|YaML|YandexAdditional|YouBot|Zanista|Zendesk|Zero|Zhipu)"</span>) {
  673. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  674. }
  675. <span class="hljs-attribute">if</span> ($http_user_agent ~* <span class="hljs-string">"(Zhuque\ AI|Zimm)"</span>) {
  676. <span class="hljs-attribute">return</span> <span class="hljs-number">403</span>;
  677. }</code></pre>
  678. <div class="popout"><strong>Important:</strong> Remember to test well before going live. You can use a free user-agent request tool to make requests posing as various AI bots.</div>
  679. <h2 id="block-ai-text">Download plain-text list</h2>
  680. <p>Here is a plain-text version of the list. This list contains only the user-agent names, nothing else :)</p>
  681. <div id="simple-download-counter-20980" class="simple-download-counter download"><a class="simple-download-counter-link" href="https://perishablepress.com/sdc_download/20980/?key=9z062am59ioub8ses5brw71d7k4nii" title="896 downloads">Download Ultimate Block List for AI Bots</a><span class="simple-download-counter-after">Version <span class="simple-download-counter-version">1.8</span> ( <span class="simple-download-counter-size">3.96 KB</span> <span class="simple-download-counter-ext">TXT</span> )</span></div>
  682. <h2 id="notes">Notes</h2>
  683. <p><strong>Note:</strong> The four block lists above (robots.txt,
  684. Apache, Nginx, and Plain Text) are synchronized and include/block the
  685. same set of AI bots.</p>
  686. <p><strong>Note:</strong> Numerous user agents are omitted from the
  687. block lists because the names are matched in wild-card fashion. Here is a
  688. list showing <a target="_blank" href="https://perishablepress.com/blacklist/ai-bots-wild-card-blocked.txt" title="Text file opens new tab or window">wild-card blocked AI bots</a>.</p>
  689. <p><strong>Note:</strong> The block lists focus on AI-related bots. Some
  690. of those bots are used by giant corporations like Apple, Amazon, and
  691. Facebook. So please keep this in mind and feel free to remove any bots
  692. that you think should be allowed access to your site. Also be sure to
  693. check the list of <a target="_blank" href="https://perishablepress.com/blacklist/ai-bots-wild-card-blocked.txt" title="Text file opens new tab or window">wild-card blocked AI bots</a>.</p>
  694. <p><strong>Note:</strong> Each of the differently formatted block lists
  695. are case-insensitive. The robots.txt rules are case-insensitive by
  696. default, the Apache rules are case-insensitive due to the inclusion of
  697. the <code>[NC]</code> flag, and the Nginx rules are case-insensitive due to the tilde and asterisk <code>~*</code>. So don’t worry about mixed-case bot names, their user agents will be blocked, whether uppercase, lowercase, or mIxeD cAsE.</p>
  698. <p><strong>Note:</strong> If you don’t care about search results, you
  699. can add the following rules to your robots.txt file. All search-related
  700. AI bots were removed from the block list in version 1.4 (see <a href="#changelog" title="Jump to Changelog">changelog</a> below). Include the following only if you want to block major search engines like Bing, Google, and DuckDuckGo.</p>
  701. <pre class="language-plaintext"><code data-highlighted="yes" class="hljs language-plaintext">User-agent: Apple
  702. User-agent: BingAI
  703. User-agent: Bingbot-chat
  704. User-agent: Bravebot
  705. User-agent: Duck
  706. User-agent: Google Bard AI
  707. User-agent: Google-CloudVertexBot
  708. User-agent: Google-Extended
  709. User-agent: Google Gemini
  710. User-agent: GoogleOther
  711. User-agent: MSBot</code></pre>
  712. <div class="popout"><strong>Learn more:</strong> According to <a href="https://developers.google.com/crawling/docs/robots-txt/robots-txt-spec?hl=en#user-agent" title="How Google interprets the robots.txt specification" target="_blank">Google documentation</a>, the value of the user-agent line (in robots.txt) is case-insensitive.</div>
  713. <h2 id="changelog">Changelog</h2>
  714. <p><strong>Tip:</strong> The changelog below features the main changes like an overview, it does <em>not</em>
  715. chronicle every change to patterns, bots, details, and so forth. You
  716. can use a free online tool to compare block lists with previous
  717. versions, so you can figure out which bots have been added, removed, and
  718. other changes, etc.</p>
  719. <h3>v1.8 <span style="font-weight:normal;font-size:80%;">– 2026/01/05</span></h3>
  720. <ul>
  721. <li>Removes Flux</li>
  722. <li>Consolidates GLM bots</li>
  723. <li>Consolidates Awario bots</li>
  724. <li>Adds 60+ new patterns, matching many more user agents</li>
  725. <li>Streamlines numerous patterns, removes some patterns</li>
  726. <li>Improves pattern matching for more accurate blocking and better performance</li>
  727. <li>Updates the <a href="https://perishablepress.com/blacklist/ai-bots-wild-card-blocked.txt" title="Text file opens new tab or window" target="_blank">wild-card blocked AI bots</a> plain-text list</li>
  728. </ul>
  729. <h3>v1.7 <span style="font-weight:normal;font-size:80%;">– 2025/09/24</span></h3>
  730. <ul>
  731. <li>Removes Apple, adds Applebot</li>
  732. <li>Removes Brave Leo (Brave Browser Search)</li>
  733. <li>Adds 65 new patterns, matching many more user agents</li>
  734. <li>Streamlines numerous patterns, removes some patterns</li>
  735. <li>Improves pattern matching for more accurate blocking and better performance</li>
  736. <li>Updates the <a target="_blank" href="https://perishablepress.com/blacklist/ai-bots-wild-card-blocked.txt" title="Text file opens new tab or window">wild-card blocked AI bots</a> plain-text list</li>
  737. </ul>
  738. <h3>v1.6 <span style="font-weight:normal;font-size:80%;">– 2025/07/18</span></h3>
  739. <ul>
  740. <li>Adds <strong>many</strong> new AI bots/patterns</li>
  741. <li>Makes better use of wildcard matching to streamline the list while keeping false positives near zero</li>
  742. <li>Adds robots.txt rules to allow all other bots full access</li>
  743. <li>Improves alphabetization and formatting</li>
  744. <li>Replaces AI2Bot and AI2 Labs with AI2</li>
  745. <li>Replaces all specific Amazon bot names with Amazon</li>
  746. <li>Replaces Applebot with Apple</li>
  747. <li>Replaces LLMs with LLM</li>
  748. <li>Replaces WormsGTP with GTP</li>
  749. <li>Replaces Zero GTP and Zerochat with Zero</li>
  750. </ul>
  751. <h3>v1.5 <span style="font-weight:normal;font-size:80%;">– 2025/06/03</span></h3>
  752. <ul>
  753. <li>Adds Applebot</li>
  754. <li>Changes Phindbot to Phind</li>
  755. <li>Changes AI Search Engine to AI Search</li>
  756. <li>Adds: AI Chat, ai-proxy, aiHitBot, AndiBot, AutoGLM, AutoML,
  757. BabyAGI, Brightbot, chatbot, Factset, imgproxy, Lensa, Lightpanda,
  758. Manus, Monica, NovaAct, Puppeteer, Qualified, Qwen, SemrushBot,
  759. TikTokSpider, Traefik, VelenPublicWebCrawler, YaML</li>
  760. </ul>
  761. <h3>v1.4 <span style="font-weight:normal;font-size:80%;">– 2025/04/17</span></h3>
  762. <ul>
  763. <li>Removes Applebot</li>
  764. <li>Removes all 2 Bing agents</li>
  765. <li>Removes all 4 Google agents</li>
  766. <li>Changes PerplexityBot to Perplexity</li>
  767. <li>Adds: Azure, Falcon, Genspark, GLM, ImageGen, Knowledge, LLMs, Nova Act, Operator, Sitefinity, Sonic, Super Agent, Zhipu</li>
  768. <li>To restore blocking of search-related AI bots, check the <a href="#notes" title="Jump to Notes">notes</a> above for a list</li>
  769. </ul>
  770. <h3>Previous versions</h3>
  771. <ul>
  772. <li><strong>Version 1.3</strong> – 2025/03/10 – Adds more AI bots, refines list to make better use of wild-card pattern matching of user-agent names.</li>
  773. <li><strong>Version 1.2</strong> – 2025/02/12 – Adds 73 AI bots (Thanks to Robert DeVore)</li>
  774. <li><strong>Version 1.1</strong> – 2025/02/11 – Replaces <code>REQUEST_URI</code> with <code>HTTP_USER_AGENT</code></li>
  775. <li><strong>Version 1.0</strong> – 2025/02/11 – Initial release.</li>
  776. </ul>
  777. <h2 id="disclaimer">Disclaimer</h2>
  778. <p>The information shared on this page is provided “as-is”, with the intention of helping people protect their sites against <abbr title="Artificial Intelligence">AI</abbr>
  779. bots. The two block lists (robots.txt and Apache/.htaccess) are
  780. open-source and free to use and modify without condition. By using
  781. either block list, you assume all risk and responsibility for anything
  782. that happens. So use wisely, test thoroughly, and enjoy the benefits of
  783. my work :)</p>
  784. <h2 id="support">Support my work</h2>
  785. <p>I spend countless hours digging through server logs, researching user
  786. agents, and compiling block lists to stop AI and other unwanted bots. I
  787. share my work freely with the hope that it will help make the Web a
  788. more secure place for everyone.</p>
  789. <p>If you benefit from my work and want to show support, please <a href="https://monzillamedia.com/donate.html" title="My donation page at Monzilla Media" target="_blank">make a donation</a> or buy one of my <a href="https://books.perishablepress.com/" title="Perishable Press Bookstore">books</a>, such as <a href="https://htaccessbook.com/" title=".htaccess made easy" target="_blank">.htaccess made easy</a>. You’ll get a complete guide to .htaccess and a ton of awesome techniques for optimizing and securing your site.</p>
  790. <p>Of course, tweets, likes, links, and shares also are super helpful
  791. and very much appreciated. Your generous support enables me to continue
  792. developing AI block lists and other awesome resources for the community.
  793. Thank you kindly :)</p>
  794. <div class="popout"><strong>Show support!</strong> <a href="https://m0n.co/donate" target="_blank">Donate via PayPal</a>, <a href="https://m0n.co/donate-stripe" title="Donate via Stripe" target="_blank">Stripe</a>, or your favorite <a href="https://monzillamedia.com/donate.html" target="_blank">digital coin</a>&nbsp;»</div>
  795. <h2 id="references">References</h2>
  796. <p>Thanks to the following resources for sharing their work with identifying and blocking AI bots.</p>
  797. <ul>
  798. <li><a href="https://darkvisitors.com/agents" target="_blank">Dark Visitors ▸ Agents</a></li>
  799. <li><a href="https://ethanmarcotte.com/wrote/blockin-bots/" target="_blank">Blockin’ bots.</a></li>
  800. <li><a href="https://neil-clarke.com/block-the-bots-that-feed-ai-models-by-scraping-your-website/" target="_blank">Block the Bots that Feed AI Models by Scraping Your Website</a></li>
  801. <li><a href="https://coryd.dev/posts/2024/go-ahead-and-block-ai-web-crawlers" target="_blank">Go ahead and block AI web crawlers</a></li>
  802. <li><a href="https://roelant.net/en/2023/im-blocking-ai-crawlers/" target="_blank">I’m blocking AI-crawlers</a></li>
  803. <li><a href="https://github.com/tinaponting/ai-robots-scrapers" target="_blank">GitHub ▸ Tina Ponting’s AI Robots + Scrapers</a></li>
  804. <li><a href="https://github.com/robertdevore/block-ai-crawlers" target="_blank">GitHub ▸ Robert DeVore’s Block AI Crawlers</a></li>
  805. <li><a href="https://github.com/ai-robots-txt/ai.robots.txt" target="_blank">GitHub ▸ ai.robots.txt</a></li>
  806. <li><a href="https://platform.openai.com/docs/bots" target="_blank">Overview of OpenAI Crawlers</a></li>
  807. <li><a href="https://pirg.org/edfund/resources/how-to-stop-your-data-from-being-used-for-ai-training/" target="_blank">How to stop your data from being used for AI training</a></li>
  808. <li><a href="https://www.searchenginejournal.com/how-to-block-chatgpt-from-using-your-website-content/478384/" target="_blank">How to Block OpenAI ChatGPT From Using Your Website Content</a></li>
  809. <li><a href="https://arstechnica.com/tech-policy/2025/01/ai-haters-build-tarpits-to-trap-and-trick-ai-scrapers-that-ignore-robots-txt/" target="_blank">AI haters build tarpits to trap and trick AI scrapers</a></li>
  810. <li><a href="https://originality.ai/ai-bot-blocking" target="_blank">Block AI Bots from Crawling Websites Using Robots.txt</a></li>
  811. <li><a href="https://underlap.org/blocking-ai-web-crawlers" target="_blank">Blocking AI web crawlers</a></li>
  812. <li><a href="https://uisce.eu/understanding-the-bots-blocked-by-ai-scrape-protect/" target="_blank">Understanding the Bots Blocked by AI Scrape Protect</a></li>
  813. <li><strong data-url="https://rarechrisclark.com/blog/ai-website-crawlers/" data-date="20251003" title="404 link removed">Understanding and Blocking Abusive AI Website Crawlers</strong></li>
  814. <li><a href="https://www.abuseipdb.com/" target="_blank">Abusive IP Database</a></li>
  815. <li><a href="https://lablab.ai/apps" target="_blank">Discover AI applications</a></li>
  816. <li><a href="https://perishablepress.com/block-bad-bots/">Perishable Press ▸ How to Block Bad Bots</a></li>
  817. <li><a href="https://perishablepress.com/tag/apache/">Perishable Press ▸ Apache Archive</a></li>
  818. <li><a href="https://perishablepress.com/category/web-design/htaccess/">Perishable Press ▸ .htaccess Archive</a></li>
  819. <li><a href="https://perishablepress.com/tag/blacklist/">Perishable Press ▸ Blacklist Archive</a></li>
  820. <li><a href="https://perishablepress.com/tag/bots/">Perishable Press ▸ Bots Archive</a></li>
  821. <li><a href="https://perishablepress.com/tag/ng/">Perishable Press ▸ nG Firewall Archive</a></li>
  822. </ul>
  823. <h2 id="feedback">Feedback</h2>
  824. <p>Got more? Leave a comment below with your favorite AI bots to block. Or send privately via my <a href="https://perishablepress.com/contact/">contact form</a>. Cheers! :)</p>
  825. <p><!--authenticate--></p>
  826. <div class="post-tags t2"><a href="https://perishablepress.com/tag/ai/" title="More posts with this tag">ai</a> <a href="https://perishablepress.com/tag/apache/" title="More posts with this tag">apache</a> <a href="https://perishablepress.com/tag/blacklist/" title="More posts with this tag">blacklist</a> <a href="https://perishablepress.com/tag/bots/" title="More posts with this tag">bots</a> <a href="https://perishablepress.com/tag/robots/" title="More posts with this tag">robots</a></div>
  827. <div class="aa box"><img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ade3e5.jpeg 2x" class="avatar avatar-200 photo" height="200" width="200" decoding="async"><div class="aa-text"><div class="t1">About the Author</div><div class="aa-desc"><a href="https://perishablepress.com/author/perish/" title="Author Archive">Jeff Starr</a> = Creative thinker. Passionate about free and open Web.</div></div></div>
  828. </div>
  829. <div class="feat feat-post">
  830. <div>
  831. <a href="https://digwp.com/book/" title="Take your WordPress skills to the next level" target="_blank">
  832. <img src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/digwp.jpg" width="200" alt="eBook: Digging Into WordPress">
  833. </a>
  834. </div>
  835. <div class="t3">
  836. <a href="https://digwp.com/book/" title="eBook + Bonus Content" target="_blank">Digging Into WordPress</a>: Take your WordPress skills to the next level.
  837. </div></div>
  838. <div class="navs box">
  839. <div class="navs-next"><div class="t1">← Next Post</div><div class="navs-link"><a href="https://perishablepress.com/pro-version-head-meta-data/" rel="next">Pro Version of Head Meta Data WordPress Plugin</a></div></div>
  840. <div class="navs-prev"><div class="t1">Previous Post →</div><div class="navs-link"><a href="https://perishablepress.com/wutsearch-update-v1-8/" rel="prev">Wutsearch Update v1.8</a></div></div>
  841. </div>
  842. <div id="comments" class="comments">
  843. <style>
  844. .comments h2 { line-height: initial; }
  845. .comments pre, .comments blockquote { margin: 20px 0; }
  846. .comments-list { margin: 40px 0; padding: 0; list-style: none; }
  847. .comment { margin: 20px 0; }
  848. .comment-avatar { float: left; width: 60px; height: 60px; }
  849. .comment .avatar { display: block; width: 50px; height: 50px; }
  850. .comment-info { padding: 0 0 0 10px; font-size: 11px; color: #999; }
  851. .comment-info a, .comment-info a:hover { color: #999; text-decoration: none; }
  852. .comment-content { float: right; line-height: 1.5; width: calc(100% - 70px); }
  853. .children { list-style: none; }
  854. .comment .comment-policy, .cancel-reply { display: none; }
  855. .comment .cancel-reply { display: inline-block; padding: 0 0 0 10px; }
  856. .comment-policy { margin: 0 0 30px 0; }
  857. .cancel-reply a { font-size: 11px; font-weight: normal; text-decoration: none; }
  858. .comment-field { margin: 5px 0; }
  859. .comment-field label { box-sizing: border-box; width: 90px; text-align: right; font-size: 11px; }
  860. .comment-field input { box-sizing: border-box; width: 300px; }
  861. .comment-field textarea { box-sizing: border-box; width: calc(100% - 100px); height: 120px; }
  862. .form-submit .submit { margin: 0 0 0 90px; }
  863. .comment-feed { padding: 0 0 0 30px; background-image: url(/wp/wp-content/themes/yes/img/feed.png); background-repeat: no-repeat; background-position: left center; background-size: 20px 20px; }
  864. .comments-closed { margin: 40px 0; text-align: center; }
  865. .comments-closed img, .comments-closed span { display: inline-block; margin: 0 3px 0 0; vertical-align: middle; }
  866. .comments-closed span { padding: 3px 0 0 0; }
  867. .comment-moderation { font-style: italic; color: #669966; }
  868. @media (max-width: 570px) {
  869. .children { padding: 0; }
  870. .comment-field label, .comment-field input, .comment-field textarea, .comment .comment-field textarea { display: block; width: 100%; text-align: left; }
  871. .form-submit .submit { margin: 0; }
  872. .comments-closed img { display: none; }
  873. }
  874. </style>
  875. <h2>56 responses to “Ultimate Block List to Stop AI Bots”</h2>
  876. <ol class="comments-list">
  877. <li class="comment even thread-even depth-1" id="comment-138849">
  878. <div class="comment-wrap box">
  879. <div class="comment-avatar">
  880. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_018.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  881. <div class="comment-content">
  882. <div class="comment-meta t2">
  883. <strong class="comment-author"><a href="https://dkeu.de/" class="url" rel="ugc external nofollow" target="_blank">David</a></strong>
  884. <span class="comment-info t1">
  885. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-138849" title="Permalink">2025/02/11 10:25 pm</a>
  886. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=138849#respond" data-commentid="138849" data-postid="20932" data-belowelement="comment-text-138849" data-respondelement="respond" data-replyto="Reply to David" aria-label="Reply to David">Reply</a> </span>
  887. </div>
  888. <div class="comment-text t2" id="comment-text-138849"><p>Super
  889. cool! Thank you so much for your tireless work with the nG firewall and
  890. now this very comprehensive AI user agent blocking list. I tried to
  891. recognize and block the bots one by one, but there were obviously still
  892. many missing.</p>
  893. </div>
  894. </div>
  895. </div>
  896. </li><!-- #comment-## -->
  897. <li class="comment odd alt thread-odd thread-alt depth-1" id="comment-138866">
  898. <div class="comment-wrap box">
  899. <div class="comment-avatar">
  900. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/895cd8089740cdb84bf91e910e4f2f748147c60b91a7973b443846c_002.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/895cd8089740cdb84bf91e910e4f2f748147c60b91a7973b443846c11a7.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  901. <div class="comment-content">
  902. <div class="comment-meta t2">
  903. <strong class="comment-author"><a href="https://automatio.ai/" class="url" rel="ugc external nofollow" target="_blank">Stefan Smiljkovic</a></strong>
  904. <span class="comment-info t1">
  905. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-138866" title="Permalink">2025/02/13 8:53 pm</a>
  906. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=138866#respond" data-commentid="138866" data-postid="20932" data-belowelement="comment-text-138866" data-respondelement="respond" data-replyto="Reply to Stefan Smiljkovic" aria-label="Reply to Stefan Smiljkovic">Reply</a> </span>
  907. </div>
  908. <div class="comment-text t2" id="comment-text-138866"><p>This
  909. block list is solid for keeping AI bots out, but with how fast AI is
  910. evolving, do you think blocking them entirely is the best long-term
  911. move? </p>
  912. <p>Some bots might be scraping content, but others could be indexing
  913. sites in ways that drive traffic. Is there a case for selectively
  914. allowing certain AI bots while blocking the rest?</p>
  915. </div>
  916. </div>
  917. </div>
  918. <ul class="children">
  919. <li class="comment byuser comment-author-perish bypostauthor even depth-2" id="comment-138869">
  920. <div class="comment-wrap box">
  921. <div class="comment-avatar">
  922. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  923. <div class="comment-content">
  924. <div class="comment-meta t2">
  925. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  926. <span class="comment-info t1">
  927. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-138869" title="Permalink">2025/02/14 6:56 am</a>
  928. <span class="comment-postauthor">• Post Author</span>
  929. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=138869#respond" data-commentid="138869" data-postid="20932" data-belowelement="comment-text-138869" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  930. </div>
  931. <div class="comment-text t2" id="comment-text-138869"><p>“..do you think blocking them entirely is the best long-term move?”</p>
  932. <p>Good question. Trying to plan “long-term” is folly given “how fast AI
  933. is evolving”. Literally anything can happen. As mentioned in the intro,
  934. this post is not about arguing pros and cons; it’s for people who want
  935. to block AI bots like <strong>now</strong>. Long-term yes, resistance (probably) is futile. Short-term you can block a lot of them with just a few clicks.</p>
  936. <p>“Is there a case for selectively allowing certain AI bots while blocking the rest?”</p>
  937. <p>Technically speaking, you can do that with either robots.txt or <a href="https://perishablepress.com/invite-only-visitor-exclusivity-via-the-opt-in-method/" title="Invite Only: Traffic Control via Whitelist" rel="ugc">Apache/.htaccess</a>
  938. (and other languages I’m sure). As for whether or not it makes sense
  939. for any given site, depends on myriad factors. So not a
  940. one-size-fits-all strategy imo.</p>
  941. <p>Note: I edited my original reply after giving it more thought.</p>
  942. </div>
  943. </div>
  944. </div>
  945. </li><!-- #comment-## -->
  946. </ul><!-- .children -->
  947. </li><!-- #comment-## -->
  948. <li class="comment odd alt thread-even depth-1" id="comment-138895">
  949. <div class="comment-wrap box">
  950. <div class="comment-avatar">
  951. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_016.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_005.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  952. <div class="comment-content">
  953. <div class="comment-meta t2">
  954. <strong class="comment-author"><a href="https://wptechguru.com/" class="url" rel="ugc external nofollow" target="_blank">Frank Gomez</a></strong>
  955. <span class="comment-info t1">
  956. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-138895" title="Permalink">2025/02/17 6:14 am</a>
  957. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=138895#respond" data-commentid="138895" data-postid="20932" data-belowelement="comment-text-138895" data-respondelement="respond" data-replyto="Reply to Frank Gomez" aria-label="Reply to Frank Gomez">Reply</a> </span>
  958. </div>
  959. <div class="comment-text t2" id="comment-text-138895"><p>Thanks
  960. Jeff, Longtime fan here. I appreciate your ongoing contributions to a
  961. safer internet. I appreciate the extensive notes here too. I’ll be
  962. implementing these minus Google-Extended and see what happens.</p>
  963. </div>
  964. </div>
  965. </div>
  966. </li><!-- #comment-## -->
  967. <li class="comment even thread-odd thread-alt depth-1" id="comment-139032">
  968. <div class="comment-wrap box">
  969. <div class="comment-avatar">
  970. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_014.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_009.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  971. <div class="comment-content">
  972. <div class="comment-meta t2">
  973. <strong class="comment-author">Prince</strong>
  974. <span class="comment-info t1">
  975. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-139032" title="Permalink">2025/02/27 9:20 pm</a>
  976. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=139032#respond" data-commentid="139032" data-postid="20932" data-belowelement="comment-text-139032" data-respondelement="respond" data-replyto="Reply to Prince" aria-label="Reply to Prince">Reply</a> </span>
  977. </div>
  978. <div class="comment-text t2" id="comment-text-139032"><p>Jeff, thanks a lot for your great work. Appreciate very much your efforts.</p>
  979. <p>I want to ask you if we can apply both, robots.txt and .htaccess
  980. lists, to strengthen security. Or only one of the two needs to be
  981. installed.</p>
  982. <p>Again, thanx a lot Jeff!</p>
  983. </div>
  984. </div>
  985. </div>
  986. <ul class="children">
  987. <li class="comment byuser comment-author-perish bypostauthor odd alt depth-2" id="comment-139036">
  988. <div class="comment-wrap box">
  989. <div class="comment-avatar">
  990. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  991. <div class="comment-content">
  992. <div class="comment-meta t2">
  993. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  994. <span class="comment-info t1">
  995. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-139036" title="Permalink">2025/02/28 6:25 am</a>
  996. <span class="comment-postauthor">• Post Author</span>
  997. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=139036#respond" data-commentid="139036" data-postid="20932" data-belowelement="comment-text-139036" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  998. </div>
  999. <div class="comment-text t2" id="comment-text-139036"><p>Hi
  1000. Prince, yes you can install both although it’s kind of unnecessary. The
  1001. robots file isn’t going to stop anything that’s not blocked via
  1002. Apache/.htaccess, but the converse isn’t true: the .htaccess rules will
  1003. stop any listed bots that choose to ignore robots rules.</p>
  1004. </div>
  1005. </div>
  1006. </div>
  1007. </li><!-- #comment-## -->
  1008. </ul><!-- .children -->
  1009. </li><!-- #comment-## -->
  1010. <li class="comment even thread-even depth-1" id="comment-139058">
  1011. <div class="comment-wrap box">
  1012. <div class="comment-avatar">
  1013. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_011.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_007.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1014. <div class="comment-content">
  1015. <div class="comment-meta t2">
  1016. <strong class="comment-author">Prince</strong>
  1017. <span class="comment-info t1">
  1018. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-139058" title="Permalink">2025/03/01 2:56 am</a>
  1019. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=139058#respond" data-commentid="139058" data-postid="20932" data-belowelement="comment-text-139058" data-respondelement="respond" data-replyto="Reply to Prince" aria-label="Reply to Prince">Reply</a> </span>
  1020. </div>
  1021. <div class="comment-text t2" id="comment-text-139058"><p>Thanks a lot Jeff for your patience</p>
  1022. </div>
  1023. </div>
  1024. </div>
  1025. </li><!-- #comment-## -->
  1026. <li class="comment odd alt thread-odd thread-alt depth-1" id="comment-139093">
  1027. <div class="comment-wrap box">
  1028. <div class="comment-avatar">
  1029. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/7a0d0e4af5589220ca74e07f3f30d0cb9d0ebc0ac4da583a420e1bd_002.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/7a0d0e4af5589220ca74e07f3f30d0cb9d0ebc0ac4da583a420e1bda066.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1030. <div class="comment-content">
  1031. <div class="comment-meta t2">
  1032. <strong class="comment-author">Rick Beckman</strong>
  1033. <span class="comment-info t1">
  1034. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-139093" title="Permalink">2025/03/03 6:52 pm</a>
  1035. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=139093#respond" data-commentid="139093" data-postid="20932" data-belowelement="comment-text-139093" data-respondelement="respond" data-replyto="Reply to Rick Beckman" aria-label="Reply to Rick Beckman">Reply</a> </span>
  1036. </div>
  1037. <div class="comment-text t2" id="comment-text-139093"><p>I’ve been using a small block list that I’ve put together to achieve this, so I’m glad to see this larger list. </p>
  1038. <p>But I’ve also seen people using a tool that they can direct AI bots
  1039. to which catches them in a link loop, loading page after page of
  1040. nonsense text that is close to seeming like real human text but is just
  1041. generated gobbledygook. I love the idea of this, but have no idea how to
  1042. build it.</p>
  1043. <p>It’s similar to the honey pots that Project Honeypot facilitates for
  1044. spam bots — giving them thousands of fake emails, making their harvested
  1045. lists bloated. I want to poison the well of AI. (Although, in doing so,
  1046. it may force the devs of said bots to improve teh whole thing, causing
  1047. AI bot evolution rather than being a true hurdle. Huh… Well, maybe I
  1048. just talked myself out of this idea. Ah well.</p>
  1049. <p>Thanks for your list, Jeff!</p>
  1050. </div>
  1051. </div>
  1052. </div>
  1053. <ul class="children">
  1054. <li class="comment byuser comment-author-perish bypostauthor even depth-2" id="comment-139101">
  1055. <div class="comment-wrap box">
  1056. <div class="comment-avatar">
  1057. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1058. <div class="comment-content">
  1059. <div class="comment-meta t2">
  1060. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1061. <span class="comment-info t1">
  1062. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-139101" title="Permalink">2025/03/04 6:35 am</a>
  1063. <span class="comment-postauthor">• Post Author</span>
  1064. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=139101#respond" data-commentid="139101" data-postid="20932" data-belowelement="comment-text-139101" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  1065. </div>
  1066. <div class="comment-text t2" id="comment-text-139101"><p>Hey
  1067. Rick, yes you’re referring to “tarpits”, a fun way to confuse and trap
  1068. bots in an endless maze of nonsense. I posted about it on Mastodon <a href="https://mastodon.social/@perishable/113997480078954392" title="Tarpits post on Mastodon social media" rel="nofollow ugc" target="_blank">here</a>
  1069. for anyone else who may be interested. Tarpits take some time to
  1070. setup/configure and chew up a LOT of server resources, but certainly are
  1071. a fun way to pass some time :)</p>
  1072. </div>
  1073. </div>
  1074. </div>
  1075. </li><!-- #comment-## -->
  1076. </ul><!-- .children -->
  1077. </li><!-- #comment-## -->
  1078. <li class="comment odd alt thread-even depth-1" id="comment-140366">
  1079. <div class="comment-wrap box">
  1080. <div class="comment-avatar">
  1081. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_017.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_002.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1082. <div class="comment-content">
  1083. <div class="comment-meta t2">
  1084. <strong class="comment-author">Lubo</strong>
  1085. <span class="comment-info t1">
  1086. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-140366" title="Permalink">2025/05/06 1:02 am</a>
  1087. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=140366#respond" data-commentid="140366" data-postid="20932" data-belowelement="comment-text-140366" data-respondelement="respond" data-replyto="Reply to Lubo" aria-label="Reply to Lubo">Reply</a> </span>
  1088. </div>
  1089. <div class="comment-text t2" id="comment-text-140366"><p>Hi, Jeff. Can we have list from v1.3 (Apache/.htaccess) plus new bots added from v1.4?</p>
  1090. <p>Thanks.</p>
  1091. </div>
  1092. </div>
  1093. </div>
  1094. <ul class="children">
  1095. <li class="comment byuser comment-author-perish bypostauthor even depth-2" id="comment-140376">
  1096. <div class="comment-wrap box">
  1097. <div class="comment-avatar">
  1098. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1099. <div class="comment-content">
  1100. <div class="comment-meta t2">
  1101. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1102. <span class="comment-info t1">
  1103. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-140376" title="Permalink">2025/05/06 4:37 am</a>
  1104. <span class="comment-postauthor">• Post Author</span>
  1105. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=140376#respond" data-commentid="140376" data-postid="20932" data-belowelement="comment-text-140376" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  1106. </div>
  1107. <div class="comment-text t2" id="comment-text-140376"><p>Hi Lubo, I can post a link to v1.3, then you can use a diff tool to get the changes, if that works?</p>
  1108. </div>
  1109. </div>
  1110. </div>
  1111. <ul class="children">
  1112. <li class="comment odd alt depth-3" id="comment-140379">
  1113. <div class="comment-wrap box">
  1114. <div class="comment-avatar">
  1115. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_017.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_002.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1116. <div class="comment-content">
  1117. <div class="comment-meta t2">
  1118. <strong class="comment-author">Lubo</strong>
  1119. <span class="comment-info t1">
  1120. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-140379" title="Permalink">2025/05/06 6:34 am</a>
  1121. </span>
  1122. </div>
  1123. <div class="comment-text t2" id="comment-text-140379"><p>It will be ok. Thanks.</p>
  1124. </div>
  1125. </div>
  1126. </div>
  1127. </li><!-- #comment-## -->
  1128. <li class="comment byuser comment-author-perish bypostauthor even depth-3" id="comment-140428">
  1129. <div class="comment-wrap box">
  1130. <div class="comment-avatar">
  1131. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1132. <div class="comment-content">
  1133. <div class="comment-meta t2">
  1134. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1135. <span class="comment-info t1">
  1136. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-140428" title="Permalink">2025/05/07 8:58 am</a>
  1137. <span class="comment-postauthor">• Post Author</span>
  1138. </span>
  1139. </div>
  1140. <div class="comment-text t2" id="comment-text-140428"><p>Here is previous version (1.3) in both <a href="https://perishablepress.com/downloads/block-ai-bots-v1.3-robots.txt" rel="ugc" target="_blank">robots.txt</a> and <a href="https://perishablepress.com/downloads/block-ai-bots-v1.3-apache.txt" rel="ugc" target="_blank">Apache/.htaccess</a> flavors.</p>
  1141. </div>
  1142. </div>
  1143. </div>
  1144. </li><!-- #comment-## -->
  1145. </ul><!-- .children -->
  1146. </li><!-- #comment-## -->
  1147. </ul><!-- .children -->
  1148. </li><!-- #comment-## -->
  1149. <li class="comment odd alt thread-odd thread-alt depth-1" id="comment-141488">
  1150. <div class="comment-wrap box">
  1151. <div class="comment-avatar">
  1152. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_012.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_004.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1153. <div class="comment-content">
  1154. <div class="comment-meta t2">
  1155. <strong class="comment-author">Hi</strong>
  1156. <span class="comment-info t1">
  1157. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141488" title="Permalink">2025/07/21 10:41 pm</a>
  1158. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141488#respond" data-commentid="141488" data-postid="20932" data-belowelement="comment-text-141488" data-respondelement="respond" data-replyto="Reply to Hi" aria-label="Reply to Hi">Reply</a> </span>
  1159. </div>
  1160. <div class="comment-text t2" id="comment-text-141488"><p>Hi Jeff, it seems that when accessing a website from an Apple device after 1.6 htaccess update, it returns a Forbidden.</p>
  1161. </div>
  1162. </div>
  1163. </div>
  1164. <ul class="children">
  1165. <li class="comment byuser comment-author-perish bypostauthor even depth-2" id="comment-141497">
  1166. <div class="comment-wrap box">
  1167. <div class="comment-avatar">
  1168. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1169. <div class="comment-content">
  1170. <div class="comment-meta t2">
  1171. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1172. <span class="comment-info t1">
  1173. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141497" title="Permalink">2025/07/22 6:30 am</a>
  1174. <span class="comment-postauthor">• Post Author</span>
  1175. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141497#respond" data-commentid="141497" data-postid="20932" data-belowelement="comment-text-141497" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  1176. </div>
  1177. <div class="comment-text t2" id="comment-text-141497"><p>Get the
  1178. specific Apple user agent and I will modify the list for the next
  1179. update. And in the meantime, simply remove the “Apple” entry from the
  1180. list will resolve and allow Apple (including AI bots) full accesss).</p>
  1181. </div>
  1182. </div>
  1183. </div>
  1184. </li><!-- #comment-## -->
  1185. </ul><!-- .children -->
  1186. </li><!-- #comment-## -->
  1187. <li class="comment odd alt thread-even depth-1" id="comment-141490">
  1188. <div class="comment-wrap box">
  1189. <div class="comment-avatar">
  1190. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_013.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_006.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1191. <div class="comment-content">
  1192. <div class="comment-meta t2">
  1193. <strong class="comment-author">MuP</strong>
  1194. <span class="comment-info t1">
  1195. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141490" title="Permalink">2025/07/21 11:32 pm</a>
  1196. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141490#respond" data-commentid="141490" data-postid="20932" data-belowelement="comment-text-141490" data-respondelement="respond" data-replyto="Reply to MuP" aria-label="Reply to MuP">Reply</a> </span>
  1197. </div>
  1198. <div class="comment-text t2" id="comment-text-141490"><p>Hi Jeff.<br>
  1199. Thanks for this update.<br>
  1200. Guessing this will be a never ending story.<br>
  1201. —<br>
  1202. htaccess, line “RewriteCond %{HTTP_USER_AGENT} (Apple| …”<br>
  1203. “Apple” will be blocked now?<br>
  1204. “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36”<br>
  1205. —<br>
  1206. Win11, Chrome, accessing my own site will be blocked by funny 402, hope you remember my question earlier R=402 instead of (F,L).<br>
  1207. Once deleted Apple it works well again.<br>
  1208. —<br>
  1209. Cheers</p>
  1210. </div>
  1211. </div>
  1212. </div>
  1213. <ul class="children">
  1214. <li class="comment byuser comment-author-perish bypostauthor even depth-2" id="comment-141498">
  1215. <div class="comment-wrap box">
  1216. <div class="comment-avatar">
  1217. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1218. <div class="comment-content">
  1219. <div class="comment-meta t2">
  1220. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1221. <span class="comment-info t1">
  1222. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141498" title="Permalink">2025/07/22 6:35 am</a>
  1223. <span class="comment-postauthor">• Post Author</span>
  1224. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141498#respond" data-commentid="141498" data-postid="20932" data-belowelement="comment-text-141498" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  1225. </div>
  1226. <div class="comment-text t2" id="comment-text-141498"><p>Apple
  1227. fix is on the list for the next update. I got too greedy :) For now as
  1228. you mention simply remove “Apple” and all will be well. I don’t recall
  1229. funny 402, remind me?</p>
  1230. </div>
  1231. </div>
  1232. </div>
  1233. <ul class="children">
  1234. <li class="comment odd alt depth-3" id="comment-141501">
  1235. <div class="comment-wrap box">
  1236. <div class="comment-avatar">
  1237. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_013.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_006.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1238. <div class="comment-content">
  1239. <div class="comment-meta t2">
  1240. <strong class="comment-author">MuP</strong>
  1241. <span class="comment-info t1">
  1242. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141501" title="Permalink">2025/07/22 8:49 am</a>
  1243. </span>
  1244. </div>
  1245. <div class="comment-text t2" id="comment-text-141501"><p>This one is working well acc. 402 on my site:<br>
  1246. <a href="https://perishablepress.com/8g-firewall/comment-page-7/#comment-141417" rel="ugc">https://perishablepress.com/8g-firewall/comment-page-7/#comment-141417</a></p>
  1247. </div>
  1248. </div>
  1249. </div>
  1250. </li><!-- #comment-## -->
  1251. <li class="comment byuser comment-author-perish bypostauthor even depth-3" id="comment-141505">
  1252. <div class="comment-wrap box">
  1253. <div class="comment-avatar">
  1254. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1255. <div class="comment-content">
  1256. <div class="comment-meta t2">
  1257. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1258. <span class="comment-info t1">
  1259. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141505" title="Permalink">2025/07/22 11:41 am</a>
  1260. <span class="comment-postauthor">• Post Author</span>
  1261. </span>
  1262. </div>
  1263. <div class="comment-text t2" id="comment-text-141505"><p>Okay yes I recall that comment/code.. I guess, why 402 “Payment Required” instead of 403 “Forbidden”..?</p>
  1264. </div>
  1265. </div>
  1266. </div>
  1267. </li><!-- #comment-## -->
  1268. </ul><!-- .children -->
  1269. </li><!-- #comment-## -->
  1270. </ul><!-- .children -->
  1271. </li><!-- #comment-## -->
  1272. <li class="comment odd alt thread-odd thread-alt depth-1" id="comment-141494">
  1273. <div class="comment-wrap box">
  1274. <div class="comment-avatar">
  1275. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_010.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_008.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1276. <div class="comment-content">
  1277. <div class="comment-meta t2">
  1278. <strong class="comment-author">EJL</strong>
  1279. <span class="comment-info t1">
  1280. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141494" title="Permalink">2025/07/22 5:05 am</a>
  1281. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141494#respond" data-commentid="141494" data-postid="20932" data-belowelement="comment-text-141494" data-respondelement="respond" data-replyto="Reply to EJL" aria-label="Reply to EJL">Reply</a> </span>
  1282. </div>
  1283. <div class="comment-text t2" id="comment-text-141494"><p>Hi Jeff.<br>
  1284. Thanks for the update.</p>
  1285. <p>With the change of Apple related bots to Apple, in my opinion you
  1286. also block a Chrome browser. The Apache logging for Chrome looks like
  1287. “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,
  1288. like Gecko) Chrome/138.0.0.0 Safari/537.36” and safari browsers:
  1289. “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15
  1290. (KHTML, like Gecko) Version/17.6 Safari/605.1.15”.<br>
  1291. At the moment I have not tested this in the .htaccess of Apache server because this. What is your opinion about this?</p>
  1292. </div>
  1293. </div>
  1294. </div>
  1295. <ul class="children">
  1296. <li class="comment byuser comment-author-perish bypostauthor even depth-2" id="comment-141496">
  1297. <div class="comment-wrap box">
  1298. <div class="comment-avatar">
  1299. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1300. <div class="comment-content">
  1301. <div class="comment-meta t2">
  1302. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1303. <span class="comment-info t1">
  1304. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141496" title="Permalink">2025/07/22 6:29 am</a>
  1305. <span class="comment-postauthor">• Post Author</span>
  1306. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141496#respond" data-commentid="141496" data-postid="20932" data-belowelement="comment-text-141496" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  1307. </div>
  1308. <div class="comment-text t2" id="comment-text-141496"><p>You are
  1309. welcome to block as desired for your own sites. For this list however I
  1310. am avoiding blocking anything related to major search engines,
  1311. including Google Chrome. The last thing I want is for the everyone using
  1312. Chrome to get blocked from accessing anyone’s website.</p>
  1313. </div>
  1314. </div>
  1315. </div>
  1316. </li><!-- #comment-## -->
  1317. </ul><!-- .children -->
  1318. </li><!-- #comment-## -->
  1319. <li class="comment odd alt thread-even depth-1" id="comment-141540">
  1320. <div class="comment-wrap box">
  1321. <div class="comment-avatar">
  1322. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_015.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_003.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1323. <div class="comment-content">
  1324. <div class="comment-meta t2">
  1325. <strong class="comment-author"><a href="https://www.netjukebox.nl/" class="url" rel="ugc external nofollow" target="_blank">Willem</a></strong>
  1326. <span class="comment-info t1">
  1327. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141540" title="Permalink">2025/07/25 12:45 am</a>
  1328. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141540#respond" data-commentid="141540" data-postid="20932" data-belowelement="comment-text-141540" data-respondelement="respond" data-replyto="Reply to Willem" aria-label="Reply to Willem">Reply</a> </span>
  1329. </div>
  1330. <div class="comment-text t2" id="comment-text-141540"><p>First
  1331. of all thanks for compiling this list! I think that the first seven
  1332. user-agents in the 1.6 list are to fuzzy and could create unintended
  1333. false positives:<br>
  1334. (\.ai|-ai|_ai|ai\.|ai-|ai_|ai=|</p>
  1335. <p>By adding extra space at the beginning or end of the user-agents will
  1336. decrease the change of false positives a lot. I hope that I have seen
  1337. it right that the first 3 are intended as suffix and the next 4 as
  1338. prefix:<br>
  1339. (\.ai\ |-ai\ |_ai\ |\ ai\.|\ ai-|\ ai_|\ ai=|</p>
  1340. </div>
  1341. </div>
  1342. </div>
  1343. <ul class="children">
  1344. <li class="comment byuser comment-author-perish bypostauthor even depth-2" id="comment-141543">
  1345. <div class="comment-wrap box">
  1346. <div class="comment-avatar">
  1347. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1348. <div class="comment-content">
  1349. <div class="comment-meta t2">
  1350. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1351. <span class="comment-info t1">
  1352. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141543" title="Permalink">2025/07/25 6:05 am</a>
  1353. <span class="comment-postauthor">• Post Author</span>
  1354. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141543#respond" data-commentid="141543" data-postid="20932" data-belowelement="comment-text-141543" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  1355. </div>
  1356. <div class="comment-text t2" id="comment-text-141543"><p>Thank
  1357. you for the feedback. Can you provide any actual examples of false
  1358. positive matching? If so, I will add the spaces as needed in the next
  1359. update.</p>
  1360. </div>
  1361. </div>
  1362. </div>
  1363. </li><!-- #comment-## -->
  1364. </ul><!-- .children -->
  1365. </li><!-- #comment-## -->
  1366. <li class="comment odd alt thread-odd thread-alt depth-1" id="comment-141560">
  1367. <div class="comment-wrap box">
  1368. <div class="comment-avatar">
  1369. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_015.webp" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/avatar_003.webp 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1370. <div class="comment-content">
  1371. <div class="comment-meta t2">
  1372. <strong class="comment-author"><a href="https://www.netjukebox.nl/" class="url" rel="ugc external nofollow" target="_blank">Willem</a></strong>
  1373. <span class="comment-info t1">
  1374. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141560" title="Permalink">2025/07/25 2:21 pm</a>
  1375. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141560#respond" data-commentid="141560" data-postid="20932" data-belowelement="comment-text-141560" data-respondelement="respond" data-replyto="Reply to Willem" aria-label="Reply to Willem">Reply</a> </span>
  1376. </div>
  1377. <div class="comment-text t2" id="comment-text-141560"><p>I have filterd out the regex (\.ai|-ai|_ai|ai\.|ai-|ai_|ai=) between space boundaries from an apache logfile.</p>
  1378. <p> 85 +https://openai.com/gptbot)”<br>
  1379. 18 OAI-SearchBot/1.0;<br>
  1380. 18 +https://openai.com/searchbot”<br>
  1381. 15 mai-IN)<br>
  1382. 1 mai-IN;</p>
  1383. <p>Then I get some unexpected results like “mai-IN” as part of different
  1384. web browsers. Maybe a plugin? I don’ t have many traffic on my site so
  1385. it could be worse.</p>
  1386. </div>
  1387. </div>
  1388. </div>
  1389. <ul class="children">
  1390. <li class="comment byuser comment-author-perish bypostauthor even depth-2" id="comment-141561">
  1391. <div class="comment-wrap box">
  1392. <div class="comment-avatar">
  1393. <img alt="" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_003.jpeg" srcset="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/fc56e446225444bbcc58506a1819c812fa7b932eee3068c0ba705ad_002.jpeg 2x" class="avatar avatar-100 photo" height="100" width="100" decoding="async"> </div>
  1394. <div class="comment-content">
  1395. <div class="comment-meta t2">
  1396. <strong class="comment-author"><a href="https://perishablepress.com/" class="url" rel="ugc">Jeff Starr</a></strong>
  1397. <span class="comment-info t1">
  1398. <a href="https://perishablepress.com/ultimate-ai-block-list/#comment-141561" title="Permalink">2025/07/25 3:24 pm</a>
  1399. <span class="comment-postauthor">• Post Author</span>
  1400. • <a rel="nofollow" class="comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/?replytocom=141561#respond" data-commentid="141561" data-postid="20932" data-belowelement="comment-text-141561" data-respondelement="respond" data-replyto="Reply to Jeff Starr" aria-label="Reply to Jeff Starr">Reply</a> </span>
  1401. </div>
  1402. <div class="comment-text t2" id="comment-text-141561"><p>Thanks.
  1403. Most of those are AI bots so the wildcard matching is working well. For
  1404. the “mai-IN” not sure, but will add a note about it for anyone
  1405. concerned about “mai-IN” visitors. Let me know if you find any other
  1406. false positives, thank you.</p>
  1407. </div>
  1408. </div>
  1409. </div>
  1410. </li><!-- #comment-## -->
  1411. </ul><!-- .children -->
  1412. </li><!-- #comment-## -->
  1413. </ol>
  1414. <div class="nav nav-comments"><span aria-current="page" class="page-numbers current">1</span><span><a class="page-numbers" href="https://perishablepress.com/ultimate-ai-block-list/comment-page-2/#comments">2</a></span><span><a class="page-numbers" href="https://perishablepress.com/ultimate-ai-block-list/comment-page-3/#comments">3</a></span> <span class="nav-sep">•</span> <span><a class="next page-numbers" href="https://perishablepress.com/ultimate-ai-block-list/comment-page-2/#comments">Newer Comments »</a></span></div>
  1415. <div id="respond" class="comment-respond">
  1416. <h2 id="reply-title" class="comment-reply-title">Leave a reply <span class="cancel-reply t1"><a rel="nofollow" id="cancel-comment-reply-link" href="https://perishablepress.com/ultimate-ai-block-list/#respond" style="display:none;">Cancel</a></span></h2><form action="https://perishablepress.com/wp/wp-comments-post.php" method="post" id="commentform" class="comment-form"><div class="comment-policy t2"><p>Name and email required. Email kept private. Basic markup allowed. Please wrap any small/single-line code snippets with <code>&lt;code&gt;</code> tags. Wrap any long/multi-line snippets with <code>&lt;pre&gt;&lt;code&gt;</code> tags. For more info, check out the <a target="_blank" href="https://perishablepress.com/comment-policy/" title="Perishable Press Comment Policy">Comment Policy</a> and <a target="_blank" href="https://perishablepress.com/privacy.html" title="Perishable Press Privacy Policy">Privacy Policy</a>.</p><p class="comment-feed"><a target="_blank" href="https://perishablepress.com/ultimate-ai-block-list/feed/" title="Subscribe via RSS feed">Subscribe to comments on this post</a></p></div><div class="comment-field"><label for="author">Name</label><input id="author" name="author" type="text" placeholder="Enter your name"></div>
  1417. <div class="comment-field"><label for="email">Email</label><input id="email" name="email" type="email" placeholder="Enter your email"></div>
  1418. <div class="comment-field"><label for="url">Website</label><input id="url" name="url" type="url" placeholder="Enter your website"></div>
  1419. <div class="comment-field"><label for="comment">Comment</label><textarea id="comment" name="comment" placeholder="Enter your comment"></textarea></div><p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="Post Comment"> <input type="hidden" name="comment_post_ID" value="20932" id="comment_post_ID">
  1420. <input type="hidden" name="comment_parent" id="comment_parent" value="0">
  1421. </p></form> </div><!-- #respond -->
  1422. </div>
  1423. </div>
  1424. <div class="w2b2 box">
  1425. <div class="welcome">
  1426. <div class="t1">Welcome</div>
  1427. <div class="t2">
  1428. Perishable Press is operated by Jeff Starr, a professional web developer and book author with two decades of experience.
  1429. Here you will find posts about web development, WordPress, security, and <a href="https://perishablepress.com/about/" title="About Perishable Press">more&nbsp;»</a>
  1430. </div>
  1431. </div>
  1432. <div class="w2b2a feat">
  1433. <div>
  1434. <a href="https://digwp.com/book/" title="Take your WordPress skills to the next level" target="_blank">
  1435. <img src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/digwp.jpg" width="200" alt="eBook: Digging Into WordPress">
  1436. </a>
  1437. </div>
  1438. <div class="t3">
  1439. <a href="https://digwp.com/book/" title="eBook + Bonus Content" target="_blank">Digging Into WordPress</a>: Take your WordPress skills to the next level.
  1440. </div> </div>
  1441. <div class="thoughts">
  1442. <div class="t1">Thoughts</div>
  1443. <div class="thought t2">📚 Fresh updates for all of my <a href="https://books.perishablepress.com/" title="Perishable Press Books">books</a> now available! As always, book owners can download the latest versions for FREE :)</div><div class="thought t2">The same: your thoughts, your time, your money. Always in unison.</div><div class="thought t2"><a href="https://news.ycombinator.com/item?id=46505518" title="Visit news.ycombinator.com" target="_blank">Google Broke My Heart</a> is trending 😅</div><div class="thought t2"><a href="https://perishablepress.com/ultimate-ai-block-list/">Ultimate block list to stop AI bots</a> v1.8 now available, blocking over 700+ AI bots!</div><div class="thought t2">After eight months on the road, it is SO nice having <a href="https://x.com/perishable/status/2003868253643550985" title="View post on X (Twitter)" target="_blank">my own office</a> again.</div><div class="thought t2">Taking a break from the vanlife thing, now setting up an office in Washington state.</div><div class="thought t2">Ain’t got time for no <abbr title="Artificial Intelligence">AI</abbr> slops.</div> <div class="t2">+ <a href="https://perishablepress.com/thoughts/">More thoughts »</a></div>
  1444. </div>
  1445. <div class="mce feat">
  1446. <form action="https://perishablepress.us11.list-manage.com/subscribe/post?u=3b1eb5693738305478b07e6c4&amp;id=a5e4fc9f37" method="post" target="_blank" novalidate="">
  1447. <div class="t1">Newsletter</div>
  1448. <div class="t2">Get news, updates, deals &amp; tips via email.</div>
  1449. <label for="mce-EMAIL-96" class="h">Enter your email</label>
  1450. <input id="mce-EMAIL-96" name="EMAIL" type="email" placeholder="Enter your email" required="">
  1451. <input type="text" name="b_3b1eb5693738305478b07e6c4_a5e4fc9f37" tabindex="-1" aria-hidden="true" style="position:absolute;left:-9999em;">
  1452. <input type="submit" name="subscribe" value="Subscribe">
  1453. <div class="t3">Email kept private. Easy unsubscribe anytime.</div>
  1454. </form>
  1455. </div>
  1456. <div class="cats box">
  1457. <div class="t1">Topics</div>
  1458. <ul class="t2">
  1459. <li><a href="https://perishablepress.com/category/wordpress/">WordPress</a></li>
  1460. <li><a href="https://perishablepress.com/category/security/">Security</a></li>
  1461. <li><a href="https://perishablepress.com/category/htaccess/">.htaccess</a></li>
  1462. <li><a href="https://perishablepress.com/category/javascript/">JavaScript</a></li>
  1463. <li><a href="https://perishablepress.com/category/html/">HTML</a></li>
  1464. <li><a href="https://perishablepress.com/category/php/">PHP</a></li>
  1465. <li><a href="https://perishablepress.com/category/css/">CSS</a></li>
  1466. <li><a href="https://perishablepress.com/category/seo/">SEO</a></li>
  1467. <li><a href="https://perishablepress.com/archives/#cats">more »</a></li>
  1468. </ul>
  1469. <ul class="t2"> <li><a href="https://perishablepress.com/tag/websites/">websites</a></li>
  1470. <li><a href="https://perishablepress.com/tag/plugins/">plugins</a></li>
  1471. <li><a href="https://perishablepress.com/tag/blacklist/">blacklist</a></li>
  1472. <li><a href="https://perishablepress.com/tag/apache/">apache</a></li>
  1473. <li><a href="https://perishablepress.com/tag/tutorials/">tutorials</a></li>
  1474. <li><a href="https://perishablepress.com/tag/code/">code</a></li>
  1475. <li><a href="https://perishablepress.com/tag/ux/">ux</a></li>
  1476. <li><a href="https://perishablepress.com/tag/mod_rewrite/">mod_rewrite</a></li>
  1477. <li><a href="https://perishablepress.com/tag/optimization/">optimization</a></li>
  1478. <li><a href="https://perishablepress.com/tag/design/">design</a></li>
  1479. <li><a href="https://perishablepress.com/tag/links/">links</a></li>
  1480. <li><a href="https://perishablepress.com/tag/spam/">spam</a></li>
  1481. <li><a href="https://perishablepress.com/tag/markup/">markup</a></li>
  1482. <li><a href="https://perishablepress.com/tag/server/">server</a></li>
  1483. <li><a href="https://perishablepress.com/tag/hacks/">hacks</a></li>
  1484. <li><a href="https://perishablepress.com/archives/#tags">more »</a></li>
  1485. </ul>
  1486. </div>
  1487. </div>
  1488. </div>
  1489. </div>
  1490. </div>
  1491. <div class="menu box bg1">
  1492. <div class="wrap">
  1493. <div class="m1">
  1494. <form action="https://perishablepress.us11.list-manage.com/subscribe/post?u=3b1eb5693738305478b07e6c4&amp;id=a5e4fc9f37" method="post" target="_blank" novalidate="">
  1495. <div class="t1">Perishable Press Newsletter</div>
  1496. <div class="t2">Get news, updates, deals &amp; tips via email.</div>
  1497. <label for="mce-EMAIL-67" class="h">Enter your email</label>
  1498. <input id="mce-EMAIL-67" name="EMAIL" type="email" placeholder="Enter your email" required="">
  1499. <input type="text" name="b_3b1eb5693738305478b07e6c4_a5e4fc9f37" tabindex="-1" aria-hidden="true" style="position:absolute;left:-9999em;">
  1500. <input type="submit" name="subscribe" value="Subscribe">
  1501. <div class="t3">Your email will remain private. Easy unsubscribe anytime.</div>
  1502. </form>
  1503. </div>
  1504. <div class="m2">
  1505. <div class="t1">Find me on the social medias</div>
  1506. <ul class="s">
  1507. <li><a rel="nofollow" class="s1" href="https://twitter.com/perishable" title="Jeff Starr on Twitter" target="_blank">Twitter</a></li>
  1508. <li><a rel="nofollow" class="s3" href="https://m0n.co/youtube" title="Jeff Starr on YouTube" target="_blank">YouTube</a></li>
  1509. <li><a rel="nofollow" class="s4" href="https://linkedin.com/in/perishable" title="Jeff Starr on LinkedIn" target="_blank">LinkedIn</a></li>
  1510. <li><a rel="nofollow" class="s5" href="http://perishable.tumblr.com/" title="Jeff Starr on Tumblr" target="_blank">Tumblr</a></li>
  1511. <li><a rel="nofollow" class="s6" href="https://facebook.com/jeff.m.starr" title="Jeff Starr on Facebook" target="_blank">Facebook</a></li>
  1512. <li><a rel="nofollow" class="s7" href="https://instagram.com/perishable/" title="Jeff Starr on Instagram" target="_blank">Instagram</a></li>
  1513. <li><a rel="nofollow" class="s8" href="https://profiles.wordpress.org/specialk" title="WP Developer Profile" target="_blank">WordPress</a></li>
  1514. </ul>
  1515. </div>
  1516. <div class="m3 box">
  1517. <div class="m3a">
  1518. <div class="t1">Around the site</div>
  1519. <ul class="t2">
  1520. <li><a href="https://perishablepress.com/tools/" title="Free developer tools">Online Dev Tools</a></li>
  1521. <li><a href="https://perishablepress.com/about/">About Perishable Press</a></li>
  1522. <li><a href="https://perishablepress.com/archives/">Perishable Press Archives</a></li>
  1523. <li><a href="https://perishablepress.com/contact/">Contact Perishable Press</a></li>
  1524. <li><a href="https://perishablepress.com/dungeon/" title="Fun facts about the site">Welcome to Dungeon!</a></li>
  1525. </ul>
  1526. </div>
  1527. <div class="m3b">
  1528. <div class="t1">WordPress help</div>
  1529. <ul class="t2">
  1530. <li><a href="https://m0n.co/wizards-sql" title="Wizard's Collection: SQL Recipes for WordPress" target="_blank">Wizard’s SQL Recipes</a> <small>(eBook)</small></li>
  1531. <li><a href="https://wp-tao.com/" title="Learn the Way of WordPress" target="_blank">The Tao of WordPress</a> <small>(eBook)</small></li>
  1532. <li><a href="https://digwp.com/" title="Written by Chris Coyier and Jeff Starr" target="_blank">Digging Into WordPress</a> <small>(eBook)</small></li>
  1533. <li><a href="https://wp-tao.com/wordpress-themes-book/" title="WordPress Themes In Depth" target="_blank">Develop WordPress themes</a> <small>(eBook)</small></li>
  1534. <li><a href="https://m0n.co/wp-shared-hosting" title="Video course at Lynda.com/LinkedIn" target="_blank">WordPress on shared hosting</a> <small>(video tutorials)</small></li>
  1535. </ul>
  1536. </div>
  1537. <div class="m3c">
  1538. <div class="t1">Favorite projects</div>
  1539. <ul class="t2">
  1540. <li><a href="https://htaccessbook.com/" title="Secure and optimize your website" target="_blank">.htaccess made easy</a></li>
  1541. <li><a href="https://wp-mix.com/" title="A fresh mix of code snippets and tutorials" target="_blank">Code Snippets</a></li>
  1542. <li><a href="https://plugin-planet.com/blackhole-pro/" title="WP Plugin: Blackhole Pro" target="_blank">Blackhole Pro</a></li>
  1543. <li><a href="https://plugin-planet.com/bbq-pro/" title="WP Plugin: Block Bad Queries Pro" target="_blank">BBQ Pro</a></li>
  1544. <li><a href="https://plugin-planet.com/usp-pro/" title="WP Plugin: User Submitted Posts Pro" target="_blank">USP Pro</a></li>
  1545. </ul>
  1546. </div>
  1547. </div>
  1548. <div class="m4">
  1549. <div class="t2">
  1550. ©&nbsp;2004–2026 Perishable Press •
  1551. <a href="https://perishablepress.com/redesign-25/" title="Redesign #25: Performance Over Perfection">Yes&nbsp;Theme</a> by
  1552. <a href="https://monzillamedia.com/" title="Obsessive Web Development" target="_blank">Monzilla Media</a> •
  1553. Built w/ <a href="https://perishablepress.com/shapespace/" title="WordPress Theme Template">shapeSpace</a> •
  1554. <a target="_blank" href="https://perishablepress.com/wp-sitemap.xml" title="Perishable Press Sitemap">Sitemap</a> •
  1555. <a target="_blank" href="https://perishablepress.com/policy/" title="Official site policies and such">Policy</a> •
  1556. <a target="_blank" href="https://perishablepress.com/feed/" title="Articles served in RSS format">RSS</a> •
  1557. <abbr title="God loves you">John 3:16</abbr>
  1558. </div>
  1559. </div>
  1560. </div>
  1561. </div>
  1562. <script type="speculationrules">
  1563. {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp/wp-*.php","/wp/wp-admin/*","/wp/wp-content/uploads/*","/wp/wp-content/*","/wp/wp-content/plugins/*","/wp/wp-content/themes/yes/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
  1564. </script>
  1565. <script type="text/javascript" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/highlight-core.js" id="prismatic-highlight-js"></script>
  1566. <script type="text/javascript" id="prismatic-highlight-js-after">
  1567. /* <![CDATA[ */
  1568. hljs.initHighlightingOnLoad();
  1569. //# sourceURL=prismatic-highlight-js-after
  1570. /* ]]> */
  1571. </script>
  1572. <script type="text/javascript" id="yes-js-before">
  1573. /* <![CDATA[ */
  1574. var mode = "lite";
  1575. //# sourceURL=yes-js-before
  1576. /* ]]> */
  1577. </script>
  1578. <script type="text/javascript" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/script.js" id="yes-js"></script>
  1579. <script type="text/javascript" src="Ultimate%20Block%20List%20to%20Stop%20AI%20Bots%20_%20Perishable%20Press_files/comment-reply.min.js" id="comment-reply-js" async="async" data-wp-strategy="async" fetchpriority="low"></script>
  1580. </body></html>