Une fiche produit avec un balisage Product incomplet ne provoque aucune erreur visible sur le site : la page s’affiche normalement, aucun message ne prévient l’équipe. Le seul symptôme est une absence silencieuse dans les résultats enrichis, découverte parfois des semaines plus tard dans le rapport de couverture. Voici la checklist à suivre avant de mettre en ligne une fiche produit, pour éviter cette perte discrète.
Cette liste couvre uniquement les champs du type Product lui-même, pas les avis clients ni le type Review, qui relèvent d’une logique et de contraintes distinctes.
Les trois champs strictement obligatoires
- name : le nom du produit, sous forme de texte simple, sans balisage HTML
- image : au moins une URL absolue vers une image représentative, au format JPEG, PNG ou WebP
- offers (ou
review, ouaggregateRating) : au moins l’un de ces trois blocs doit être présent pour que Google considère le balisage éligible
Un balisage sans aucun de ces trois éléments, ou avec l’un d’eux vide, est tout simplement ignoré par Google, sans distinction entre « présent mais invalide » et « absent ».
Le détail du bloc offers, source la plus fréquente d’erreurs

- price : un nombre, sans symbole monétaire ni séparateur de milliers (
29.90, pas29,90 €) - priceCurrency : un code ISO 4217 à trois lettres (
EUR, pas€nieuros) - availability : une valeur exacte parmi celles définies par schema.org, comme
https://schema.org/InStockouhttps://schema.org/OutOfStock - url : l’URL absolue de la page où l’offre est disponible
Un prix indiqué sous forme de chaîne de caractères avec symbole monétaire invalide l’offre entière, même si tous les autres champs sont corrects. C’est l’erreur la plus fréquente sur les catalogues migrés depuis un export tableur sans nettoyage préalable.
Deux champs recommandés qui évitent des avertissements
- sku ou gtin13 : un identifiant unique du produit, recommandé pour la cohérence des données
- brand : sous forme d’objet
Organizationimbriqué, avec au minimum un champname
Exemple de balisage JSON-LD complet et valide
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Étagère murale chêne massif",
"image": "https://exemple.fr/images/etagere-42.jpg",
"sku": "ETG-042",
"brand": {
"@type": "Organization",
"name": "Atelier Merisier"
},
"offers": {
"@type": "Offer",
"url": "https://exemple.fr/produits/etagere-42/",
"priceCurrency": "EUR",
"price": "89.00",
"availability": "https://schema.org/InStock"
}
}
Une erreur fréquente sur les catalogues volumineux
Sur un catalogue de plusieurs centaines de références généré automatiquement depuis un export fournisseur, un champ availability mal mappé peut afficher InStock pour l’ensemble des produits, y compris ceux réellement épuisés depuis des semaines. Le balisage reste techniquement valide, ce qui ne déclenche aucune alerte, mais il devient trompeur pour l’internaute qui clique sur un résultat enrichi annonçant une disponibilité immédiate pour un produit en réalité indisponible. Ce type d’écart, invisible à l’audit technique classique, ne se voit qu’en croisant le balisage avec l’état réel du stock.
Comment vérifier avant publication
- Copier le JSON-LD généré dans l’outil de test des résultats enrichis de Google avant chaque mise en ligne de nouveau modèle de fiche
- Vérifier que le prix ne contient jamais de symbole monétaire, de virgule décimale française ni d’espace
- Contrôler que la valeur d’
availabilityreprend exactement l’URL schema.org, sans traduction ni raccourci - S’assurer que l’image référencée répond bien en 200 et n’est pas bloquée par
robots.txt
Une règle simple à appliquer en revue de code : aucun champ du bloc offers ne doit provenir d’une concaténation de chaînes de caractères non nettoyées issues d’un export.
En résumé
Un balisage Product incomplet ne casse rien visuellement, ce qui le rend particulièrement traître : l’équipe ne découvre le problème que lorsqu’elle compare les fiches concurrentes qui affichent prix et disponibilité directement dans les résultats de recherche. Passer cette checklist avant chaque mise en ligne de nouveau gabarit de fiche produit évite une perte d’éligibilité qui, autrement, peut rester invisible pendant des mois.