Apprenez à configurer les données structurées Product et Offer sur Squarespace pour booster votre SEO e-commerce, avec des bonnes pratiques concrètes.
Les données structurées Product et Offer sont des balises JSON-LD que vous intégrez à vos pages produits Squarespace pour décrire précisément un article et son offre (prix, disponibilité, devise) aux moteurs de recherche, améliorant ainsi l'affichage enrichi dans les SERP.
Pour optimiser vos fiches produits Squarespace, vous devez activer les données structurées natives via les paramètres SEO du CMS, puis les enrichir avec des champs personnalisés (marque, GTIN, avis) via l'injection de code ou une application. Vérifiez la conformité avec l'outil de test de données structurées de Google avant publication. Priorisez les champs obligatoires (name, price, availability) et évitez les erreurs courantes comme un prix sans devise ou une disponibilité contradictoire. Cette configuration augmente vos chances d'obtenir des rich snippets (prix, stock, étoiles) et améliore le taux de clic organique.
Cas fréquent observé : de nombreux sites Squarespace affichent des données structurées incomplètes, notamment l'absence de l'offre (Offer) ou une mauvaise gestion des variantes (taille, couleur). Dans les faits, le CMS génère automatiquement un schéma basique, mais il ne couvre pas les champs recommandés comme la marque ou le code GTIN, ce qui limite l'affichage enrichi. En accompagnement, les équipes constatent que l'ajout manuel via l'injection de code JavaScript est souvent mal interprété par Google, provoquant des erreurs de validation.
Les données structurées permettent à Google de comprendre le contenu de vos pages produits et d'afficher des résultats enrichis (rich snippets) incluant le prix, la disponibilité, les avis et la note. Sur Squarespace, le CMS intègre un schéma JSON-LD de base pour chaque produit, mais il est souvent insuffisant pour les exigences de Google Shopping et du SEO moderne. En configurant correctement les types Product et Offer, vous augmentez la visibilité de vos articles dans les recherches, améliorez le taux de clic (CTR) et facilitez l'indexation de vos fiches. Les bénéfices sont concrets : un affichage plus attractif dans les SERP, une meilleure expérience utilisateur et un avantage concurrentiel sur les boutiques qui négligent cet aspect.
Les données structurées sont également utilisées par les assistants vocaux et les plateformes de comparaison de prix. Sans elles, vos produits risquent de passer inaperçus. L'effort de mise en place est minime comparé au gain potentiel en trafic qualifié.
Le type Product décrit un article physique ou numérique : nom, description, image, marque, GTIN, MPN, etc. Le type Offer représente une offre commerciale spécifique : prix, devise, disponibilité (en stock, précommande, épuisé), URL d'achat, date de validité. Sur Squarespace, chaque produit peut avoir plusieurs offres (variantes), chacune avec son propre prix et stock.
Pour un SEO optimal, vous devez imbriquer Offer dans Product. Exemple de structure : Product → name, image, brand → Offer → price, priceCurrency, availability. Google exige que l'offre soit présente pour afficher le prix dans les résultats. Les erreurs fréquentes incluent l'absence de l'offre, un prix sans devise, ou une disponibilité incorrecte (par exemple 'InStock' pour un produit en rupture).
Les champs recommandés par Google sont : name, image, description (Product) + price, priceCurrency, availability, url (Offer). Ajoutez brand, gtin, mpn pour renforcer la confiance et améliorer le matching avec Google Shopping.
Squarespace génère automatiquement un schéma JSON-LD pour chaque produit à partir des champs que vous remplissez dans l'interface d'administration : titre, description, prix, image, catégorie. Pour vérifier cette configuration, allez dans Paramètres → SEO → Données structurées. Activez l'option 'Données structurées pour les produits' si elle est disponible (selon votre version).
Le schéma natif inclut généralement le type Product avec name, description, image, et un Offer avec price et availability. Cependant, il ne gère pas les champs avancés comme brand, gtin, mpn, ou les avis. Pour les boutiques avec variantes, le schéma peut ne pas refléter correctement chaque variante, ce qui conduit à des erreurs de validation.
Testez votre configuration actuelle avec l'outil de test de données structurées de Google. Si des erreurs apparaissent (par exemple 'missing field price'), corrigez-les en remplissant les champs obligatoires dans Squarespace. Pour les champs manquants, passez à l'enrichissement par code.
Pour ajouter des champs non supportés nativement (marque, GTIN, avis, offre multiple), vous pouvez injecter du code JavaScript personnalisé via le gestionnaire de code de Squarespace (Paramètres → Avancé → Injection de code). La méthode recommandée est d'utiliser un script qui modifie ou ajoute le schéma JSON-LD dans le
de la page produit.Exemple de logique : récupérer les informations depuis le DOM (par exemple, la marque dans un span avec une classe spécifique) et construire un objet JSON-LD. Assurez-vous que le script s'exécute après le chargement du contenu (DOMContentLoaded). Attention : cette approche peut entrer en conflit avec le schéma natif si vous ne le désactivez pas. Il est préférable de supprimer le schéma généré par Squarespace (via un script) et de le remplacer par le vôtre.
Testez rigoureusement chaque modification avec l'outil de test de données structurées. Privilégiez une solution fiable comme un plugin (exemple : 'SEO Space' ou 'Data Feed Watch') si vous n'êtes pas à l'aise avec le code.
Les produits avec variantes (taille, couleur, matière) posent un défi particulier. Google recommande d'utiliser une seule entité Product avec plusieurs offres (Offer) imbriquées, ou de créer une page par variante. Sur Squarespace, chaque variante a un SKU et un prix distincts, mais le schéma natif ne les expose pas toujours correctement.
Pour une gestion optimale, vous pouvez soit : (1) créer une page produit distincte par variante (recommandé pour les produits avec des différences significatives de prix ou de disponibilité), soit (2) utiliser un schéma personnalisé qui liste toutes les offres dans le même Product. La deuxième option est plus complexe mais évite la duplication de contenu.
Dans le code JSON-LD, pour chaque variante, créez un objet Offer avec les champs price, priceCurrency, availability, et un identifiant unique (sku). Ajoutez la propriété 'itemOffered' pointant vers le Product parent. Testez avec l'outil de validation pour vous assurer que Google interprète correctement les variantes.
Les champs obligatoires pour Product sont : name, image (au moins une), description. Pour Offer : price, priceCurrency, availability, url. Les champs recommandés incluent : brand, gtin, mpn, review (aggregateRating), offers (pour les offres multiples).
Conseils concrets : utilisez toujours un code devise ISO 4217 (EUR, USD, GBP). Pour la disponibilité, respectez les valeurs autorisées : InStock, OutOfStock, PreOrder, Discontinued. Évitez les valeurs personnalisées. Pour le prix, utilisez un nombre décimal sans symbole monétaire (exemple : 29.99).
Ajoutez la marque si elle est connue, même pour les produits génériques. Le GTIN (code-barres) est crucial pour les produits physiques ; il améliore le matching avec Google Shopping. Si vous n'avez pas de GTIN, utilisez le MPN (numéro de pièce fabricant).
N'oubliez pas d'inclure une URL canonique vers la page produit et une image de haute qualité (au moins 800x800 pixels).
Après avoir configuré ou enrichi vos données structurées, validez-les avec l'outil de test de données structurées de Google (search.google.com/test/rich-results) et le rapport d'état des données structurées dans Google Search Console. Ces outils identifient les erreurs, les avertissements et les éléments valides.
Les erreurs courantes sur Squarespace incluent : 'Missing field price' (si le prix est vide), 'Invalid value for availability' (si la valeur n'est pas dans la liste autorisée), 'Missing field image' (si l'image n'est pas correctement référencée). Corrigez chaque erreur en modifiant le contenu dans Squarespace ou le code injecté.
Utilisez également l'outil d'inspection d'URL dans Search Console pour voir exactement ce que Google a extrait de votre page. Si des champs sont manquants, ajustez votre configuration. Répétez le test après chaque modification majeure.
Les avis clients (aggregateRating) sont un puissant signal de confiance. Squarespace propose un système d'avis natif, mais les données structurées associées ne sont pas toujours générées automatiquement. Pour les activer, allez dans Paramètres → Commerce → Avis, et activez l'affichage des avis. Vérifiez que le schéma inclut aggregateRating avec ratingValue, reviewCount, et bestRating.
Si vous utilisez une application tierce (exemple : Yotpo, Judge.me), assurez-vous qu'elle injecte correctement les données structurées. Sinon, vous pouvez ajouter manuellement le bloc aggregateRating dans votre script JSON-LD, en récupérant les données depuis le DOM ou via l'API de l'application.
Attention : Google exige que les avis soient authentiques et visibles sur la page. Ne trichez pas avec des notes fictives, sous peine de pénalité. Les avis doivent être associés à un produit spécifique, pas à une catégorie.
Les erreurs les plus fréquentes sur Squarespace sont : (1) conflit entre le schéma natif et le schéma injecté (deux blocs JSON-LD), (2) prix non mis à jour après changement de variante, (3) disponibilité incorrecte après rupture de stock, (4) images absentes ou de mauvaise qualité.
Pour résoudre le conflit, désactivez le schéma natif en ajoutant un script qui supprime le bloc généré par Squarespace avant d'injecter le vôtre. Pour les prix, utilisez des variables dynamiques dans votre code (par exemple, récupérer le prix affiché dans le DOM). Pour la disponibilité, liez-la à l'état du stock (par exemple, si stock = 0, alors availability = OutOfStock).
Effectuez une vérification mensuelle via Search Console. Les mises à jour de Squarespace peuvent modifier la génération du schéma natif. Documentez votre configuration pour faciliter la maintenance.
| Champ | Type | Obligatoire/Recommandé | Exemple |
|---|---|---|---|
| name | Product | Obligatoire | T-shirt en coton bio |
| image | Product | Obligatoire | https://example.com/tshirt.jpg |
| description | Product | Obligatoire | T-shirt confortable en coton biologique... |
| price | Offer | Obligatoire | 29.99 |
| priceCurrency | Offer | Obligatoire | EUR |
| availability | Offer | Obligatoire | InStock |
| brand | Product | Recommandé | EcoFashion |
| gtin | Product | Recommandé | 1234567890123 |
| Méthode | Complexité | Flexibilité | Risque d'erreur | Coût |
|---|---|---|---|---|
| Configuration native Squarespace | Faible | Faible (champs limités) | Faible | Gratuit |
| Injection de code JavaScript | Moyenne | Élevée (tous champs) | Moyen (conflit possible) | Gratuit |
| Plugin SEO (ex: SEO Space) | Faible | Moyenne | Faible | Payant (à vérifier) |
| Application Data Feed Watch | Faible | Élevée | Faible | Payant (à vérifier) |
| Valeur | Signification | Utilisation recommandée |
|---|---|---|
| InStock | En stock | Produit disponible à l'achat immédiat |
| OutOfStock | Rupture de stock | Produit indisponible, sans date de retour |
| PreOrder | Précommande | Produit disponible en précommande avant sortie |
| Discontinued | Arrêté | Produit définitivement arrêté |
Visibilité SEO & IA
On vérifie votre SEO technique, vos données structurées et votre présence dans les moteurs IA, puis on priorise les gains les plus rentables.
Les champs obligatoires pour Product sont name, image et description. Pour Offer, vous devez inclure price, priceCurrency, availability et url. Google recommande également d'ajouter brand, gtin et mpn pour améliorer la richesse des résultats.
Vous pouvez injecter du code JavaScript personnalisé via le gestionnaire de code de Squarespace (Paramètres → Avancé → Injection de code). Ce script doit construire un objet JSON-LD complet, en récupérant les informations depuis le DOM. Une alternative plus simple est d'utiliser un plugin SEO comme SEO Space qui ajoute ces champs.
Google recommande soit de créer une page produit par variante, soit d'utiliser une seule entité Product avec plusieurs offres (Offer). Pour Squarespace, la seconde option est plus courante : dans votre script JSON-LD, listez chaque variante comme un objet Offer distinct avec son propre prix, disponibilité et SKU.
Cela peut arriver si le prix est vide pour certaines variantes, si le format est incorrect (par exemple avec un symbole monétaire), ou si le schéma natif ne parvient pas à extraire le prix. Vérifiez que chaque variante a un prix défini dans Squarespace et que votre code JSON-LD utilise un nombre décimal sans symbole.
Elles couvrent les bases (nom, prix, disponibilité) mais manquent de champs recommandés comme la marque, le GTIN et les avis. Pour un SEO optimal et pour apparaître dans Google Shopping, il est conseillé de les enrichir via injection de code ou plugin.
Utilisez l'outil de test de données structurées de Google (search.google.com/test/rich-results) et le rapport d'état des données structurées dans Google Search Console. Ces outils vous montrent les erreurs, avertissements et les éléments valides extraits de votre page.
Ajoutez un script JavaScript qui supprime le bloc JSON-LD généré par Squarespace avant d'injecter le vôtre. Par exemple, utilisez `document.querySelector('script[type="application/ld+json"]').remove()` dans votre code. Testez ensuite avec l'outil de validation pour confirmer qu'un seul schéma est présent.
Sources : Google — données structurées · Schema.org · Google Search Central.