Un électricien à Luçon avait un site propre, un bon contenu, une fiche Google Business Profile correctement remplie. Il ne comprenait pas pourquoi son concurrent à 3 kilomètres obtenait des étoiles directement dans les résultats de recherche, avec ses horaires et son numéro de téléphone visibles sans même cliquer. La réponse tenait en deux mots : données structurées. Son concurrent avait implémenté le schema.org LocalBusiness en JSON-LD sur toutes ses pages de service. Ce marquage sémantique prend 20 minutes à mettre en place correctement. L'avantage dans les SERP peut durer des années.
Qu'est-ce que Schema.org LocalBusiness et pourquoi c'est critique pour le SEO local
Schema.org est un vocabulaire standardisé, développé conjointement par Google, Bing, Yahoo et Yandex, qui permet aux moteurs de recherche de comprendre précisément ce que contient votre page. Sans ce balisage, Google doit deviner : il lit votre texte et tente d'en extraire vos informations d'entreprise. Avec le schema LocalBusiness correctement implémenté, vous lui fournissez ces informations dans un format structuré, non ambigu, directement exploitable.
Le résultat visible : vos informations peuvent apparaître en "rich snippets" dans les résultats de recherche, votre Knowledge Panel Google peut s'enrichir automatiquement, et votre site gagne en crédibilité sémantique aux yeux de l'algorithme. Selon une étude BrightLocal publiée en 2025, les pages avec un schema LocalBusiness complet ont 30% de probabilité supplémentaire d'apparaître dans le Knowledge Panel de Google. Pour un artisan ou un commerce vendéen, c'est une visibilité gratuite sur des requêtes où chaque position compte.
Le format recommandé par Google est le JSON-LD (JavaScript Object Notation for Linked Data). Il s'insère dans une balise script dans le head de votre page et n'interfère pas avec votre HTML visible. C'est le format le plus facile à maintenir et à tester.
Les champs obligatoires et recommandés
Google distingue deux niveaux dans le schema LocalBusiness : les propriétés requises pour l'éligibilité aux rich results, et les propriétés recommandées qui enrichissent le résultat affiché. Voici ce que vous devez savoir avant de coder quoi que ce soit.
| Propriété | Statut | Exemple de valeur |
|---|---|---|
| @type | Obligatoire | Plumber, Restaurant, Electrician... |
| name | Obligatoire | Plomberie Dupont |
| address | Obligatoire | streetAddress, postalCode, addressLocality |
| telephone | Recommandé | +33 2 51 XX XX XX |
| url | Recommandé | https://www.votre-site.fr |
| openingHoursSpecification | Recommandé | Lundi-Vendredi 8h-18h |
| geo | Recommandé | latitude / longitude |
| priceRange | Recommandé | €€ ou "à partir de 80€/h" |
| image | Recommandé | URL d'une photo haute résolution |
| aggregateRating | Optionnel | Note moyenne + nombre d'avis |
Un point important souvent mal compris : utilisez toujours le type le plus spécifique disponible dans la hiérarchie schema.org. "Plumber" est meilleur que "HomeAndConstructionBusiness" qui est lui-même meilleur que "LocalBusiness". Google comprend mieux votre activité et peut l'afficher dans des contextes de recherche plus précis. La liste complète des types disponibles est consultable sur schema.org/LocalBusiness.
Exemple complet pour un plombier à La Roche-sur-Yon
Voici un bloc JSON-LD complet, prêt à copier-coller dans la balise head de votre site, adapté à un plombier chauffagiste à La Roche-sur-Yon. Remplacez chaque valeur par vos informations réelles.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Plumber",
"name": "Plomberie Chauffage Martin",
"description": "Plombier chauffagiste à La Roche-sur-Yon. Dépannage, installation PAC, remplacement chauffe-eau. Intervention en 2h sur La Roche-sur-Yon et communes limitrophes.",
"url": "https://www.plomberie-martin-85.fr",
"telephone": "+33251XXXXXX",
"email": "[email protected]",
"image": "https://www.plomberie-martin-85.fr/images/facade-entreprise.jpg",
"priceRange": "€€",
"address": {
"@type": "PostalAddress",
"streetAddress": "12 rue de la Paix",
"addressLocality": "La Roche-sur-Yon",
"postalCode": "85000",
"addressRegion": "Vendée",
"addressCountry": "FR"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 46.6702,
"longitude": -1.4271
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "08:00",
"closes": "18:30"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Saturday",
"opens": "08:00",
"closes": "12:00"
}
],
"areaServed": [
"La Roche-sur-Yon",
"Mouilleron-le-Captif",
"Dompierre-sur-Yon",
"Saint-Florent-des-Bois",
"Chauché"
],
"hasOfferCatalog": {
"@type": "OfferCatalog",
"name": "Prestations de plomberie",
"itemListElement": [
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "Dépannage plomberie urgence"
}
},
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "Installation pompe à chaleur"
}
},
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "Remplacement chauffe-eau"
}
}
]
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "47",
"bestRating": "5"
}
}
</script> Quelques précisions sur ce code. Le champ "areaServed" n'est pas une propriété officielle de schema.org LocalBusiness dans sa version stricte, mais Google la comprend et l'utilise pour le SEO local. Le champ "aggregateRating" n'est à ajouter que si vous disposez d'avis réels et vérifiables : inventer une note de 5/5 avec 200 avis quand vous n'en avez pas constitue une violation des guidelines Google et peut entraîner une pénalité.
Exemple complet pour un restaurant aux Sables-d'Olonne
Pour un restaurant, le type schema.org est "Restaurant", qui hérite de "FoodEstablishment" lui-même héritant de "LocalBusiness". Des propriétés supplémentaires deviennent disponibles : le menu, la cuisine proposée, la réservation en ligne. Voici un exemple adapté à un restaurant de fruits de mer aux Sables-d'Olonne.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Restaurant",
"name": "La Criée des Sables",
"description": "Restaurant de fruits de mer aux Sables-d'Olonne. Produits locaux, pêche du jour, terrasse face à l'océan. Ouvert du mardi au dimanche.",
"url": "https://www.lacreedesables.fr",
"telephone": "+33251XXXXXX",
"image": "https://www.lacreedesables.fr/images/restaurant.jpg",
"priceRange": "€€",
"servesCuisine": ["Fruits de mer", "Poissons", "Cuisine bretonne"],
"menu": "https://www.lacreedesables.fr/menu",
"acceptsReservations": "True",
"address": {
"@type": "PostalAddress",
"streetAddress": "8 promenade Godet",
"addressLocality": "Les Sables-d'Olonne",
"postalCode": "85100",
"addressRegion": "Vendée",
"addressCountry": "FR"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 46.4967,
"longitude": -1.7833
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"],
"opens": "12:00",
"closes": "14:30"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
"opens": "19:00",
"closes": "22:00"
}
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"reviewCount": "183",
"bestRating": "5"
}
}
</script> Les erreurs fréquentes qui annulent tout le bénéfice
L'erreur la plus courante : copier-coller un schema trouvé sur internet sans adapter chaque champ. Des dizaines de sites vendéens ont le même schema générique avec un nom d'entreprise fictif encore dans le code, ou des coordonnées géographiques pointant vers Paris. Google vérifie la cohérence entre le schema et le contenu visible de la page. Une incohérence flagrante invalide le marquage.
La deuxième erreur majeure concerne le NAP (Name, Address, Phone). Vos informations dans le schema doivent être rigoureusement identiques à celles de votre fiche Google Business Profile et de toutes vos autres citations sur le web (pages jaunes, annuaires sectoriels, etc.). Si votre schema indique "12 rue de la Paix" et que votre fiche Google affiche "12 r. de la Paix", c'est techniquement une incohérence. Google interprète les incohérences NAP comme un signal de manque de fiabilité pour le SEO local.
Troisième erreur : mettre le schema uniquement sur la page d'accueil. Chaque page de service devrait avoir son propre schema, adapté au service concerné. La page "installation pompe à chaleur" d'un chauffagiste gagne à avoir son schema avec le service spécifique mis en avant, pas juste les informations générales de l'entreprise.
Un carreleur à Challans avait correctement rempli son schema LocalBusiness, mais son numéro de téléphone était au format "02 51 XX XX XX" dans le schema et "0251XXXXXX" sur sa fiche Google. Résultat : l'outil de test Google affichait le schema comme valide, mais la cohérence NAP était cassée et le Knowledge Panel n'apparaissait pas. Corriger le format a suffi à déclencher l'affichage du panneau de connaissances en deux semaines.
Comment tester votre schema avant de le publier
Google met à disposition un outil officiel gratuit : le testeur de résultats enrichis, accessible à rich-results-test.googl.com. Collez l'URL de votre page ou directement votre code JSON-LD. L'outil indique si le schema est valide, quelles propriétés sont détectées, et si votre page est éligible aux rich results. Un schema valide n'est pas une garantie d'affichage des rich results (Google décide souverainement), mais c'est une condition nécessaire.
Schema Markup Validator (validator.schema.org) est un deuxième outil utile pour vérifier la conformité stricte au vocabulaire schema.org, indépendamment des critères spécifiques à Google. Utilisez les deux.
Bonus : ajouter FAQPage et BreadcrumbList pour aller plus loin
Le schema LocalBusiness peut être complété par d'autres types pour enrichir encore davantage votre présence dans les SERP. Le schema FAQPage permet d'afficher des questions-réponses directement dans les résultats, ce qui augmente la surface visible de votre résultat et peut doubler son taux de clic. Il s'ajoute sur les pages qui contiennent une section FAQ, séparément du schema LocalBusiness.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Intervenez-vous en urgence le week-end ?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Oui, nous intervenons le samedi de 8h à 12h pour les urgences plomberie. Pour les interventions le dimanche, contactez-nous par téléphone au 02 51 XX XX XX."
}
},
{
"@type": "Question",
"name": "Quel est le délai d'intervention moyen à La Roche-sur-Yon ?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Pour les urgences (fuite, canalisation bouchée), nous intervenons en général dans les 2 heures sur La Roche-sur-Yon et les communes à moins de 20 km."
}
}
]
}
</script> Le schema BreadcrumbList, quant à lui, indique la hiérarchie de navigation de votre page à Google et peut faire apparaître un fil d'Ariane dans les résultats à la place de l'URL brute. C'est particulièrement utile pour les sites avec plusieurs niveaux de pages (services, zones géographiques, articles de blog). Pour approfondir la question du balisage HTML et de son impact SEO, notre guide sur les balises HTML et leur rôle dans le SEO couvre les fondations techniques qui complètent ce travail de données structurées.
Checklist de déploiement schema LocalBusiness
Avant de valider votre implémentation, passez cette liste en revue page par page.
- Le type schema utilisé est le plus spécifique possible ("Plumber" plutôt que "LocalBusiness")
- Le "name" est identique au nom sur Google Business Profile et les annuaires
- L'adresse est complète : rue, code postal, ville, pays
- Le téléphone est au format international (+33...)
- Les coordonnées géo sont vérifiées sur Google Maps (pas générées au hasard)
- Les horaires reflètent les horaires réels affichés sur la fiche Google
- L'"aggregateRating" n'est présent que si les avis sont réels et vérifiables
- Le code passe le testeur de résultats enrichis Google sans erreur bloquante
- Le NAP dans le schema est cohérent avec celui affiché dans le pied de page du site
- Le schema est présent sur chaque page de service, pas seulement sur la page d'accueil
La mise en place du schema LocalBusiness s'intègre naturellement dans une stratégie SEO local plus large. Si vous gérez votre référencement vous-même et souhaitez valider votre approche globale, notre audit SEO en Vendée inclut la vérification des données structurées parmi les points de contrôle techniques.