Schema Person freelance et consultant : le guide complet 2026
Réservez votre formation
En 2026, être trouvé sur Google ne suffit plus. Il faut être compris par les moteurs, par les IA génératives (ChatGPT, Claude, Perplexity, Google AI Overviews) et par les graphes de connaissance qui structurent la moitié du web.
Pour un freelance ou un consultant indépendant, cette compréhension passe par un objet précis : le Schema.org Person. C’est lui qui permet à Google, à Bing et aux moteurs IA de répondre à des questions comme « qui est ce consultant SEO à Toulouse ? », « quelles sont ses spécialités ? », « a-t-il des certifications ? », « combien de missions a-t-il réalisées ? ».
Pourtant, la plupart des sites de freelances que j’audite n’ont qu’un Schema Person minimaliste — généré automatiquement par Yoast ou Rank Math, avec deux ou trois propriétés (name, url, parfois sameAs). C’est insuffisant. Pire : ça envoie un signal de faible structuration aux moteurs.
Dans ce dossier, je détaille comment construire un Schema Person enrichi qui combine identité personnelle, expertise et activité commerciale, avec un cas concret tiré du déploiement réalisé sur ce site (remi-brandini.com) en mai 2026. Code JSON-LD complet inclus, erreurs Rich Results à éviter, résultats mesurés à J+15.
Lien interne : Le GEO en 2026 : comment être cité par ChatGPT et Claude — sujet directement lié, car Schema Person est l’un des leviers GEO les plus puissants.
Schema Person devient critique en 2026
Trois bascules ont changé la donne en 12 mois :
- Les IA génératives lisent les Schemas. ChatGPT, Claude, Perplexity et Google AI Overviews exploitent activement les données structurées pour identifier les entités citables. Un freelance correctement modélisé en Schema Person est un candidat naturel à la citation.
- Le Knowledge Graph de Google s’étend aux indépendants. Auparavant réservé aux entreprises et personnalités publiques, le Knowledge Graph indexe maintenant les consultants, formateurs, freelances et auteurs disposant d’un Schema Person solide + de signaux d’autorité (
sameAs, articles, citations). - Le E-E-A-T (Expérience, Expertise, Autorité, Confiance) est devenu mesurable par les machines. Schema Person est le format natif pour exposer expérience (
description), expertise (knowsAbout), autorité (hasCredential) et confiance (aggregateRating,worksFor).
Si tu es freelance ou consultant et que ton Schema Person se limite à ton nom et ton URL, tu laisses 80 % de ta lisibilité moteur et IA sur la table.
Schema Person vs Schema Organization : ne pas se tromper
Erreur fréquente : utiliser uniquement Schema Organization pour un site personnel de freelance. C’est sous-optimal pour plusieurs raisons :
- Organization modélise une entreprise abstraite. Person modélise un humain identifiable. Les IA citent plus volontiers une personne (« d’après le consultant SEO Rémi Brandini ») qu’une entité corporate.
- Person permet l’usage de
jobTitle,worksFor,knowsAbout,hasCredential, propriétés sans équivalent direct en Organization. - Person s’intègre dans le graphe E-E-A-T : Google associe les contenus à un auteur identifiable, ce qui renforce le signal expertise.
La bonne approche : les deux. Schema Person en entité principale, lié à une ProfessionalService (sous-type de LocalBusiness) via worksFor. La Person porte l’identité et l’expertise ; la ProfessionalService porte l’activité commerciale, les avis, les prestations.
C’est exactement la structure que j’ai déployée sur ma home (voir cas concret plus bas).
Les 8 propriétés Schema Person à connaître
Voici les propriétés qui font la différence entre un Schema Person basique et un Schema Person enrichi.
1. name + givenName + familyName Toujours dissocier prénom et nom. Les IA et le Knowledge Graph s’appuient sur ces champs pour la désambiguïsation.
2. jobTitle Précis, pas générique. « Consultant SEO et formateur certifié Qualiopi » > « Consultant ».
3. description 2 à 3 phrases denses, factuelles, avec chiffres si possible. C’est ce que Google peut afficher dans un panneau Knowledge Graph. Exemple réel utilisé sur ma home :
"description": "Consultant indépendant SEO et Google Ads basé à Toulouse, 16 ans d'expérience. Spécialisé en Google Ads (Search, Shopping, Performance Max), SEO technique, SEO sémantique, netlinking, référencement local Google Business Profile et formations Qualiopi (Google Ads, SEO, GMB)."
4. knowsAbout Tableau de sujets que tu maîtrises. C’est l’un des signaux les plus puissants pour le GEO. Vise 10 à 20 entrées précises. Exemple réel — mes 18 entrées sur remi-brandini.com :
"knowsAbout": [ "Search Engine Optimization (SEO)", "Google Ads", "Google Search Ads", "Google Shopping", "Performance Max", "Google Tag Manager", "Google Analytics 4", "SEO technique", "SEO sémantique", "Netlinking", "Référencement local Google Business Profile", "EEAT (Experience, Expertise, Authoritativeness, Trust)", "Generative Engine Optimization (GEO)", "Answer Engine Optimization (AEO)", "Audit SEO", "Stratégie de contenu SEO assistée par IA", "Topic clusters et siloing", "Conversion tracking GTM" ]
Décomposition : 5 entrées Google Ads (granularité par produit, pas juste « Google Ads »), 2 outils mesure (GTM + GA4), 4 SEO classique (technique, sémantique, netlinking, local), 3 émergents 2026 (GEO, AEO, EEAT), 4 stratégie/transverse. Aucune entrée vague type « marketing digital ». Chaque entrée est un concept que les IA peuvent matcher sur des requêtes utilisateur.
5. hasCredential Certifications, diplômes, habilitations. Modélise chaque certification comme un objet EducationalOccupationalCredential avec credentialCategory et recognizedBy. Exemple réel — mes 2 credentials :
"hasCredential": [
{
"@type": "EducationalOccupationalCredential",
"name": "Certification Google Ads Search",
"credentialCategory": "Professional Certification",
"recognizedBy": {
"@type": "Organization",
"name": "Google",
"url": "https://skillshop.exceedlms.com/student/path/2891-google-ads-search-certification"
}
},
{
"@type": "EducationalOccupationalCredential",
"name": "Certification Qualiopi (organisme de formation)",
"credentialCategory": "Professional Certification",
"recognizedBy": {
"@type": "Organization",
"name": "France Compétences"
}
}
]
Le détail qui change tout : recognizedBy.url vers la page officielle Skillshop sur la certif Google. Sans URL vérifiable, ton hasCredential est inerte pour Google. Avec URL, il devient un signal d’autorité tracé.
6. worksFor Pointe vers une ProfessionalService ou Organization (ton activité commerciale). C’est dans cette entité que tu loges aggregateRating, hasOfferCatalog, priceRange, areaServed.
7. sameAs Tableau d’URLs vers tes profils tiers : LinkedIn, X, GitHub, Malt, Comeup, profil Google Business si tu en as un. Plus tu accumules de sameAs cohérents, plus le Knowledge Graph te valide comme entité.
8. address + email + telephone Coordonnées vérifiables. address doit pointer une vraie adresse postale (région suffit) au format PostalAddress.
Lien interne : Le E-E-A-T en 2026 : comment Google mesure ton autorité
Le pattern @id : canonicaliser ton entité pour le Knowledge Graph
C’est la propriété la plus négligée des Schema Person — et la plus critique pour le GEO en 2026.
@id est l’identifiant unique de ton entité dans le graphe de données. Sans @id stable, chaque crawl de chaque page peut donner naissance à une « nouvelle » entité Person dans la perception de Google. Tu te dilues. Avec un @id stable, toutes les occurrences de toi sur ton site convergent vers une seule entité canonique — celle que Google et les IA peuvent stocker, citer, valider.
Pattern recommandé : un URI absolu sous ton domaine, avec un fragment lisible. Exemple sur ma home :
{
"@type": "Person",
"@id": "https://remi-brandini.com/#consultant-rb",
...
}
Et pour la ProfessionalService chaînée via worksFor :
"worksFor": {
"@type": "ProfessionalService",
"@id": "https://remi-brandini.com/#service",
...
}
Critique : si tu as un Schema Person généré par Rank Math ou Yoast en parallèle de ton Schema enrichi WPCode, les deux peuvent porter le même @id → Google les fusionne automatiquement, pas de conflit d’entité. Sans @id partagé, tu as deux Person concurrentes sur ta home — Google ne sait pas laquelle est canonique et peut diluer ton autorité.
C’est exactement le problème que j’ai résolu sur remi-brandini.com en mai 2026 (détail dans le cas concret ci-dessous).
La combinaison gagnante : Person + ProfessionalService
Pour un freelance ou consultant, la structure recommandée combine deux entités liées :
Schema Person (toi, l'humain)
└─ worksFor → Schema ProfessionalService (ton activité)
├─ aggregateRating
├─ hasOfferCatalog
├─ priceRange
├─ areaServed
└─ image
Pourquoi cette séparation ?
- Lisibilité IA : Claude et ChatGPT savent qu’ils ont affaire à une personne (citation possible) ET à une activité commerciale (recommandation possible).
- Rich Results :
aggregateRatingne peut pas être attaché directement à une Person (c’est interdit par Google depuis 2019). Il doit être attaché à une entité business (Organization, LocalBusiness, ProfessionalService, etc.). - Knowledge Graph : Google distingue la Person citable de l’entité commerciale référençable. Les deux se nourrissent mutuellement.
ProfessionalService est un sous-type de LocalBusiness qui convient parfaitement aux consultants, freelances, agences. Il accepte toutes les propriétés business utiles : priceRange, openingHours, hasOfferCatalog, aggregateRating, image, telephone, address, areaServed.
Important : aggregateRating doit reposer sur des avis réels et vérifiables. Pas de notes inventées. Google détecte les ratings factices et applique des pénalités manuelles. Si tu n’as pas (encore) un volume d’avis suffisant pour publier un rating, attends. Je détaille les bonnes pratiques plus bas.
hasOfferCatalog : exposer ses prestations aux moteurs et aux IA
hasOfferCatalog est la propriété qui permet de lister tes prestations dans un format structuré que les moteurs et IA comprennent.
Erreur classique : utiliser @type: Course pour des formations sans renseigner les propriétés obligatoires (description, provider, hasCourseInstance). Résultat : 5 erreurs Rich Results, comme je l’ai eu sur ma propre home avant correction.
La bonne approche dans un OfferCatalog non-formation est d’utiliser @type: Service plutôt que Course. C’est plus permissif, ça évite les erreurs Rich Results, et c’est cohérent avec ce qu’attendent les IA.
Structure type :
"hasOfferCatalog": {
"@type": "OfferCatalog",
"name": "Prestations SEO et Google Ads",
"itemListElement": [
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "Audit SEO complet",
"url": "https://tonsite.com/audit-seo/"
}
},
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "Formation SEO sur mesure",
"url": "https://tonsite.com/formation-seo/"
}
}
]
}
Vise 6 à 10 prestations. Trop peu = signal d’activité faible. Trop = bruit.
Si tu vends des formations certifiantes (CPF, OPCO, Qualiopi), tu peux créer des Schema Course indépendants sur les pages de formation, avec toutes les propriétés requises. Mais ne mélange pas Course et OfferCatalog Service — c’est ce qui provoque les erreurs Rich Results.
Lien interne : Financer sa formation SEO via OPCO : guide 2026
Cas concret — le JSON-LD intégral déployé sur remi-brandini.com
En mai 2026, j’ai refondu intégralement le Schema Person de remi-brandini.com. Voici le JSON-LD complet actuellement en production sur ma home (tu peux le vérifier toi-même : Ctrl+U sur remi-brandini.com, cherche application/ld+json).
Ce code est reproductible : copie-le, remplace les valeurs par les tiennes, et tu as un Schema Person enrichi opérationnel.
Contexte initial Avant intervention, le site avait un Schema Person basique généré par Rank Math : nom, URL, sameAs (3 profils). Aucun knowsAbout, aucun hasCredential, aucun worksFor, aucun @id stable. Côté Rich Results : 0 erreur, mais surtout 0 signal d’expertise machine-readable.
JSON-LD complet (production mai 2026)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Person",
"@id": "https://remi-brandini.com/#consultant-rb",
"name": "Rémi Brandini",
"givenName": "Rémi",
"familyName": "Brandini",
"jobTitle": "Consultant SEO et Google Ads",
"description": "Consultant indépendant SEO et Google Ads basé à Toulouse, 16 ans d'expérience. Spécialisé en Google Ads (Search, Shopping, Performance Max), SEO technique, SEO sémantique, netlinking, référencement local Google Business Profile et formations Qualiopi (Google Ads, SEO, GMB).",
"url": "https://remi-brandini.com/",
"image": "https://remi-brandini.com/wp-content/uploads/2024/08/...png",
"telephone": "+33614042945",
"address": {
"@type": "PostalAddress",
"addressLocality": "Toulouse",
"addressRegion": "Occitanie",
"addressCountry": "FR"
},
"sameAs": [
"https://www.linkedin.com/in/brandini/",
"https://www.malt.fr/profile/remibrandini",
"https://www.facebook.com/optimisation.google/",
"https://www.instagram.com/remi_brandini/",
"https://x.com/remibrandini",
"https://www.youtube.com/@consultant-google"
],
"knowsAbout": [
"Search Engine Optimization (SEO)", "Google Ads",
"Google Search Ads", "Google Shopping", "Performance Max",
"Google Tag Manager", "Google Analytics 4",
"SEO technique", "SEO sémantique", "Netlinking",
"Référencement local Google Business Profile",
"EEAT (Experience, Expertise, Authoritativeness, Trust)",
"Generative Engine Optimization (GEO)",
"Answer Engine Optimization (AEO)", "Audit SEO",
"Stratégie de contenu SEO assistée par IA",
"Topic clusters et siloing", "Conversion tracking GTM"
],
"knowsLanguage": ["fr", "en"],
"hasCredential": [
{
"@type": "EducationalOccupationalCredential",
"name": "Certification Google Ads Search",
"credentialCategory": "Professional Certification",
"recognizedBy": {
"@type": "Organization",
"name": "Google",
"url": "https://skillshop.exceedlms.com/student/path/2891-google-ads-search-certification"
}
},
{
"@type": "EducationalOccupationalCredential",
"name": "Certification Qualiopi (organisme de formation)",
"credentialCategory": "Professional Certification",
"recognizedBy": {
"@type": "Organization",
"name": "France Compétences"
}
}
],
"worksFor": {
"@type": "ProfessionalService",
"@id": "https://remi-brandini.com/#service",
"name": "Rémi Brandini — Consultant SEO et Google Ads",
"url": "https://remi-brandini.com/",
"telephone": "+33614042945",
"priceRange": "€€",
"address": {
"@type": "PostalAddress",
"addressLocality": "Toulouse",
"addressRegion": "Occitanie",
"addressCountry": "FR"
},
"areaServed": { "@type": "Country", "name": "France" },
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "5",
"bestRating": "5",
"worstRating": "1",
"reviewCount": "83"
},
"hasOfferCatalog": {
"@type": "OfferCatalog",
"name": "Services et formations",
"itemListElement": [
{ "@type": "Offer", "itemOffered": { "@type": "Service",
"name": "Consultant Google Ads freelance",
"url": "https://remi-brandini.com/expert/consultant-google-ads/" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service",
"name": "Consultant SEO freelance",
"url": "https://remi-brandini.com/expert/freelance-seo/" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service",
"name": "Consultant SEO local Google Business Profile",
"url": "https://remi-brandini.com/expert/seo-local/" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service",
"name": "Formation SEO complète (Qualiopi)",
"url": "https://remi-brandini.com/formations-google/formation-seo-complete/" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service",
"name": "Formation Google My Business (Qualiopi)",
"url": "https://remi-brandini.com/formations-google/formation-google-my-business/" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service",
"name": "Formation Audit SEO Technique (Qualiopi)",
"url": "https://remi-brandini.com/formations-google/formation-audit-seo-technique/" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service",
"name": "Formation Écriture SEO IA (Qualiopi)",
"url": "https://remi-brandini.com/formations-google/formation-ecriture-seo-ia/" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service",
"name": "Formation Netlinking (Qualiopi)",
"url": "https://remi-brandini.com/formations-google/formation-netlinking/" } }
]
}
}
}
</script>
Dissection : 5 choix de conception à retenir
1. @id stable #consultant-rb + #service Permet la canonicalisation de l’entité dans le graphe Google et la fusion automatique avec d’autres Schemas Person que Rank Math génère en parallèle. Sans ça, deux Person concurrentes coexistent et diluent l’autorité.
2. description à 4 dimensions de densité Ville + années d’expérience + spécialités numérotées + mention Qualiopi. Tout ce qu’un LLM peut extraire pour citer en une phrase est inclus.
3. knowsAbout couvrant 4 strates Outils (GTM, GA4), techniques (SEO technique, sémantique, netlinking), produits (Google Ads × 5 variantes), émergents 2026 (GEO, AEO, EEAT). Granularité maximale = matching maximal.
4. hasCredential avec recognizedBy.url officielle Pointer vers la page Skillshop officielle de la certif Google = signal d’autorité tracé. Sans URL, le credential est inerte.
5. Toutes les offres en @type: Service (pas Course) Décision critique : utiliser Course dans un OfferCatalog déclenche 5 erreurs Rich Results par offre (description, provider, hasCourseInstance manquants). Service est permissif, valide, et suffit aux IA. Garde Course pour des pages de formation dédiées avec toutes les propriétés requises.
Résultats mesurés à J+15
GSC comparison custom (30 avril – 13 mai vs 16 – 29 avril) :
- Impressions home : +34 %
- Clics : +57 %
- CTR moyen : ×2
- Requêtes branded sur « Rémi Brandini » + variantes : +41 %
aggregateRating actuel : 5/5 sur 83 reviewCount (avis réels Malt + témoignages clients vérifiables — voir mon profil Malt).
Côté IA, test manuel sur Claude et ChatGPT, requête « consultant SEO Toulouse certifié Qualiopi » : Claude me cite directement, avec extraction littérale du description et de plusieurs entrées knowsAbout. Effet GEO mesurable en 2 semaines.
Validation : Rich Results Test sur remi-brandini.com → 1 élément valide, 0 erreur, 0 avertissement.
Lien interne : GEO et citations IA : comment être recommandé par Claude et ChatGPT
.
7 erreurs fréquentes à éviter
1. AggregateRating attaché à Person Interdit par Google depuis 2019. Le rating doit aller sur Organization, LocalBusiness, ProfessionalService, Service ou Product. Sur un site freelance, attache-le à worksFor → ProfessionalService.
2. Notes ou avis inventés Google détecte les ratings non vérifiables. Conséquence : pénalité manuelle, perte de tous les rich snippets du site. Si tu n’as pas 5 avis réels minimum, n’affiche pas de rating.
3. KnowsAbout trop vague « Marketing digital » ou « SEO » ne servent à rien. Vise des entrées précises et reliables (« Google Search Console », « Schema.org », « audit netlinking technique »). Les IA matchent sur la précision.
4. SameAs incohérents Tous les profils doivent porter exactement le même nom, la même photo, la même bio. Une incohérence (nom différent sur LinkedIn vs Malt) casse la validation Knowledge Graph.
5. Course dans hasOfferCatalog sans propriétés requises Comme expliqué plus haut, utilise Service dans OfferCatalog. Garde Course pour des pages de formation dédiées avec toutes les propriétés (description, provider, hasCourseInstance).
6. Conflit avec le Schema Yoast/Rank Math Si Yoast ou Rank Math génère déjà un Person basique, tu auras deux Schemas Person concurrents sur la même page. Solutions par ordre de propreté : (a) forcer le même @id sur les deux nœuds pour que Google les fusionne (option recommandée), (b) désactiver l’injection Person automatique du plugin, (c) accepter la coexistence en pariant sur la déduplication sameAs (option la moins propre).
7. Absence d’@id stable L’erreur la plus subtile et la plus coûteuse. Sans @id explicite, chaque crawl peut créer une entité distincte dans la perception de Google. Tu te dilues sans le savoir. Toujours définir un @id URI absolu sous ton domaine avec fragment lisible (ex : https://tonsite.com/#consultant-prenom). Et utiliser le même @id sur toutes les pages où tu déclares ton Person — pas un nouveau par page.
8. hasCredential sans recognizedBy.url Bonus erreur fréquente : déclarer une certification sans pointer vers la page officielle qui la délivre. Google Ads Search sans URL Skillshop = pas vérifiable = pas de poids EEAT.
Comment déployer techniquement (WordPress / Divi / non-Divi)
WordPress générique Plugin WPCode Lite (gratuit) → nouveau snippet HTML → coller le JSON-LD entre <script type="application/ld+json"> et </script> → condition de chargement type_of_page = is_front_page (ou URL contient = ta home) → activer.
WordPress + Divi Theme Builder Même méthode. WPCode injecte dans le <head> ou le <footer> indépendamment de Divi. Pas de conflit.
WordPress + Yoast SEO Yoast Premium permet d’éditer le Schema graph. Sinon, WPCode en parallèle fonctionne. Veille à ne pas dupliquer le même @id.
Validation Toujours valider via Rich Results Test de Google ET via Schema Markup Validator. Le premier teste la conformité Google ; le second teste la validité Schema.org pure.
Indexation Après déploiement, fais une demande d’indexation manuelle de la home via Search Console. Le Schema enrichi est généralement détecté en 24-72h.
FAQ
Q1 : Faut-il un Schema Person sur chaque page d’un site freelance ? Non. Schema Person enrichi sur la home + page « À propos », et un Schema Person basique (en mainEntity ou author) sur les articles de blog. Inutile de dupliquer un Schema lourd sur 200 URLs.
Q2 : Schema Person ou Schema Organization pour un freelance qui a une auto-entreprise ? Les deux, liés. Person pour ta personne, Organization (ou ProfessionalService) pour l’activité, reliés par worksFor. C’est la structure que je recommande.
Q3 : Combien d’entrées knowsAbout mettre ? Entre 10 et 20 entrées précises. Moins = signal faible. Plus = bruit. Et fais en sorte que chaque entrée corresponde à du contenu publié sur ton site (sinon Google et les IA détectent le mismatch).
Q4 : Le Schema Person améliore-t-il directement les rankings Google ? Pas directement. Schema n’est pas un facteur de ranking. Mais il améliore le CTR (rich snippets), la lisibilité par les IA (citations GEO), et la validation du Knowledge Graph (autorité E-E-A-T). Les gains se mesurent sur impressions, CTR et trafic branded.
Q5 : Mon site est sur Wix / Squarespace / Webflow, comment je déploie ? Tous ces CMS acceptent l’injection de code custom dans le <head> ou le <body>. Procédure identique : crée ton JSON-LD, colle-le dans la section code custom, valide via Rich Results Test.
Quelques mots de conclusion
Le Schema Person enrichi est aujourd’hui l’investissement SEO au meilleur ratio effort/impact pour un freelance ou consultant indépendant. Quelques heures de travail bien fait, un déploiement WPCode (ou équivalent), une validation Rich Results, et tu installes un signal d’expertise lisible par Google, par le Knowledge Graph, et par les IA génératives.
Sur remi-brandini.com, le déploiement a généré +57 % de clics et un CTR doublé en 15 jours, avec un effet GEO mesurable (citations Claude sur requêtes branded et expertise).
Si tu veux que je déploie ce type de Schema Person enrichi sur ton site (audit + JSON-LD sur mesure + validation), contacte-moi — c’est l’une des prestations que je propose en mission flat-fee, livrée sous 5 jours.
Formations
Formations Google (SEO et SEA) agréées Qualiopi. Financement avec votre OPCO.
Mon profil Linkedin