A practical GEO audit you can run in one afternoon.

Most brands now get described by machines before a human ever sees their site. That description is being written whether you look at it or not. This is the audit we run to find out what it says, and what to do about it.

Before you start: what you are actually auditing

Classic SEO asks whether you rank. GEO asks a different question: when a model answers a question in your category, does it mention you, and does it get you right.

Those are two separate failures and they need two different fixes. Being absent is a visibility problem. Being present but wrong is a source problem, and it is usually the more urgent of the two, because a confident wrong answer travels further than no answer at all.

Set aside three or four hours, open a blank document, and work through the five checks below in order. You are collecting evidence, not fixing things yet.

Check 1. Ask the machines about you

Open ChatGPT, Claude, Perplexity and Google AI Overviews. Run the same set of prompts in each, in a fresh session with no memory or personalisation, so you see what a stranger sees.

Run three kinds of prompt. First, your name: "What is [brand]?", "Who is behind [brand]?". Second, your category without your name: "best web design studios in Paris", "who can build a Shopify site for a fashion brand". Third, the questions your clients actually ask before they buy: pricing, timelines, what platform to choose.

Paste every answer into your document verbatim. Do not summarise them. The exact wording matters, because the phrasing tells you which page the model pulled from.

Check 2. Score what came back

Go through the answers and mark each one against three things.

Presence: were you mentioned at all in the category prompts. If not, note who was mentioned instead. That list is your real competitive set in AI search, and it is often not the same as the one you compete with in Google.

Accuracy: is what the models say about you correct. Look for outdated positioning, services you no longer offer, wrong locations, wrong founding date, wrong client names. Models blend sources, so errors often come from a stale directory listing rather than from your own site.

Sourcing: where did the answer come from. Perplexity and AI Overviews cite openly. ChatGPT and Claude often will if you ask them directly. When your own site is not among the sources, that is the finding that matters most.

Check 3. Confirm the models can read your site

This is the part people skip, and it is where most of the damage sits.

A lot of sites are readable by Google and unreadable by everything else. Google renders JavaScript; most AI crawlers do not, or do it poorly. So open one of your key pages, disable JavaScript in your browser, and reload. What is left is roughly what a model sees. If the page is empty, or the content only appears after a scroll animation fires, you have found your problem.

Then check the mechanics. Look at your robots.txt and confirm you are not blocking GPTBot, ClaudeBot, PerplexityBot or Google-Extended, unless you have decided to block them on purpose. Check that your headings describe the content rather than the layout. Check that your key facts, what you do, where you are, who you work with, exist as plain text somewhere and not only inside an image or a video.

If you have an llms.txt file, read it again and ask whether it still matches what you sell today. If you do not have one, note it and move on. It is a useful file, but it is not the fix for an unreadable site.

Check 4. Find the sources the models are using

Search your brand name and note every third-party page that describes you: directories, press mentions, LinkedIn, awards lists, old profiles on platforms you have forgotten.

Models lean on these heavily, especially for brands with a small site. If your Clutch profile says you are a WordPress agency and you stopped doing WordPress two years ago, that sentence is quietly shaping how you get described. Anything you can edit, edit. Anything you cannot, note it and plan to outweigh it with better sources.

This is also where you find out whether you are quotable. Models reuse sentences that are short, specific and stated as fact. If nothing on your site or in your press coverage reads like a clean factual statement about what you do, there is nothing for a model to lift.

Check 5. Decide what to fix first

You now have a document full of findings. Sort them by how much they cost you and how quickly they can be fixed.

Factual errors about your business go first. They are cheap to fix at the source and expensive to leave alone.

An unreadable site goes second. There is no point optimising anything else if the content never reaches the model.

Missing answers to buying questions go third. If you have no page that answers what you charge or how long a project takes, no model can answer it for you, and it will answer with a competitor who did publish it.

Everything else, the llms.txt, the structured data, the schema markup, comes after those three. It helps at the margin. It does not rescue a site that cannot be read or a brand that is being described wrongly.

What to measure afterwards

GEO does not yet have a Search Console. So make your own baseline: keep the prompt list from Check 1, keep the answers, and rerun exactly the same prompts once a month. What you are looking for is movement, whether you appear where you did not before, whether the errors have gone, whether your own pages start showing up as cited sources.

It is a manual measure, and it is imperfect. It is also the only one that reflects what a potential client actually sees when they ask a machine about your category.

The uncomfortable part

Running this audit for the first time is usually unflattering. Most brands find they are either invisible or described in terms they abandoned years ago.

That is worth knowing. The description exists either way. The only question is whether you have read it.

We run GEO audits for brands that want to know how they are being described in AI search, and what to change. If that is useful to you: bonjour@dellamattia.com.

Still here?