GEO
Schema markup pour les IA : guide GEO technique 2026
Le schema markup est l'un des leviers GEO les plus sous-exploités en 2026. Tout le monde sait qu'il aide pour les Rich Snippets Google. Quasiment personne ne sait qu'il est aussi un signal direct pour ChatGPT, Perplexity, Claude, Gemini et Mistral.
Les LLMs lisent et exploitent le schema markup pour structurer leurs réponses, identifier les sources autoritaires et extraire les informations pertinentes. Une page avec un schema FAQPage propre a 3 à 5 fois plus de chances d'être citée par les IA qu'une page sans schema, à contenu équivalent.
Voici les 8 schemas Schema.org à déployer en priorité pour le GEO en 2026, leur impact réel, et le code JSON-LD prêt à copier pour Next.js, WordPress et autres CMS.
Qu'est-ce que le schema markup en 2026 ?
Le schema markup est un balisage standardisé (Schema.org) ajouté au HTML des pages web pour décrire leur contenu de manière structurée. Format JSON-LD recommandé en 2026. Les moteurs de recherche et les IA conversationnelles l'utilisent pour comprendre le sens des pages au-delà du texte brut.
Historique rapide : Schema.org a été créé en 2011 par Google, Bing, Yahoo et Yandex pour standardiser le balisage sémantique du web. Étendu progressivement avec des centaines de types (Article, Product, Recipe, Event, etc.), il est devenu critique en 2024-2026 avec l'arrivée des LLMs qui exploitent ces données structurées pour générer leurs réponses.
Trois formats coexistent : Microdata (intégré dans le HTML), RDFa (similaire), et JSON-LD (script séparé dans le <head>). En 2026, JSON-LD est le format recommandé par Google et exploité par tous les LLMs. Les deux autres formats fonctionnent encore mais sont en déclin.
Pourquoi le schema markup est critique pour le GEO
Cinq raisons font du schema markup un levier prioritaire en 2026.
1. Les LLMs parsent JSON-LD plus efficacement que le HTML brut. Quand ChatGPT, Claude ou Perplexity analyse une page, il extrait d'abord les données structurées en JSON-LD avant de parcourir le HTML. Pour les éléments couverts par un schema (titre, auteur, date, FAQ, etc.), l'extraction est quasi-instantanée et fiable.
2. Schema = signal direct d'autorité éditoriale. Les champs author, publisher, datePublished, dateModified permettent aux IA d'évaluer la source. Un article avec un auteur identifié, un éditeur clair et des dates précises est mieux pondéré qu'un contenu anonyme.
3. Schema FAQPage et HowTo sont extractibles directement. Quand un utilisateur pose une question à ChatGPT, le modèle privilégie les pages qui ont une réponse structurée en FAQPage ou en HowTo. Citation quasi-garantie si tu réponds explicitement à la question.
4. Schema LocalBusiness est clé pour le GEO local. Pour les commerces et professions libérales, le schema LocalBusiness avec adresse, horaires, zone de service et catégorie est exploité par ChatGPT et Perplexity pour les requêtes locales ("coiffeur Asnières", "avocat Paris 15").
5. Schema Article + Author = E-E-A-T fort. Google a explicitement déclaré que l'E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness) est un signal pour Gemini et les AI Overviews. Le schema Article complet avec auteur identifié renforce directement ce signal.
Les 8 schemas prioritaires pour le GEO en 2026
1. Article — sur tous tes articles de blog
C'est le schema le plus fréquemment exploité par les LLMs. À déployer systématiquement sur chaque article.
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Titre exact de l'article",
"description": "Meta description de l'article",
"image": "https://exploreum.fr/images/article-hero.jpg",
"datePublished": "2026-05-11T08:00:00+02:00",
"dateModified": "2026-05-11T08:00:00+02:00",
"author": {
"@type": "Person",
"name": "Antoine Auffray",
"url": "https://exploreum.fr/a-propos"
},
"publisher": {
"@type": "Organization",
"name": "Exploreum",
"logo": {
"@type": "ImageObject",
"url": "https://exploreum.fr/logo.png"
}
}
}
2. FAQPage — sections FAQ
Critique pour le GEO. À déployer sur toute section FAQ de l'article ou de la landing.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Quelle est la première question ?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Réponse complète à la première question."
}
},
{
"@type": "Question",
"name": "Quelle est la deuxième question ?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Réponse complète à la deuxième question."
}
}
]
}
3. HowTo — tutoriels étape par étape
À déployer sur les guides pratiques avec étapes numérotées.
{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "Comment configurer ton robots.txt pour les IA",
"description": "Guide en 4 étapes pour configurer robots.txt en 2026.",
"step": [
{
"@type": "HowToStep",
"name": "Étape 1 : Identifier les bots IA",
"text": "Liste les user-agents : GPTBot, OAI-SearchBot, ClaudeBot..."
},
{
"@type": "HowToStep",
"name": "Étape 2 : Choisir une stratégie",
"text": "Ouverture totale ou blocage entraînement seul..."
}
]
}
4. LocalBusiness — sites avec présence physique
Important pour les commerces locaux, professions libérales, agences. Permet la citation locale dans ChatGPT, Perplexity, Gemini.
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Salon des Familles",
"image": "https://salondesfamilles.fr/photo.jpg",
"address": {
"@type": "PostalAddress",
"streetAddress": "12 rue de Paris",
"addressLocality": "Asnières-sur-Seine",
"postalCode": "92600",
"addressCountry": "FR"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 48.911,
"longitude": 2.285
},
"telephone": "+33147982134",
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
"opens": "09:00",
"closes": "19:00"
}
],
"areaServed": "Asnières-sur-Seine, Bois-Colombes, Colombes"
}
Pour un type plus spécifique (ex: HairSalon, Restaurant, LegalService, MedicalBusiness), remplace LocalBusiness par le sous-type correspondant.
5. Organization — page d'accueil et footer
À déployer une fois sur le site (typiquement sur la page d'accueil) pour identifier l'entité éditrice.
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Exploreum",
"url": "https://exploreum.fr",
"logo": "https://exploreum.fr/logo.png",
"contactPoint": {
"@type": "ContactPoint",
"email": "contact@exploreum.fr",
"contactType": "customer support",
"areaServed": "FR"
},
"sameAs": [
"https://www.linkedin.com/company/exploreum",
"https://twitter.com/exploreum"
]
}
6. Service — pages services
À déployer sur chaque page service (landing offre).
{
"@context": "https://schema.org",
"@type": "Service",
"serviceType": "Agence GEO",
"name": "Optimisation GEO pour TPE/PME",
"description": "Apparaître dans ChatGPT, Perplexity, Claude et Gemini.",
"provider": {
"@type": "Organization",
"name": "Exploreum"
},
"areaServed": "France",
"offers": {
"@type": "Offer",
"price": "990",
"priceCurrency": "EUR"
}
}
7. BreadcrumbList — navigation
À déployer sur toutes les pages internes pour signaler la hiérarchie. Aide aussi les LLMs à comprendre la structure du site.
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Accueil",
"item": "https://exploreum.fr/"
},
{
"@type": "ListItem",
"position": 2,
"name": "Blog",
"item": "https://exploreum.fr/blog"
},
{
"@type": "ListItem",
"position": 3,
"name": "Schema markup pour les IA",
"item": "https://exploreum.fr/blog/schema-markup-pour-les-ia"
}
]
}
8. Review et AggregateRating — avis clients
Si tu as des avis clients, déploie-les en schema. Très exploité par les IA pour évaluer la crédibilité commerciale.
{
"@context": "https://schema.org",
"@type": "Service",
"name": "Création de site vitrine",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.9",
"reviewCount": "47"
},
"review": [
{
"@type": "Review",
"author": {
"@type": "Person",
"name": "Drisse M."
},
"reviewRating": {
"@type": "Rating",
"ratingValue": "5"
},
"reviewBody": "Site livré en 3 semaines, beaucoup de nouveaux clients depuis."
}
]
}
Code JSON-LD complet (à copier-coller)
Pour gagner du temps, voici un bloc unique qui combine Article + Author + Organization + FAQPage + BreadcrumbList pour un article de blog typique. C'est le bloc qu'on déploie par défaut sur les articles d'Exploreum.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Article",
"@id": "https://exploreum.fr/blog/article#article",
"headline": "Titre de l'article",
"description": "Description courte de l'article.",
"image": "https://exploreum.fr/images/article.jpg",
"datePublished": "2026-05-11T08:00:00+02:00",
"dateModified": "2026-05-11T08:00:00+02:00",
"author": { "@id": "#author" },
"publisher": { "@id": "#publisher" }
},
{
"@type": "Person",
"@id": "#author",
"name": "Antoine Auffray",
"url": "https://exploreum.fr/a-propos",
"jobTitle": "Fondateur, Exploreum"
},
{
"@type": "Organization",
"@id": "#publisher",
"name": "Exploreum",
"url": "https://exploreum.fr",
"logo": "https://exploreum.fr/logo.png"
},
{
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Question 1 ?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Réponse 1."
}
}
]
},
{
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Accueil", "item": "https://exploreum.fr/" },
{ "@type": "ListItem", "position": 2, "name": "Blog", "item": "https://exploreum.fr/blog" },
{ "@type": "ListItem", "position": 3, "name": "Cet article", "item": "https://exploreum.fr/blog/article" }
]
}
]
}
</script>
Place ce script dans le <head> de la page. Adapte les @id, URLs, titres et FAQ à ton contenu réel.
Implémentation par CMS
Next.js (App Router)
Crée un composant JsonLd.tsx :
type JsonLdProps = { data: object };
export function JsonLd({ data }: JsonLdProps) {
return (
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(data) }}
/>
);
}
Utilise-le dans tes pages :
import { JsonLd } from '@/components/JsonLd';
export default function ArticlePage() {
const articleSchema = {
'@context': 'https://schema.org',
'@type': 'Article',
headline: 'Titre',
// ... autres champs
};
return (
<>
<JsonLd data={articleSchema} />
<article>...</article>
</>
);
}
WordPress
Trois options selon ton niveau et ton budget.
Yoast SEO (gratuit + payant) génère automatiquement Article + Organization + WebSite. Schema FAQPage et HowTo via blocs Gutenberg dédiés. Limites : personnalisation avancée payante.
RankMath (gratuit + payant) couvre plus de schemas en version gratuite (Article, Product, Recipe, Review, FAQ, HowTo). Interface plus intuitive que Yoast.
Schema Pro (payant ~80 €/an) pour les sites qui veulent un contrôle complet sur tous les schemas avancés (Service, LocalBusiness sous-types, Event, etc.).
Webflow / Framer
Pas d'option native intégrée. Ajoute manuellement un bloc "Custom Code" dans la balise <head> avec ton script JSON-LD :
<script type="application/ld+json">
{ /* ton schema ici */ }
</script>
Pour les schemas dynamiques (par page), Webflow propose des champs CMS personnalisables que tu peux injecter dans le script.
Les 5 erreurs schema qui te coûtent du GEO
1. Pas de schema du tout. L'erreur la plus fréquente. 60% des sites français en 2026 n'ont aucun schema markup déployé. Tu pars d'un déficit majeur en GEO si tu es dans cette catégorie.
2. Schema mal validé (erreurs JSON-LD). Une virgule manquante, un guillemet mal placé, un type Schema.org inexistant, et tout ton schema est ignoré. Toujours valider après déploiement.
3. Schema FAQPage générique. Beaucoup de sites mettent du FAQPage avec des questions ultra-larges ("Pourquoi nous choisir ?") qui n'apportent aucune valeur. Les IA détectent ces FAQs creuses et les déprécient. Pose de vraies questions concrètes auxquelles tes utilisateurs cherchent vraiment réponse.
4. Author = "Admin" ou anonyme. Un schema Article sans auteur identifié est un signal négatif E-E-A-T. Toujours nommer un auteur réel avec un profil consultable (page bio, lien LinkedIn, bio courte sur l'article).
5. Pas de mise à jour dateModified après refresh. Si tu mets à jour un article, modifie aussi dateModified dans le schema. Sinon les IA pensent que ta page est obsolète et la déprécient. Particulièrement critique pour Perplexity et Gemini qui surpondèrent la fraîcheur.
Vérifier ton schema en 5 minutes
Trois outils pour valider et auditer ton schema markup.
1. Rich Results Test (Google) (search.google.com/test/rich-results) : l'outil officiel de Google. Entre l'URL d'une page, l'outil te montre quels schemas sont détectés, s'ils sont valides, et s'ils sont éligibles aux Rich Results. À utiliser après chaque déploiement.
2. Schema.org Validator (validator.schema.org) : un validateur indépendant (anciennement Structured Data Testing Tool de Google avant qu'il ne soit retiré). Plus permissif sur les types Schema.org non supportés par Google mais valides en standard. Utile pour valider les schemas avancés exploités par les IA.
3. Ahrefs Site Audit / Screaming Frog : pour un audit complet du site. Te montre la couverture schema page par page, repère les pages sans schema, identifie les erreurs en masse. Pratique pour les gros sites.
Pour un suivi continu, Google Search Console (rubrique "Améliorations") liste tes Rich Results actifs et les éventuelles erreurs détectées.
FAQ
Quel format de schema utiliser : JSON-LD, Microdata ou RDFa ?
JSON-LD est le format recommandé par Google et exploité par tous les LLMs en 2026. Microdata et RDFa fonctionnent encore mais sont en déclin. Si tu pars de zéro, utilise JSON-LD systématiquement. Pas besoin de mixer les formats.
Combien de schemas par page maximum ?
Pas de limite officielle, mais en pratique : 3 à 6 schemas par page sont fréquents et bien tolérés. Au-delà de 10 schemas distincts, tu risques la dilution du signal et des warnings dans les outils de validation. Privilégie la qualité à la quantité.
Le schema garantit-il une citation par ChatGPT ?
Non, rien ne garantit une citation. Le schema markup augmente significativement tes chances (3 à 5 fois selon les études), mais d'autres facteurs comptent : qualité du contenu, autorité du domaine, fraîcheur, structure éditoriale. Le schema est un signal nécessaire mais pas suffisant.
Faut-il déployer schema sur toutes les pages ?
Pas forcément les mêmes schemas sur toutes les pages, mais oui, chaque page devrait avoir au moins un schema pertinent. Article sur les articles, Service sur les pages services, LocalBusiness sur la page contact d'un commerce, Organization sur l'accueil. Pages 404 et pages techniques exclues.
Comment Google traite-t-il les conflits entre schemas ?
En cas de conflit (par exemple, deux schemas Article différents sur la même page), Google prend généralement le premier en priorité. Évite les doublons. Si tu as plusieurs schemas, utilise @graph pour les regrouper proprement (comme dans l'exemple code complet ci-dessus).
Schema et SEO traditionnel — quelle priorité ?
Les deux se renforcent. Le SEO classique (contenu + backlinks + technique) reste la fondation. Le schema markup amplifie tes efforts SEO en rendant ton contenu plus exploitable par les moteurs et les IA. Investir dans le schema sans bon SEO derrière = effort partiellement perdu.
Le schema markup est-il pénalisé si abusé ?
Oui. Google pénalise explicitement le "schema spam", par exemple ajouter un schema Review avec 5 étoiles sur ton service sans avoir de vrais avis. Les pénalités incluent la perte des Rich Results et, en cas grave, une baisse de classement manuelle. Reste honnête : schema = description fidèle de la page.
Le meilleur rapport effort / impact en GEO
Le schema markup est en 2026 le meilleur rapport effort / impact en GEO. Quelques heures de configuration suffisent à déployer les 8 schemas sur un site existant, et le gain en visibilité IA est mesurable (3 à 5 fois plus de chances de citation, selon les études récentes).
Si tu pars de zéro : commence par Article + Author + Organization sur tous tes contenus, ajoute FAQPage et HowTo là où c'est pertinent, puis LocalBusiness, Service et BreadcrumbList selon le type de page.
Tu veux qu'on audite ton schema markup actuel et qu'on identifie les optimisations rapides ? Notre audit GEO en 48h inclut systématiquement un audit schema complet avec recommandations priorisées.