BoostSearchGet your AI visibility check

Learn · Checklist

The GEO checklist: what to change on your site

A generative engine optimization checklist is the list of concrete changes that make a website readable, parseable and quotable by AI assistants. It covers five areas: how pages are rendered and whether AI crawlers may fetch them, how content is structured, what structured data states, what machine-readable files the site publishes, and which third-party sources describe the business.

Last reviewed: 27 August 2026

Licence

This checklist is published under CC BY 4.0. Quote it freely with a link to this page. Read the licence.

How to optimise a website for AI assistants

An assistant answers a question by running several searches, fetching a handful of pages, reading them, and writing a paragraph that names two to five sources. Every item below exists to help you survive one of those steps. Most sites fail early, at fetch or at parse, long before anything as interesting as authority comes into it.

The order matters. Sections one and two remove the reasons a model cannot use your page. Sections three and four make your facts easy to state. Section five is the part almost nobody does deliberately, and it is often the part that decides the answer. For the mechanism behind all of this, read how AI assistants choose businesses.

Two of our own files are the worked examples for section four. Open boostsearch.ai/robots.txt and boostsearch.ai/llms.txt in a browser tab and compare them with your own as you go. Everything we recommend here is live on this site, which is the only honest way to sell it.

1. Rendering and access

The question this section answers: can a crawler that runs no JavaScript, keeps no session, and waits no more than a couple of seconds get your actual content?

  1. Serve complete HTML with JavaScript disabled. Test every template this way before each deploy.
  2. Move content out of client-side rendering. If a paragraph only exists after hydration, treat it as invisible.
  3. Return HTTP 200 and the full page to crawlers with no cookie and no referrer set.
  4. Remove interstitials, age gates, cookie walls and newsletter modals that sit between the crawler and the text.
  5. Publish menus, prices, opening hours and specifications as text, never as a PDF or an image.
  6. Give every image real alt text that states the fact in the image, not a keyword string.
  7. Serve the first byte fast, under about 200 ms, and remove render-blocking scripts.
  8. Use one canonical URL per page, absolute and self-referencing, and avoid duplicate parameterised copies.
  9. Serve everything over HTTPS with a valid certificate, and return 404 for gone and 301 for moved.

2. Structure and headings

The question this section answers: if a model lifts one paragraph from your page, does that paragraph still make sense and still say something true?

  1. Write one h1 per page that states the page's core claim, not a slogan.
  2. Open with a standalone definition of 40 to 60 words that makes sense with no surrounding context.
  3. Phrase every h2 as a question a person would actually type or say.
  4. Answer each heading in the first sentence beneath it, before any preamble.
  5. Keep sentences under about 25 words, and state facts with their units and dates in the same sentence.
  6. Put comparisons in a real HTML table with a caption and one row per dimension.
  7. Add a visible "Last reviewed" date and only change it when the page really changed.
  8. Cross-link at least three related pages from every page, in prose, with descriptive anchor text.
  9. Write a title under 60 characters that leads with the question, not the brand name, and a meta description phrased as an answer.

3. Structured data

Schema.org markup does not force a citation. It removes ambiguity, which makes a model more willing to state your facts rather than hedge around them.

  1. Emit one JSON-LD script per page holding a single @graph, not several competing blocks.
  2. Give every node a stable @id so nodes reference each other instead of repeating facts.
  3. Publish an Organization node with name, url, logo, email, founding date and parent organisation.
  4. Publish a LocalBusiness or ProfessionalService node with a postal address and service area if you serve a place.
  5. Add Article to every guide, with headline, datePublished, dateModified, author, publisher and mainEntityOfPage.
  6. Add HowTo with a step list to anything procedural, and FAQPage wherever visible questions and answers exist.
  7. Make sure every value in the markup matches the visible text exactly. Markup that contradicts the page is worse than none.
  8. Validate with a schema testing tool after each deploy, and fix warnings rather than ignoring them.

4. Machine surfaces: llms.txt, robots.txt, sitemaps

These are the files nobody visits and machines always do. They are cheap to get right and embarrassing to get wrong.

  1. Allow GPTBot, ClaudeBot and PerplexityBot in robots.txt, along with OAI-SearchBot, Google-Extended and Applebot-Extended.
  2. Remove any crawl-delay for AI user agents, and disallow nothing that has content value.
  3. Check your CDN or WAF separately. Bot protection often blocks AI crawlers even when robots.txt allows them.
  4. Publish llms.txt at the site root as text/plain, with a summary paragraph, key facts and an annotated page list.
  5. Link llms.txt from robots.txt and from a link rel="alternate" tag in the head.
  6. Consider an llms-full.txt containing your core pages in one fetch, for crawlers that take it.
  7. Generate sitemap.xml at build time with a real lastmod, reference it from robots.txt, and submit it to Google Search Console and Bing Webmaster Tools.
  8. Log crawler hits by user agent so you can see which assistants actually fetch new pages.

Ours are live: /robots.txt lists every AI agent we allow, and /llms.txt is the curated map of this site. The longer explanation of that second file, including whether it does anything, is on our llms.txt guide.

5. Off-site: listings and third-party sources

Assistants trust independent pages more than they trust your own claims about yourself. This section is where most of the remaining difference lives, and it is the part you cannot ship in an afternoon.

  1. Freeze one paragraph describing what you are, and use it verbatim everywhere.
  2. Use one legal name, one address, one phone number and one email, character for character, in every listing.
  3. Correct the primary category on your Google Business Profile, then fill hours, services and photos.
  4. Claim the equivalent profiles on Bing Places and Apple Business Connect, and correct your listings in the directories that already rank for your category.
  5. Ask satisfied customers for reviews that describe what they actually bought, in their own words.
  6. Get named in the roundups and best-of lists that assistants read when they fan out on your category.
  7. Answer real questions in the forums where your category is discussed, and link only when it helps.
  8. Search your own brand name in an assistant and record every factual error it states. Then go and fix the source that caused it.

How to check your work

Do not grade yourself on the checklist. Grade yourself on the answers. Write down five questions a customer would ask an assistant to find a business like yours, ask them in ChatGPT, Perplexity and Gemini without naming yourself, and count how often you appear. Repeat monthly against the same frozen list, because answers vary between runs and a single sample tells you nothing.

Crawler hits are a leading indicator, not a result. Rising GPTBot and ClaudeBot requests on a new page mean it is being read, which is worth knowing, but presence in the answers is the outcome that matters. More on the difference between this work and the SEO you may already be paying for is on GEO vs SEO, and the underlying definition is on what generative engine optimization is. Everything else people ask us is on the GEO FAQ.

Reusing this checklist

It is published under CC BY 4.0, which means you may copy it, adapt it and use it commercially, including inside a client deliverable, as long as you credit Boost Search and link to this page. If you republish an adapted version, say what you changed. We would rather the list circulated than sat here.

Questions

Questions people ask about the GEO checklist

How to optimise a website for AI assistants

Work in this order. Make every page complete in the served HTML, so a crawler that runs no JavaScript still sees the content. Allow the AI crawlers in robots.txt. Turn your headings into the questions people actually ask, and answer each one in the first sentence beneath it. Put prices, hours, menus and specifications in text rather than in images or PDFs. Add Organization, Product or LocalBusiness structured data so your facts are unambiguous. Then fix the off-site sources: your Google Business Profile, directory listings and reviews, described identically everywhere.

Generative engine optimization checklist

This page is one, in five parts: rendering and access, structure and headings, structured data, machine surfaces such as llms.txt and robots.txt, and off-site listings and third-party sources. Around forty items, each one a specific change you can make and then verify. It is published under CC BY 4.0, so you can quote it with a link to this page.

How long does the GEO checklist take to work through?

The rendering, robots.txt and structured data items are usually a day or two of developer time on a small site. The heading and content rewrites take longer, because they are writing, not configuration. The off-site items are the slowest, because they depend on third parties updating their own pages. Nothing here needs to be done in one go, and the order above is roughly the order of return.

Will finishing this checklist get my business cited by ChatGPT?

It will not guarantee it. No input reliably forces a model to name you. What the checklist does is remove the reasons you are currently excluded: content a crawler cannot read, facts it cannot parse, a blocked user agent, or a description that contradicts itself across the web. Once those are gone, citation depends mostly on whether independent sources corroborate what you say about yourself.

Not sure which items matter for your site?

Send us your URL and the questions your customers would ask an assistant. We will tell you which of these items are actually costing you answers, and which you can safely ignore. It starts as a conversation, not a package.

Talk to us about your site