<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: bilal ikram</title>
    <description>The latest articles on DEV Community by bilal ikram (@babel42).</description>
    <link>https://dev.to/babel42</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4116409%2F897ccf7a-b415-43eb-a60c-aa85bbaaf22a.jpeg</url>
      <title>DEV Community: bilal ikram</title>
      <link>https://dev.to/babel42</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/babel42"/>
    <language>en</language>
    <item>
      <title>How to create a page that gets read by AI assistants</title>
      <dc:creator>bilal ikram</dc:creator>
      <pubDate>Tue, 29 Sep 2026 23:43:18 +0000</pubDate>
      <link>https://dev.to/babel42/how-to-create-a-page-that-gets-read-by-ai-assistants-2f61</link>
      <guid>https://dev.to/babel42/how-to-create-a-page-that-gets-read-by-ai-assistants-2f61</guid>
      <description>&lt;p&gt;An AI assistant does not read your whole page. It takes one section out and answers from that.&lt;/p&gt;

&lt;p&gt;We read 15,592 sections the way a crawler does. Half were under 40 words. Only a quarter carried a number, a quotation or a link out. And 76.6% never named the brand whose site they were sitting on, because the copy says "we" and "our platform" instead.&lt;/p&gt;

&lt;p&gt;None of that matters while a human is reading top to bottom. It matters when one section gets lifted out on its own and has to answer the question by itself.&lt;/p&gt;

&lt;p&gt;Six things that change it:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Put the question in the H1&lt;/li&gt;
&lt;li&gt;Give every heading an answer under it&lt;/li&gt;
&lt;li&gt;Write sections of 40 to 350 words&lt;/li&gt;
&lt;li&gt;One checkable fact in each section&lt;/li&gt;
&lt;li&gt;Name yourself instead of saying "we"&lt;/li&gt;
&lt;li&gt;Keep the facts out of JavaScript&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you only do one, do the third and fourth together: take the ten sections you most want quoted and get each one past 40 words with a number in it. The section, not the page.&lt;/p&gt;

&lt;p&gt;Run a free AI AEO audit on your site here: &lt;a href="https://babel42.io/ai-seo-audit" rel="noopener noreferrer"&gt;https://babel42.io/ai-seo-audit&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  AEO #LLMSEO #GEO
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvsvnql5ct163z45r2n5q.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvsvnql5ct163z45r2n5q.jpg" alt=" " width="800" height="1000"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>seo</category>
      <category>aeo</category>
    </item>
    <item>
      <title>Cloudflare blocks AI agent traffic by default from 15 September</title>
      <dc:creator>bilal ikram</dc:creator>
      <pubDate>Tue, 08 Sep 2026 21:24:31 +0000</pubDate>
      <link>https://dev.to/babel42/cloudflare-blocks-ai-agent-traffic-by-default-from-15-september-348g</link>
      <guid>https://dev.to/babel42/cloudflare-blocks-ai-agent-traffic-by-default-from-15-september-348g</guid>
      <description>&lt;p&gt;From 15 September, Cloudflare blocks "Agent" traffic by default on pages that carry ads. Agent means bots browsing live on someone's behalf, which includes the crawlers AI assistants send out to check a product before recommending it. Search crawlers stay allowed.&lt;/p&gt;

&lt;p&gt;The default lands on new domains onboarding to Cloudflare, new sites added by existing customers, and every existing free-tier account. A configured paid zone is untouched on the day.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Cloudflare counts as an agent&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Cloudflare now sorts AI traffic into Search, Agent and Training. Search indexes your content to answer questions about it later. Training absorbs it into a model. Agent is the new one: automated activity acting in real time on a person's behalf, with a human waiting on the other end. Cloudflare's own examples are chat fetch bots such as ChatGPT-User, and browser-use agents driving Chrome.&lt;/p&gt;

&lt;p&gt;That is the fetch that runs when someone asks an assistant about your product and it goes to look at your pricing page before answering. Block it and the assistant still answers. It just answers from whatever it already had.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;robots.txt does not cover this&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The block happens at Cloudflare's edge, before the request reaches your origin. robots.txt is a request you make of a crawler that chooses to honour it, and it has no bearing on what the edge does with the connection. Allowing has to be configured per zone, in Cloudflare's AI traffic controls or as a WAF rule matching the user agent.&lt;/p&gt;

&lt;h2&gt;
  
  
  The agents worth allowing
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight conf"&gt;&lt;code&gt;&lt;span class="n"&gt;ChatGPT&lt;/span&gt;-&lt;span class="n"&gt;User&lt;/span&gt;          &lt;span class="c"&gt;# ChatGPT (also ChatGPT-User/2.0)
&lt;/span&gt;&lt;span class="n"&gt;OAI&lt;/span&gt;-&lt;span class="n"&gt;SearchBot&lt;/span&gt;         &lt;span class="c"&gt;# ChatGPT
&lt;/span&gt;&lt;span class="n"&gt;Claude&lt;/span&gt;-&lt;span class="n"&gt;User&lt;/span&gt;           &lt;span class="c"&gt;# Claude
&lt;/span&gt;&lt;span class="n"&gt;Claude&lt;/span&gt;-&lt;span class="n"&gt;SearchBot&lt;/span&gt;      &lt;span class="c"&gt;# Claude
&lt;/span&gt;&lt;span class="n"&gt;Perplexity&lt;/span&gt;-&lt;span class="n"&gt;User&lt;/span&gt;       &lt;span class="c"&gt;# Perplexity
&lt;/span&gt;&lt;span class="n"&gt;PerplexityBot&lt;/span&gt;         &lt;span class="c"&gt;# Perplexity
&lt;/span&gt;&lt;span class="n"&gt;Google&lt;/span&gt;-&lt;span class="n"&gt;Agent&lt;/span&gt;          &lt;span class="c"&gt;# Gemini
&lt;/span&gt;&lt;span class="n"&gt;GoogleAgent&lt;/span&gt;-&lt;span class="n"&gt;Mariner&lt;/span&gt;   &lt;span class="c"&gt;# Gemini
&lt;/span&gt;&lt;span class="n"&gt;Googlebot&lt;/span&gt;             &lt;span class="c"&gt;# Gemini
&lt;/span&gt;&lt;span class="n"&gt;GrokBot&lt;/span&gt;               &lt;span class="c"&gt;# Grok
&lt;/span&gt;&lt;span class="n"&gt;xAI&lt;/span&gt;-&lt;span class="n"&gt;Grok&lt;/span&gt;              &lt;span class="c"&gt;# Grok
&lt;/span&gt;&lt;span class="n"&gt;Grok&lt;/span&gt;-&lt;span class="n"&gt;DeepSearch&lt;/span&gt;       &lt;span class="c"&gt;# Grok
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  The training crawlers, if you still want those blocked
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;GPTBot
ClaudeBot
anthropic-ai
meta-externalagent
Bytespider
Google-Extended
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Watch the multi-purpose crawlers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Cloudflare applies the most restrictive matching rule to a crawler that does more than one job, and names Googlebot, Applebot and Bingbot as ones that get caught by a Training block. A blanket "block training" can therefore cost you ordinary search indexing. Set the categories separately and check what each named agent falls under before you save.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Decide it rather than inherit it&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you sell ad space, the block may be exactly what you want, and Cloudflare is handing it to you for free. The bad outcome is having the default applied to you on the fifteenth without a decision, then working out months later why assistants describe your product from a stale snapshot while your search traffic looks fine.&lt;/p&gt;

&lt;p&gt;Check the zone before the fifteenth. It is a five-minute job now and an invisible problem afterwards.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>seo</category>
      <category>aeo</category>
      <category>cloudfare</category>
    </item>
  </channel>
</rss>
