GEO: helping ChatGPT and Gemini read your website
GEO (Generative Engine Optimization) is the work that helps ChatGPT, Gemini and Perplexity read a website correctly and mention it in their answers. Five steps we take on WordPress and Next.js sites: letting AI bots in, llms.txt, structured data, a full machine-readable source and measuring traffic from AI.
Phúc Bùi · October 13, 2026
More and more people ask ChatGPT or Gemini instead of typing keywords into Google, and what they get back is a paragraph pulled together from several websites, with a few source links. GEO (Generative Engine Optimization) is the work that gets your site into those sources: AI tools can read the pages, understand them correctly and mention them in their answers. This article walks through the five steps Perxel takes on WordPress and Next.js sites, and what is already in place on our own site.
How GEO differs from SEO
The groundwork is the same. Google says AI Overviews and AI Mode rely on the same SEO basics: indexable pages, helpful content, clear structure. A site that fails the technical SEO checks (see The SEO score in PageSpeed) will struggle to be read correctly by AI tools too.
The difference is the reader. Google ranks whole pages, while an AI tool lifts individual passages into its answer. So GEO also cares whether AI bots can reach the site at all, and whether each passage still makes sense once it is taken out of the page.
Step 1: check that AI bots can reach the site
Each AI tool has its own bots: GPTBot and OAI-SearchBot from OpenAI, ClaudeBot from Anthropic, PerplexityBot from Perplexity. A site can block them without the owner knowing, because the block can come from three places:
robots.txt. Some themes, plugins and config templates ship with lines that block AI bots.- Cloudflare. Since mid-2025, Cloudflare blocks AI bots by default on newly added domains. If you want AI tools to cite your site, turn that option off in Cloudflare's bot settings.
- Hosting and firewalls. Many hosting plans rate-limit bots, so an AI bot may get a 429 error (too many requests) instead of the page.
We check all three on every site, then read the server logs to confirm the bots actually get the content. On the Perxel site, robots.txt blocks no bot and Cloudflare lets AI bots through.
Step 2: llms.txt, a summary of the site for AI
llms.txt is a Markdown file at /llms.txt that lists a site's main pages with a one-line description each. It is an open proposal, not an official standard yet, but it lets AI tools see what a site contains without reading every page.
- WordPress sites. Yoast SEO generates llms.txt automatically from pages and posts. Sundmd, a WordPress site we built, uses it.
- Next.js sites. The file is generated from the same data as the page content, so it always matches the CMS. On the Perxel site, llms.txt lists every page, service, project and article. On Foldables, it also states that phone specs and prices are sample data, so AI tools don't quote them as official figures.
Step 3: structured data
Structured data (JSON-LD) describes a page in a shared vocabulary, Schema.org: this is a business at this address, this is an article by this author, published on this date. Google uses it for richer search results, and AI tools can read it without guessing from the layout.
- Khatra Tile uses Rank Math to declare the business address and coordinates, with
hreflangtags for the Vietnamese and English versions. - Sundmd uses Yoast SEO to declare the organisation and each page's breadcrumbs.
- The Perxel site declares the studio, its services and the person in charge in code, and each article adds its author and last update date.
Once declared, check it with the Rich Results Test, since the SEO score in PageSpeed doesn't cover it.
Step 4: a full machine-readable source
llms.txt and JSON-LD are summaries. On a Next.js site we can go further and publish the whole content as a separate source for machines. The Perxel site has two:
/content.json: every page, service, project, product and article in both languages, with full text and pricing. It is rebuilt every time the site updates.- An MCP server: it lets AI apps like Claude search and read the site's content directly instead of downloading page after page.
The same source is where Ask Perxel, the assistant on our site, looks for answers to visitors' questions. So what visitors ask on the site and what AI tools read come from the same content.
Step 5: write passages AI can quote
Since AI tools take passages rather than whole pages, each passage should answer a question on its own:
- Answer in the first paragraph. The page's main question is answered in the first two or three sentences, with the detail after.
- Headings say what follows. A heading like "Hosting costs for a Next.js site" is more likely to be used as a source than "Costs".
- Numbers come with a date and a source. A figure with the date and method of measurement is more credible than a bare one, to readers and to AI tools alike.
- An FAQ section. Each question with a short answer is a passage ready to be quoted.
Measuring traffic from AI
GEO is new, and AI tools don't publish how they pick sources. The most reliable measure today is real visits: when someone clicks a source link in an answer, the visit comes from chatgpt.com, perplexity.ai or gemini.google.com. We set up a dedicated channel group for these sources in Google Analytics, so a business can see how many visitors GEO brings and which pages they land on.
FAQ
Should I block AI bots to protect my content?
It depends on what the site is for. If the content is what you sell (paid articles, courses), blocking AI bots makes sense. If the site is there to present your business and win clients, letting AI bots read it helps you show up in ChatGPT and Gemini answers. According to OpenAI's documentation, you can block the bot that collects training data (GPTBot) while still allowing the search bot (OAI-SearchBot).
Can a WordPress site do GEO?
It can. Rank Math and Yoast SEO already handle structured data, and Yoast can generate llms.txt automatically. What's left is checking that the hosting doesn't block AI bots and rewriting content as in step 5.
How long until AI tools mention my site?
There is no fixed timeline. AI tools that search the web can pick up a new page within days or weeks, much like Google. What a model already knows only changes when its developer trains a new version, and that is not something you can influence.
Footnotes
Want a quote?
Get in touch with Perxel today.