AEO/GEO guide in English: how to let in AI crawlers, write citable snippets, and truly measure your visibility in AI Overviews and ChatGPT.
To appear in Google and be cited by an answer engine, you need three things: for their crawlers to be able to enter, for every page to solve a specific question in an autonomous snippet, and for you to possess data that no one else publishes. There is no magic tag or special file. There are simply pages that are citable and pages that are not.
This guide is long by design. The topic has become cluttered with new acronyms—AEO, GEO, LLMO—and people selling services based on technology that has yet to publish its rules. We work with what can be verified: official documentation, dates, and Spanish regulations. We explicitly state what cannot be verified.
Let us start with the uncomfortable reality: what has actually changed.
What has changed is not the algorithm, but where the reading ends
For twenty years, the deal was simple. Google showed ten links, you competed to be at the top, and the user clicked. The answer lived on your website. Now, the answer lives on the search results page, and your website is a footnote.
There is data on this, and it is not an agency estimate.
In the same study, the click-through rate on a link within an AI summary was 1% of visits to pages with a summary. Read that twice. A citation is not traffic: a citation is presence. They are different things, and it is best not to confuse them before investing a euro.
The Spanish calendar matters. Google announced the arrival of AI Overviews in Spain on March 25, 2025, in Spanish and English, as part of an expansion to nine European countries (blog.google, "We're bringing the helpfulness of AI Overviews to more countries in Europe", 03-25-2025 · accessed 08-27-2026). AI Mode opened in Spain on October 7, 2025, as part of an expansion to more than 200 countries and territories (blog.google, "AI Mode is now available in more languages and locations around the world", 10-07-2025 · accessed 08-27-2026). In short: if your website hasn't been touched since 2023, it has undergone two surface-level changes without you realizing it.
The industry standard: The industry sells "AI positioning" as a new service with a new price tag, based on a system that publishes neither its ranking nor its criteria.
Our criteria: We treat citation as a consequence of being well-indexed, well-written, and well-measured. If we cannot prove the cause, we do not charge for it.
Google, ChatGPT, Perplexity, and Claude are not four names for the same system
Here is the first expensive mistake. People talk about "the AI" as if it were a single destination. These are four distinct infrastructures, with different crawlers, different indices, and different rules. Optimizing for one does not get you into the others.
| System | Crawler that decides whether to show you | Index used | Can you measure it? |
|---|---|---|---|
| Google (AI Overviews and AI Mode) | Googlebot | Google Search Index | Yes, partially: generative AI report in Search Console |
| ChatGPT (search) | OAI-SearchBot | OpenAI's own index | No, except via server logs and referrers |
| Perplexity | PerplexityBot | Perplexity's own index | No, except via server logs and referrers |
| Claude | Claude-SearchBot | Anthropic's own index | No, except via server logs and referrers |
There is a second family of agents that does not index anything: those that visit a page because a user just asked something. ChatGPT-User, Perplexity-User, and Claude-User function this way. And there is a third: those that collect content to train models, such as GPTBot and ClaudeBot.
That distinction between "crawling for search," "visiting because a human asks," and "collecting for training" is the strategic decision at the heart of this entire matter. Most articles on AEO fail to mention this, and it is precisely where visibility is won or lost.
With that market share, the practical conclusion in Spain is uncomfortable for those selling GEO as a substitute for SEO: Google remains the infrastructure. What has changed is the format of the answer within Google, not the search engine people use.
First move: verifying they can enter
Before writing a single new word, check your robots.txt. It is boring, and it is where half of all projects fail.
The agents are documented by their manufacturers. These are the exact names, verified against official documentation:
- OpenAI:
OAI-SearchBot(to appear in ChatGPT searches),GPTBot(model training),ChatGPT-User(user-initiated action),OAI-AdsBot. OpenAI expressly recommends allowingOAI-SearchBotif you want visibility in their search, and they publish IP ranges atopenai.com/searchbot.json. - Perplexity:
PerplexityBot(indexing and linking in results, "not used to crawl content for foundational models") andPerplexity-User(user-initiated query, which per their documentation "generally ignores robots.txt rules" as it is a human request). IP ranges atperplexity.com/perplexitybot.json. - Anthropic:
Claude-SearchBot(search result quality),Claude-User(user requests), andClaudeBot(training). IP ranges atclaude.com/crawling/bots.json. - Google:
Googlebotfor indexing, andGoogle-Extendedfor specific control over content use in their model training.
The separation is what allows you to make a business decision instead of a binary one.
The industry standard: Blocking all AI agents at once because someone said "AI steals your content." By doing that, you also shut out
OAI-SearchBot,PerplexityBot, andClaude-SearchBot, which are the ones that cite you.Our criteria: Block the training agents if that is your stance, but explicitly allow the search agents. Training and citing are two different things, and their agents have different names.
There is an infrastructure trap that catches many Spanish projects unaware. On July 1, 2025, Cloudflare announced a change in its default behavior towards blocking AI crawlers unless they compensate creators, via an initiative called Content Independence Day and their pay-per-crawl mechanism. If your website is behind Cloudflare and no one has reviewed that configuration, you may have been invisible for months to the systems you want to cite you, despite having an impeccable robots.txt.
The default policies of CDNs regarding AI crawlers change frequently. The information here corresponds to the Cloudflare announcement from 07-01-2025 and the options in their AI crawler control panel. Verified on 08-27-2026. Before assuming your configuration is correct, log in to the panel and check it yourself.
- The
robots.txtallowsGooglebotwithout legacy blocks from a test environment - The
robots.txtexplicitly allowsOAI-SearchBot,PerplexityBot, andClaude-SearchBot - The decision regarding
GPTBot,ClaudeBot, andGoogle-Extendedis documented in writing, not by omission - The CDN panel (Cloudflare or other) is not blocking these agents by default
- Server logs from the last 30 days show actual visits from these agents, with IP verified against the manufacturer's official JSON
- The pages you want cited return a 200 status and their content is in the served HTML, not just rendered via JavaScript
That last point deserves a paragraph. If your content only exists after a browser executes JavaScript, you are betting that every one of these agents will render it. Googlebot renders. For the others, there is no equivalent documented guarantee. Serving text in the HTML is not an aesthetic preference: it is the difference between existing and not existing for half a dozen systems.
The reservation of rights: the Spanish nuance almost no one tells you about
In Spain, text and data mining has a legal exception transposed by Royal Decree-Law 24/2021 of November 2 (BOE-A-2021-17910), in Book IV. Article 67 regulates the general exception and provides that rightsholders may expressly reserve this use "by machine-readable means or other suitable means."
Translated into decisions: your robots.txt and your tags are not just a technical signal. In the Spanish and European framework, they are also the place where you exercise—or waive—a reservation of rights. A Disallow for GPTBot is a machine-readable declaration of intent.
We are not lawyers, and we will not pretend to be. What we do is document that decision in the project with a date, so that there is proof of when it was made. If you need legal guidance on the scope of that reservation, hire the appropriate professional.
Google has already published what is required, and it is not what you are being sold
This is where most Spanish pages currently positioning for "AEO" and "GEO" deviate from the data. Official Google documentation regarding AI features and your website is explicit. We translate from the original English:
"There are no additional requirements to appear in AI Overviews or AI Mode, nor are any special optimizations needed."
"You do not need to create new machine-readable files, AI text files, or markup to appear in these features. Nor is there any special schema.org structured data you need to add."
It adds that the condition to appear as a supporting link is for the page to be indexed and eligible for inclusion in Google Search as a snippet, meeting Search's technical requirements.
This puts the llms.txt industry as a billable product in a very poor position. No one has proven, with manufacturer documentation, that this file influences Google's citation. It may make sense as an index for agents you choose to support. We do not sell it as a visibility lever because there is no published evidence that it is one.
The industry standard: Selling a new file, a plugin, and an "AEO seal" because they are easy to bill and hard to audit.
Our criteria: Fix what Google says matters: clean indexing, available snippets, content with inherent value, and page experience. If the work is not visible in the HTML, we do not charge for it.
The citation unit: the smallest piece a machine can take
An answer system does not cite pages. It cites snippets. The unit of work, therefore, is not the article: it is the autonomous block that answers a complete question without needing the preceding paragraph.
A citable snippet has five properties, all of which are visually verifiable:
- Answers in the first 40 to 60 words. No preamble, no prior context, no "as we were saying."
- Names the entity. "Law 11/2023 mandates that e-commerce services provided in Spain...", not "the regulations mandate us."
- Contains a figure or a date. Answer systems prefer the concrete because the concrete can be verified.
- Cites its source within the snippet itself. If the snippet travels alone, the source travels with it.
- Stands on its own outside of its page. Copy it into a blank document. If it still means the same thing, it is citable.
This is the reason why this guide starts with an answer block and not an introduction. The introduction is for you. The block is for the machine and for the reader in a hurry. Both matter, but they do not occupy the same space.
The full rules of structure—headings in the form of real questions, entity density, tables vs. paragraphs, where to place numerical breakdowns—are developed in the dedicated piece: how to write an article so an AI cites it.
Structured data and preview controls: what actually changes the result
Google says there is no special schema for AI features. That does not mean structured data is unnecessary. It means its function is different: to describe entities with precision so that the system understands what the page is talking about, not to flip a visibility switch.
In a typical Spanish project, the markup that supports the work is short: Organization with sameAs pointing to real profiles, LocalBusiness if there is a physical address, FAQPage when the questions are genuinely what people ask, Product or Offer if there are public prices, and BreadcrumbList so that the silo hierarchy is explicit.
What is a direct lever, and almost no one reviews, are preview controls. Google documents nosnippet, data-nosnippet, max-snippet, and noindex as the mechanisms to control content appearance in AI Overviews and AI Mode. Here is the contradiction that is worth facing head-on: these are the same controls that govern the classic search snippet.
The industry standard: Setting
max-snippet:0ornosnippetso "AI doesn't copy me." You also remove yourself from the traditional snippet and the possibility of being a supporting link.Our criteria: Accept the whole deal or stay out of the whole deal. There is no option to opt out of AI and stay in Search with a snippet: Google uses the same controls for both.
If someone offers to "protect you from AI without losing SEO" using tags, ask them to show you the documentation. It does not exist.
Rendering, performance, and accessibility: the entry condition
None of these three things makes you citable on their own. All three can leave you out.
The 75th percentile is the part omitted in almost all Spanish articles on performance. It is not enough for your page to be fast on your laptop with fiber: it must be fast for three out of four real loads, mobile included. We develop this in our performance and Core Web Vitals guide for businesses.
Accessibility enters through the legal door and stays due to technical reasons. A website with correct hierarchical headings, real alt-text, and semantic structure is, by construction, a website easier for an answer system to carve up. The <h2> that helps a screen reader skip sections is the same <h2> that tells a model where the answer to a question begins. It is no coincidence: both read structure, not design.
The Spanish problem: language is not a market
Write a commercial query in Spanish and observe which sources the system cites. They are frequently pages from Mexico, Colombia, or Argentina, or translations of US articles. The models answer in Spanish; the corpus in Spanish is dominated by Latin America by volume.
For a business that bills in euros, with Spanish VAT, with clients searching for "near me" in Valencia or Bilbao, this is a fit problem, not a language problem.
What corrects this is not writing "Spain" twenty times. It is publishing what can only be written from here:
- Euro figures with explicit mention of whether they include VAT and at what rate.
- Regulatory references with their BOE identifier, not a paraphrase.
- Local infrastructure names: Redsys, Bizum, electronic invoicing, model 349 for intra-community services.
- Real deadlines and administrative processes, with the date they were verified.
An answer system that receives the question "do website prices include VAT in Spain?" needs a source that talks about Law 37/1992. If the only page in Spanish that explains it well is yours, the citation ceases to be a lottery. This is what we do in our piece on how to read a web quote with VAT included.
The only lasting defense: publishing data that does not exist elsewhere
Everything above is hygiene. Anyone with a trade and an afternoon can do it. What no one can replicate is proprietary data.
Proprietary data is a measurement only you can make because only you have the projects, tickets, or records. It has three non-negotiable requirements: a declared sample (n), a date window, and an explained method. Without those three, it is not data: it is an opinion with a number.
| Item | Figure | Note |
|---|---|---|
| Technical hygiene and crawler access | — | — |
| Content structure and citable snippets | — | — |
| Published proprietary data (observatories, measurements) | — | — |
| Entity, internal linking, and brand consistency | — | — |
— = data being measured; we will publish it once we have our own sample.
We do not fill in that breakdown with example percentages. A made-up number in a guide on citation would be exactly the problem this guide denounces.
What we are measuring, and will publish with its n and method, is this:
Tracking lives in the report on which questions ChatGPT and Perplexity cite us for. When the n is sufficient, the number replaces the placeholder. Not before.
How to measure this without deceiving yourself
In June 2026, Google introduced generative AI performance reports in Search Console. It is the first official measurement of this surface, and it is worth knowing what it gives you and what it does not.
What it offers: impressions in AI Overviews and AI Mode, broken down by page, country, device, and date.
What it does not offer: clicks, CTR, average position, and, above all, the query. You know one of your pages appeared. You do not know what the person asked. That absence is structural, not a temporary glitch.
The industry standard: Setting up a dashboard with "AI visibility" as the main metric when the official tool provides neither clicks nor queries.
Our criteria: Measure three verifiable things: impressions in the generative AI report, agent visits in server logs with verified IP, and sessions with a referrer from chatgpt.com, perplexity.ai, or claude.ai in your analytics.
Server logs are the part no one sells you because they have no dashboard to show off. They are also the only direct proof that OAI-SearchBot or PerplexityBot have visited your site, when, and on which pages. If your provider does not give you access to the logs, it is a sign to add to the list of 18 questions to ask before signing.
How we work
We do not have an AEO service. We have a way of building sites that happens to be citable, because the decisions that make a page citable are the same ones that make it understandable.
| # | Phase | What we do | Deliverables |
|---|---|---|---|
| 01 | Listen | We start by asking what questions your clients ask you, not what keywords you want. | Interviews · Log review · Real question inventory |
| 02 | Define | We agree on what winning means before writing a line: which queries, which systems, what proof we accept. | Success criteria · Scope · Written crawler decision |
| 03 | Map | We map the entire silo, with the pillar and its satellites, before writing the first one. | Content map · Internal linking · Block templates |
| 04 | Design | System, grid, and typographic rhythm that make the structure legible for a person and a machine. | Design system · Semantic hierarchy · Response components |
| 05 | Build | Text goes in the served HTML. Markup describes real entities. Performance is measured at the 75th percentile. | Semantic HTML · Structured data · Core Web Vitals |
| 06 | Launch and support | We verify crawler access, measure for 30 days, and give you the method so you can continue without us. | Log verification · Baseline report · Documentation handover |
What we deliver are six movements with a verifiable deliverable, not a promise to appear.
There are compromises that are part of the deal. We do not promise to appear in AI Overviews, because Google does not publish the selection criteria, and anyone who promises you that is promising something they do not control. We do not guarantee that ChatGPT will cite you, for the same reason. And we do not charge for optimizations whose effect we cannot show you in a log, in an HTML file, or in a dated report.
What we do guarantee: fixed price per phase agreed upon before starting, no surprise hours; code, source files, and documentation delivered; 30 days of post-launch support; and response in less than 24 working hours.
Errors we see repeated on Spanish websites
We order them by the frequency with which we encounter them during audits, not by severity.
- The
robots.txtinherited from the test environment. ADisallow: /that no one removed on launch day. It takes a minute to fix and costs months of invisibility. - All content behind JavaScript. The page looks beautiful in the browser and arrives empty to half the agents.
- FAQ that no one asks. An FAQ block written just to fill space, with questions no human would ever type.
- The figure without a source. "78% of users abandon a slow website," with no n, no study, and no date. An answer system that cross-references sources discards that kind of claim, and a discerning reader does, too.
- The page that answers in paragraph twelve. Twelve paragraphs of context before the answer. Neither the machine nor the person makes it there.
- Hidden prices. In a market where almost no Spanish agency publishes prices, publishing them is both a commercial stance and the fastest way to become a citable source for cost-related queries.
Appearing in a generated answer is not a trick: it is the consequence of having written something that deserves to be cited and not having put obstacles in the way. We work slowly in that direction because the other path leads nowhere.
Tell us what you have in front of you: the first call is 30 minutes and costs nothing. Does this way of working fit you?
Frequently asked questions
Do I need an llms.txt file for AI to cite me?
Not according to Google's documentation, which expressly states that no new machine-readable files or special markup are needed to appear in AI Overviews or AI Mode. It may make sense as an index for specific agents, but we do not sell it as a visibility lever because there is no published evidence that it is one.
Does AEO replace SEO?
No: it inherits it. To be cited, a page must be indexed and eligible to be shown with a snippet, which are classic SEO requirements. If your indexing is broken, no AEO technique will fix it.
Can I block model training and still appear in ChatGPT or Perplexity?
Yes, because they are distinct agents: GPTBot and ClaudeBot collect for training, while OAI-SearchBot, PerplexityBot, and Claude-SearchBot serve search. Block the former and allow the latter, and keep the decision documented with a date in case you ever need to justify the reservation of rights under Article 67 of Royal Decree-Law 24/2021.
How long until it is noticeable?
It depends on each system's crawl rate and we do not control that, so we will not give you a made-up date. What we do is measure from day one with server logs and the Search Console generative AI report, whose data starts on May 18, 2026, so that the evolution is verifiable and not just a feeling.
Is it worth it if my business is local and small?
Yes, and for a specific reason: local queries in Spanish have fewer good sources than generic ones, so the barrier to entry is lower. However, if your website has fewer than ten useful pages and no proprietary data to publish, we must write first; optimizing citation for an empty website leads nowhere.
Keep reading
- What is AEO and how is it different from SEO and GEO
- How to write an article so an AI cites it: 11 structure rules
- Report: what questions ChatGPT and Perplexity cite us for
- Web performance for businesses: what Core Web Vitals are and when to optimize
- Redesign your website without losing traffic or ranking
- Web accessibility in Spain after the European Accessibility Act
Transparency note. Some of our own data in this guide is still being measured on real projects, with a single method. We will publish it with its sample size and date range once the sample is large enough; until then, every figure you see carries its source and date of consultation.
Sources verified
- https://developers.google.com/search/docs/appearance/ai-features — Google Search Central. Source for the two verbatim quotes: no additional requirements or special optimizations for AI Overviews/AI Mode; no machine-readable files, AI text files, or special schema.org required. Also the list of controls: robots.txt, nosnippet, data-nosnippet, max-snippet, noindex, and Google-Extended.
- https://www.pewresearch.org/short-reads/2025/07/22/google-users-are-less-likely-to-click-on-links-when-an-ai-summary-appears-in-the-results/ — Pew Research Center, 07-22-2025. Figures 8% vs 15% click on traditional result and 1% click within summary. n = 900 US adults, 68,879 searches from March 2025, 12,593 with AI summary.
- https://developers.openai.com/api/docs/bots — OpenAI. Exact names
OAI-SearchBot,GPTBot,ChatGPT-User,OAI-AdsBot; function of each; recommendation to allowOAI-SearchBot; IP range JSON. - https://docs.perplexity.ai/docs/resources/perplexity-crawlers — Perplexity.
PerplexityBot(not used for foundational models) andPerplexity-User(generally ignores robots.txt as it is a human request); IP JSON. - https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler — Anthropic.
ClaudeBot(training),Claude-User(user requests),Claude-SearchBot(search quality); IPbots.json. - https://gs.statcounter.com/search-engine-market-share/all/spain — Statcounter, July 2026. Google 93.75% in Spain, all devices.
- https://web.dev/articles/vitals — Core Web Vitals thresholds: LCP 2.5s, INP 200ms, CLS 0.1, measured at the 75th percentile.
- https://blog.cloudflare.com/content-independence-day-no-ai-crawl-without-compensation/ — Cloudflare, 07-01-2025. Change of default behavior to block AI crawlers unless compensated, and Pay Per Crawl.
- https://developers.google.com/search/blog/2026/06/gen-ai-performance-reports — Google Search Central Blog, June 2026: introduction of generative AI performance reports in Search Console (page did not return body on fetch; details cross-referenced with coverage cited below).
- https://chudi.dev/blog/search-console-generative-ai-report — Report coverage: data since May 18, 2026, impressions by page/country/device/date, no clicks, no CTR, no position, and no query. Cross-referenced with https://evolvagency.io/learn/generative-search/google-search-console-generative-ai-performance-reports (same start date, same exclusions).
- https://www.boe.es/diario_boe/txt.php?id=BOE-A-2021-17910 — Royal Decree-Law 24/2021, of November 2 (BOE). Book IV, art. 67: text and data mining exception and express reservation via machine-readable means. Doctrinal analysis at https://www.lvcentinvs.es/2021/11/14/la-criticable-incorporacion-de-la-excepcion-de-mineria-de-textos-y-datos-al-ordenamiento-espanol-en-el-real-decreto-ley-24-2021/
- https://marketing4ecommerce.net/ai-overviews-de-google-espana/ — Arrival of AI Overviews in Spain, March 2025, in Spanish and English.
- https://marketing4ecommerce.net/modo-ia-google-espana/ — Activation of AI Mode in Spain, October 2025.
Want to see this thinking applied to a real project?
