SEO & GEO audit
Found on Google. Understood by answer engines.
SEO answers one question: does your page show up in a list of results?
AI assistants ask another: is your expertise clear, structured and verifiable enough to be used inside an answer?
At a glance
- What it is
- Audit of a site's visibility in search engines and in answer engines: crawlability, semantic structure, entities, structured data and how extractable the content is.
- Who it is for
- Companies whose site is well built but poorly understood by engines, brands that AI assistants never cite on their own subject, multilingual sites whose versions compete with each other.
- Deliverables
- Audit report, prioritised technical fixes, entity architecture and structured data plan, editorial recommendations, measurement points.
- Typical duration
- Two to five days depending on the size of the site and the number of languages.
- How it runs
- Remote, with workshops and scoping sessions on site when the project calls for it.
- Where
- Anywhere in France remotely; on-site work in the Paris area (Île-de-France).
Getting in touch: contact form or WhatsApp, reply within a few working days.
SEO and GEO are not aiming at the same thing
Two distinct problems that share a technical base but not their goal.
SEO: being found
A search engine indexes pages and ranks them. The user picks a link and visits the site. What matters: indexability, how relevant the page is to a query, inbound links.
GEO / AEO: being understood and cited
An answer engine does not return a list: it builds an answer and sometimes cites its sources. What matters: being able to extract a factual statement from your content, identify the entity behind it, and corroborate it elsewhere.
The two go together. A site that answer engines understand poorly is almost always a site whose structure also gives Google trouble.
What this engagement does not do
Nobody can guarantee a position inside ChatGPT, Claude, Gemini or Perplexity. There is no public ranking, no way to buy placement, no index to consult. What can be worked on are the conditions that make a citation possible: content that is reachable, structured, attributable to an identifiable entity, and consistent with what is found about you elsewhere. If someone promises you the top spot on ChatGPT, they are selling something else.
The levers that actually exist
Every point below can be observed, fixed and verified. None of it involves influencing a model.
Crawlability
What robots actually reach: robots.txt, redirects, orphan pages, response times. AI assistant crawlers share neither the user agents nor the capabilities of Googlebot.
Indexability
Canonical, hreflang, sitemap, duplication between language versions, pages competing for the same intent.
Content present in the initial HTML
Content rendered only on the client can be invisible to part of the crawlers. We check what actually exists in the first HTML response: title, introduction, offers, FAQ, internal links.
Semantic architecture
Heading hierarchy, one intent per page, internal links that genuinely connect pages rather than a block of twenty-five links in the footer.
Entities
Who you are, what you do, for whom. A clear entity (person, brand, organisation) consistently connected to its pages, its areas of expertise and its public profiles.
Structured data
A coherent JSON-LD graph, with stable identifiers linking every page to the same entity, rather than isolated schemas copied page by page.
Extractable content
Short, self-contained, factual answers that make sense out of context: definitions, scope, durations, deliverables, conditions, pricing where it is public.
Topical authority
Covering one subject in depth rather than skimming twenty. That is what makes a source reusable across a whole family of questions.
External citations and presence
Answer engines cross-check. What is said about you elsewhere (professional profiles, public repositories, publications, serious directories) weighs as much as your own site.
Brand consistency
The same name, the same description, the same links everywhere. Inconsistencies prevent an entity from consolidating and dilute the signal.
Conversational intents
Questions asked of an assistant are sentences, not keywords. Content has to answer real questions rather than target a phrase.
Who it is for
This audit is useful if you are:
- a company whose site is well built, but that engines summarise badly or not at all
- a brand or an independent that AI assistants never cite on its own subject
- a multilingual site whose versions compete instead of complementing each other
- a technical team that wants a list of applicable fixes, not an eighty-page report
How the audit runs
- Technical survey: what a crawler actually sees of your site, page by page.
- Entity analysis: consistency between your site, your public profiles and what is said about you elsewhere.
- Content review: heading hierarchy, intents covered, how extractable the answers are.
- Testing on real queries: what search engines and assistants return today about your subject and about your brand.
- Debrief: fixes prioritised by impact and cost, separating what belongs to code, to content and to the outside world.
Deliverables
- Audit report: what is blocking, why, and in what order to deal with it.
- Prioritised technical fixes: crawl, indexing, rendering, performance.
- Entity architecture and structured data plan, with the identifiers to use.
- Editorial recommendations: intents to cover, pages to merge or create, answer formats.
- Measurement points: what can be tracked, and what cannot.
Focused engagements
Short formats, sold by the day, to settle a specific question without committing to a long engagement.
AI visibility audit (GEO)
1 to 2 daysWhat AI assistants can actually extract from your site: content present in the initial HTML, an identifiable entity, statements they can reuse as-is, consistency with your public traces.
Deliverable: Extractability diagnosis and entity architecture.
Technical SEO audit
1 to 2 daysA survey of what a search engine really reaches and indexes: robots.txt, rendering, canonical, hreflang, sitemap, internal linking, response times, pages competing with each other.
Deliverable: Fixes prioritised by impact and cost.
Structured data and markup
2 to 3 daysSetting up a coherent JSON-LD graph: a single entity connected from page to page, covering pages, offers, articles and breadcrumbs, aligned with what each page actually shows.
Deliverable: Markup deployed, validated and documented.
And if you want it done
The audit can stop at the report, or continue into implementation: structured data, internal linking, rendering fixes, sitemap generation and the files meant for crawlers. I design and I implement, which avoids a report nobody knows how to apply.
What you end up with
After the audit and the fixes:
- the essential pages are reachable, unique and correctly attributed
- a clear entity, connected the same way across every page
- content an engine can extract an exact answer from, without interpreting it
- a prioritised list of external actions, beyond the code
What this does not guarantee: a position. What it changes: the conditions that make a citation possible.
Frequently asked questions
Can you guarantee that ChatGPT will cite me?
No, and nobody can. There is no public ranking and no way to buy placement in answer engines. What can be worked on are the technical and editorial conditions that make a citation possible.
How is this different from classic SEO work?
Classic SEO optimises where a page ranks in a list of results. This audit adds extractability and entity: an answer engine has to isolate a statement, know who stands behind it and corroborate it elsewhere. Both share a common technical base.
Should AI robots be blocked in robots.txt?
It is a trade-off, not an obvious call. Blocking training crawlers protects your content but improves no visibility; blocking retrieval crawlers makes you invisible inside answers. The two families are told apart by their user agent, and the decision is made with the file in hand.
My site runs on React or Next.js. Is that a problem?
Not in itself. The problem appears when essential content only exists after JavaScript runs: part of the crawlers, assistant crawlers in particular, do not execute it, or execute it badly. The audit checks what is present in the first HTML response.
Do you work on multilingual sites?
Yes, and it is a common source of friction: canonical and hreflang set up badly make two translations look like duplicate content, and the version that surfaces is not the one you expect.