Insights on AI search, GEO, AEO & technical SEO.

The Brand Risk Almost Nobody Is Defending In AI Search
AI tools can repeat a wrong or hostile claim about your brand to every buyer who asks. Here is how the attacks work and how to defend the narrative.
read_post →
Most AI answers in Bahasa Indonesia are thin, and local brands can own the gap
Ask an AI assistant the same question in English and Bahasa Indonesia and the Indonesian answer is thinner, drawn from fewer sources. That gap is the biggest first-mover opening in search, and here is how to take it.
read_post →
Google ignores IndexNow, which is exactly why it is worth setting up
IndexNow gets dismissed because Google won't use it, but Bing, Yandex, Naver, Seznam and Yep do, and Bing's index feeds Copilot, DuckDuckGo and ChatGPT search. A full implementation guide across WordPress, Shopify, Cloudflare and headless, plus measurement.
read_post →
Updating your page does nothing until the freshness signals move with it
You can rewrite half an article and to a machine the page looks untouched. Freshness is a technical claim carried by dateModified, sitemap lastmod, and the visible date. How to signal real updates without faking the dates.
read_post →
Google recrawls your 404s far more than your 410s, and at scale that is real budget
The 410 deindexation-speed gap is smaller than people claim. But a controlled experiment found Google recrawls 404s 49.6% more than 410s, and on a large site that is real crawl budget. Here is when to use each and how to deploy 410 at scale.
read_post →
Blocking every AI bot with one line costs you the citations you actually want
AI crawlers do three different jobs, training, retrieval for citation, and user-triggered fetches. A blanket Disallow blocks them all and can delete you from ChatGPT and Perplexity answers. Here is how to segment robots.txt instead.
read_post →
ChatGPT and Perplexity barely cite the same sources
ChatGPT and Perplexity overlap on barely 11% of the sources they cite. There is no single "AI search" to optimize for anymore, and here is how each engine actually chooses.
read_post →
The 38,000-to-1 gap between what AI crawls and what it cites
AI bots crawl tens of thousands of pages for every one they cite. Most of that funnel is unstudied, which means it is also unoptimized. Here is what happens between a crawl and a citation.
read_post →
The shopping query your product page never sees
Google's Conversational Attributes let you write feed copy that AI shopping answers match to natural-language queries. How to do it without keyword stuffing.
read_post →
How one HTTP header can feed Googlebot a stale, fragmented copy of your page
One response header decides how many copies of each URL your CDN stores, and almost no SEO audit checks it. Here is how Vary fragments your cache, feeds Googlebot stale HTML, and what to set instead.
read_post →