Configuration et tracking

Facebook Product Feed : champs obligatoires, formats et images

Par Chris Pollard
13 septembre 202627 min de lecture

Un Facebook product feed est un fichier de données structuré qui répertorie chaque produit que tu veux promouvoir sur Facebook et Instagram, avec une ligne ou un élément par produit. Meta charge le feed dans un catalogue dans Commerce Manager, puis récupère automatiquement les titres, les prix, les images et la disponibilité pour les catalog ads et les boutiques. Les champs obligatoires sont id, title, description, availability, condition, price, link, image_link et brand. Les formats acceptés sont CSV, TSV, XLSX, Google Sheets et XML. La précision du feed détermine ce que les acheteurs voient réellement dans chaque catalog ad.

Le product feed est le fichier le moins séduisant d'un compte Meta Ads, mais il décide discrètement de ce que montre chaque catalog ad. Trompe-toi sur un prix dans une feuille de calcul et tu n'as pas simplement fait une erreur de données, tu as publié un prix incorrect pour toutes les personnes qui voient ce produit. Si le catalogue lui-même n'est pas encore créé, commence par le guide de configuration.

Les documents de référence se situent généralement à l'un des deux extrêmes. La spécification de Meta est complète et précise, mais elle se lit comme un schéma de base de données, avec les avertissements importants enfouis dans les cellules des tableaux. La plupart des explications de tiers s'arrêtent à « c'est une feuille de calcul qui contient tes produits ».

Cet article propose une version intermédiaire : ce qu'est le fichier, chaque champ obligatoire avec la contrainte qui pose vraiment problème, les champs facultatifs qui changent ce que tu peux faire, le fonctionnement de plusieurs images et vidéos sur un même produit, les formats et limites de taille acceptés par Meta, et la manière dont le fichier arrive dans Commerce Manager.

Qu'est-ce qu'un Facebook Product Feed ?

Un Facebook product feed est un fichier structuré dans lequel chaque ligne (ou chaque élément XML) décrit un produit et chaque colonne correspond à un champ nommé, comme title ou price. Il s'agit d'une spécification, pas d'un export libre : Meta ne lit que les champs qu'il reconnaît, et plusieurs champs n'acceptent que certaines valeurs.

Trois termes sont utilisés de façon interchangeable dans la documentation sur les Facebook product feeds alors qu'ils désignent des choses différentes :

  • Catalogue : le conteneur semblable à une base de données qui se trouve dans Commerce Manager et stocke tes fiches produit. Les annonces et les boutiques utilisent le catalogue.
  • Source de données : la méthode qui permet d'ajouter les produits au catalogue. Un feed est une source de données. La saisie manuelle, l'intégration avec une plateforme partenaire et la Batch API en sont d'autres.
  • Product feed : le fichier lui-même, utilisé comme source de données d'un catalogue.

Un même catalogue peut contenir des produits provenant de plusieurs sources, c'est pourquoi « feed » et « catalogue » ne sont pas synonymes. Tu peux avoir trois feeds qui alimentent un même catalogue, et c'est le catalogue que ciblent tes campagnes.

Un feed n'est pas non plus l'annonce, l'audience ou le pixel. Il contient des données d'inventaire. Ce que Meta fait ensuite de ces données relève d'un autre ensemble de décisions.

Une précision sur le vocabulaire s'impose, car les anciennes ressources en regorgent. Ce que l'on appelait auparavant dynamic ads ou dynamic product ads porte désormais le nom d'Advantage+ catalog ads. Le conteneur autrefois appelé Business Manager s'appelle maintenant business portfolio, même si certaines pages d'aide de Meta utilisent encore l'ancien nom. Dans le feed lui-même, status est le nom de champ privilégié par rapport à l'ancien visibility, et internal_label a remplacé product_tags.

Ce qu'un Product Feed alimente réellement

Une fois les produits ajoutés à un catalogue, les données du feed servent de matière première à plusieurs formats :

  • Advantage+ catalog ads, qui sélectionnent les produits par utilisateur plutôt que par annonce
  • Catalog carousel ads, dont les cartes sont alimentées par le catalogue au lieu d'être créées à la main
  • Collection Ads, y compris la grille de quatre produits sous la créa principale
  • Product tag ads et l'identification organique des produits éligibles
  • Collaborative ads, où un marchand partage un segment de catalogue avec une marque partenaire
  • Shops sur Facebook et Instagram, lorsque cette option est prise en charge

Le point technique qui compte est le suivant : avec ces formats, tu n'importes pas une créa par produit. Meta assemble l'annonce au moment de sa diffusion à partir des champs du feed. L'image est celle vers laquelle pointe image_link, le titre est souvent le title, et le prix affiché correspond à price, ou à sale_price si une promotion est active.

C'est ce qui les différencie d'une annonce créée manuellement, pour laquelle tu choisis toi-même l'image et rédiges le texte. C'est aussi ce qui distingue un carrousel manuel d'un carrousel de catalogue. Dans les formats de catalogue, le feed n'est pas un élément secondaire. Il constitue la source de la créa.

Champs obligatoires dans un Facebook Product Feed

Pour un produit retail standard, neuf champs sont obligatoires, auxquels s'ajoute size sous certaines conditions pour des produits vendus via Shops. Les noms de champs doivent être écrits en anglais américain, et plusieurs champs n'acceptent que des valeurs précises prises en charge plutôt qu'un texte libre.

ChampCe qu'il contientLa contrainte qui pose problème
idIdentifiant unique du produit, idéalement le SKU100 caractères maximum. Sensible à la casse, donc mug-01 et MUG-01 sont deux produits différents. Ne doit être identique à aucun item_group_id. Modifier un id crée un nouveau produit au lieu de renommer l'ancien.
titleNom précis du produit200 caractères maximum, avec moins de 65 recommandés pour éviter la troncature. Meta recommande d'utiliser la casse de titre.
descriptionDétails sur les caractéristiques et les matériaux9,999 caractères maximum. Texte brut, sans liens, pas entièrement en majuscules et différent du titre.
availabilityÉtat actuel du stockLes valeurs prises en charge sont in stock et out of stock. Les produits en rupture de stock ne sont pas diffusés dans les annonces, mais ils peuvent rester visibles dans une boutique comme épuisés pendant 56 jours maximum.
conditionÉtat du produitLes valeurs prises en charge sont new, refurbished et used.
pricePrix normalUn nombre, une espace, puis un code ISO 4217 à trois lettres, par exemple 49.99 USD. Un point comme séparateur décimal. Aucun symbole monétaire. Une seule devise par fichier.
linkURL de la page produitDoit commencer par http:// ou https://. Pour Shops, elle doit se trouver sur un domaine appartenant à l'entreprise.
image_linkURL de l'image produit principaleJPEG ou PNG, au moins 500 x 500 pixels et moins de 8 MB. Meta recommande de plus grands formats carrés lorsqu'ils sont disponibles, notamment 1,024 x 1,024 pour Shops.
brandNom de la marque100 caractères maximum. Indiqué comme obligatoire dans la spécification actuelle, même si certains anciens textes de dépannage considèrent encore brand, GTIN et MPN comme des identifiants interchangeables.
sizeTaille sous forme de mot, d'abréviation ou de nombre200 caractères maximum. Obligatoire uniquement pour les catégories Shops concernées, comme les vêtements et les chaussures, pas pour tous les produits faisant l'objet d'une publicité.

Deux contraintes provoquent à elles seules plus d'échecs que toutes les autres réunies.

La première est le format du prix. $49.99 échoue. 49,99 EUR échoue. Il faut un nombre, une espace et le code de la devise, avec un point pour les décimales, et une seule devise dans chaque fichier de données.

La seconde concerne id, et c'est la raison pour laquelle un feed techniquement valide peut tout de même ne pas être diffusé. Pour utiliser des Advantage+ catalog ads, l'id doit correspondre exactement à l'identifiant envoyé par ton site sous la forme content_id ou content_ids dans les événements du pixel. Pas « à peu près », ni « après avoir supprimé le préfixe ». Une différence de casse ou un suffixe de variante présent d'un côté mais pas de l'autre suffit à rompre l'association entre le comportement de navigation et l'article du catalogue. Les conseils de Meta sur les catalogues recommandent de viser un taux de correspondance supérieur à 75%.

Champs obligatoires d'un Facebook product feed avec leurs limites de caractères, la taille minimale des images et le format du prix

Champs facultatifs qui valent la peine d'être renseignés

La liste des champs facultatifs est longue. Voici ceux qui changent réellement ce que tu peux faire, au lieu d'ajouter simplement des détails.

sale_price et sale_price_effective_date. Même format que price, et il doit être inférieur au prix normal. S'il est égal ou supérieur à price, Meta ne l'affiche tout simplement pas, ni dans l'annonce ni dans Commerce Manager. La période d'effet est un intervalle dont les deux extrémités sont précisées, comme 2026-11-24T09:30-08:00/2026-11-30T23:59-08:00. Sans cette période, un prix soldé reste actif jusqu'à ce que tu le supprimes.

item_group_id. Le mécanisme des variantes, expliqué en détail dans la section suivante.

google_product_category et fb_product_category. Les catégories sont facultatives, mais elles aident Meta à associer ton produit à des produits similaires, ce qui compte lorsque le système choisit ce qu'il va montrer à une personne en train de parcourir le site. Utilise la catégorie la plus précise disponible plutôt qu'une catégorie générale de premier niveau.

gtin et mpn. Fournis de vrais identifiants ou n'en fournis aucun. Un GTIN s'écrit sans tirets ni espaces. Un identifiant inventé est pire qu'un identifiant absent.

color, gender, age_group, material, pattern. Attributs de variante. gender accepte female, male ou unisex. age_group accepte adult, all ages, teen, kids, toddler, infant ou newborn. Les champs de texte libre sont limités à 200 caractères, sauf pattern, limité à 100.

shipping. Formaté sous la forme Country:Region:Service:Price, par exemple US:NY:Ground:9.99 USD, avec plusieurs destinations séparées par des virgules. C'est ce champ qui alimente la superposition de livraison gratuite sur les catalog ads, et celle-ci exige un prix nul appliqué au niveau du pays. Un prix nul limité à une seule région ne suffit pas.

status. Les valeurs sont active et archived, avec active par défaut. Les produits archivés restent dans le catalogue, mais cessent d'apparaître dans les annonces et les boutiques. C'est une solution plus propre que la suppression lorsqu'un article est temporairement retiré de la vente.

internal_label par rapport à custom_label_0 jusqu'à custom_label_4. Les deux peuvent servir à filtrer un product set. La documentation actuelle de Meta recommande les internal labels pour cette tâche et donne une raison opérationnelle précise : « Contrairement aux custom labels, tu peux ajouter ou mettre à jour les internal labels sans soumettre les produits à un nouvel examen des règles à chaque fois, ce qui peut affecter la diffusion des annonces. » Les internal labels acceptent jusqu'à 5,000 valeurs par produit, de 110 caractères chacune, et Meta les normalise en minuscules. Les custom labels correspondent à cinq champs distincts de 100 caractères chacun.

rich_text_description. Description mise en forme pour les pages de boutique, avec description toujours obligatoire comme solution de repli en texte brut. Elle n'est pas prise en charge dans les annonces et ne change donc rien au texte de ta catalog ad.

Plusieurs images et vidéos dans un Facebook Product Feed

C'est ici que la plupart des feeds sont mal conçus, car trois mécanismes différents ressemblent tous à « plus d'images » alors qu'ils ne sont pas interchangeables.

Lance plus. Clique moins.

Lance des centaines de créas d'un coup, associe automatiquement les miniatures aux vidéos et exporte directement vers Meta Ads Manager.

Essayer Ads Uploader gratuitement

Sans carte bancaire • Essai gratuit de 7 jours

Images supplémentaires sur un même produit

additional_image_link accepte jusqu'à 20 URL d'images supplémentaires sur une fiche produit. En comptant l'image_link principal, cela représente jusqu'à 21 images associées à un même produit.

Les URL peuvent être séparées par une virgule, un point-virgule, une espace ou une barre verticale. Chaque image suit les mêmes règles que l'image principale : JPEG ou PNG, au moins 500 x 500 pixels et moins de 8 MB. Dans un CSV, place correctement l'ensemble du champ entre guillemets si ton séparateur apparaît aussi dans les données.

Utilise ce champ pour montrer plusieurs vues du même article vendable. Une tasse en céramique photographiée de face, de dessus et en situation sur un bureau reste un seul produit avec trois images, pas trois produits.

Où ces images supplémentaires apparaissent-elles ? Les spécifications d'image de Meta recommandent plusieurs images pour les boutiques et pour les carousel ads utilisant l'option diaporama, avec quatre bonnes images ou plus pour ces usages. Côté annonces, les modèles de catalog ads proposent show_multiple_images, qui affiche plusieurs images d'un même produit dans un carrousel, ainsi que carousel_slideshows, qui crée un diaporama dans une carte lorsque le produit possède plusieurs images. Meta ne dit pas que chaque catalog ad fait automatiquement défiler toutes tes images supplémentaires. Leur utilisation dépend du format, du modèle et de l'automatisation de la créa active. Renseigner ce champ rend ces options disponibles, sans garantir qu'elles soient utilisées.

Variantes ou images supplémentaires

item_group_id a un rôle complètement différent. Il relie des lignes produit distinctes qui sont des variantes les unes des autres.

Chaque variante possède sa propre fiche : son propre id unique, son propre price, sa propre availability, son propre link et son propre image_link principal. Elles partagent uniquement l'id du groupe. Un sac à dos en toile disponible en trois couleurs correspond à trois lignes qui partagent un même item_group_id, et non à une ligne avec trois images.

Deux règles passent souvent inaperçues. Premièrement, l'id du groupe ne doit correspondre à aucun id de produit dans le catalogue et il est sensible à la casse. Deuxièmement, une image différente ne suffit pas à créer une variante valide : Meta attend au moins un véritable attribut distinctif, comme color ou size. Meta accepte jusqu'à 800 variantes dans un groupe, tout en avertissant que les groupes de plus de 300 deviennent difficiles à gérer et à afficher.

La distinction devient simple lorsqu'on la formule clairement. additional_image_link signifie plusieurs photos d'un même produit. item_group_id signifie plusieurs produits associés. Choisir le mauvais champ explique généralement pourquoi une variante de couleur affiche la mauvaise photo.

Comparaison entre les champs additional_image_link, item_group_id et vidéo dans un Facebook product feed

Vidéo produit dans le Feed

La vidéo est associée à un produit via video[0].url jusqu'à video[19].url, soit jusqu'à 20 vidéos par produit.

video[0].url est la valeur par défaut, et Meta recommande le format 4:5 pour celle-ci. Les positions supplémentaires accueillent d'autres ratios, généralement 1:1 et 9:16, afin qu'un même produit dispose de médias adaptés au feed et aux placements verticaux.

Les règles techniques :

  • L'URL doit pointer vers un fichier vidéo téléchargeable. Un lien YouTube ou toute autre page avec un lecteur ne fonctionne pas, car cette URL renvoie une page web et non un fichier.
  • 200 MB maximum par vidéo, sans limite de durée indiquée.
  • Les extensions prises en charge couvrent une longue liste, notamment .mp4, .mov, .avi, .mkv, .flv et .gif.

Le test pratique prend cinq secondes : colle l'URL dans un navigateur. Si le fichier brut se télécharge ou se lit, cela fonctionne. Si une page contenant un lecteur s'affiche, Meta ne peut pas l'utiliser.

Un point à connaître sur la diffusion : l'automatisation des vidéos produit est activée par défaut lorsqu'elle est disponible, et Meta peut remplacer l'image produit par une vidéo du catalogue lorsqu'il prévoit que la vidéo réduira le coût par résultat. Carousel Ads et Collection Ads sont les formats recommandés. Dans une Collection Ad, la vidéo peut occuper l'emplacement principal, tandis que les vignettes de produits en dessous restent des images.

Pourquoi une image remplacée ne se met pas à jour

Meta met en cache les médias produit selon leur URL. La spécification est très claire sur la conséquence : « la nouvelle image doit avoir une URL différente pour que nous reconnaissions le changement et l'actualisions dans ton catalogue ».

Si tu écrases le fichier à la même adresse, Meta ne reçoit aucun signal indiquant qu'un élément a changé. L'ancienne image continue d'être diffusée.

C'est aussi pour cela que les images temporaires sont un piège. Publie image-coming-soon.jpg à une URL stable, et lorsque la vraie photo arrive plus tard à cette même URL, elle n'est jamais récupérée. Meta conseille d'attendre et d'ajouter l'image définitive plutôt que de publier une image temporaire.

La solution consiste à versionner l'URL. desk-lamp-01-v2.jpg, ou un chemin qui change en même temps que la ressource. Ajoute ensuite la nouvelle URL au prochain import.

Formats et limites de taille d'un Facebook Product Feed

Les formats pris en charge par Meta sont CSV, TSV, Excel XLSX, Google Sheets et XML au format RSS ou Atom. ZIP et GZIP sont des formats de compression pour ces fichiers, pas des formats de feed distincts.

FormatSa structureQuand l'utiliser
CSVLes noms de champs comme en-têtes de colonnes sur la première ligne, un produit par ligneLe choix par défaut pour la plupart des exports et des scripts
TSVMême structure que CSV avec des tabulations, donc les virgules dans les valeurs n'ont pas besoin d'être échappéesDonnées produit contenant beaucoup de virgules
XLSXClasseur Excel, en-têtes sur la ligne supérieureFeeds gérés manuellement
Google SheetsEn-têtes sur la première ligne, données uniquement dans le premier ongletPetits catalogues avec plusieurs éditeurs
XML (RSS/Atom)Éléments balisés, un champ par ligne, déclaration xml valideFeeds générés par un serveur web ou une plateforme

Une précision s'impose, car cette idée circule beaucoup : un fichier JSON autonome ne figure pas dans la liste des formats acceptés par Meta. JSON apparaît bien dans cet écosystème, comme valeur encodée dans un champ CSV (par exemple pour les objets vidéo) et dans les charges utiles des requêtes Marketing API, mais cela ne fait pas d'un fichier .json un data feed valide à importer.

Les limites :

  • 100 MB pour un import ponctuel, 4 GB pour un feed programmé
  • Compression au format ZIP ou GZIP au-dessus de 1 GB
  • Jusqu'à environ 1 million de produits par feed, avec une division au-delà plutôt qu'une troncature
  • 5,242,880 caractères maximum par ligne

Deux remarques propres aux formats. Pour les feeds Google Sheets, les données doivent se trouver dans le premier onglet et les paramètres de partage doivent permettre à toute personne disposant du lien de les consulter. Et si tu génères un CSV dans du code plutôt qu'avec une application de feuille de calcul, applique les règles habituelles d'échappement du CSV : entoure de guillemets toute valeur contenant une virgule ou des espaces significatives, et échappe un guillemet double interne en le doublant.

Gagne des heures sur tes tests créatifs

Arrête de lancer tes pubs une par une. Traite en masse un nombre illimité de créas avec l'association automatique des médias et la publication directe via API.

Essayer Ads Uploader gratuitement

Sans carte bancaire • Essai gratuit de 7 jours

Comment le Feed arrive dans Commerce Manager

Un Facebook product feed arrive dans Commerce Manager de deux façons, et la différence compte plus qu'il n'y paraît.

Un import ponctuel récupère un fichier sur ton ordinateur, ou à partir d'une URL fournie une seule fois. C'est un instantané. Meta ne le consultera pas à nouveau.

Une récupération programmée indique à Meta l'emplacement d'un fichier hébergé et lui permet de le récupérer à une fréquence donnée. Les règles relatives à l'URL sont précises : elle doit commencer par http://, https://, ftp:// ou sftp://, et pointer directement vers le fichier plutôt que vers une landing page, un formulaire de connexion ou un écran d'aperçu. Teste-la d'abord dans un navigateur. Si le fichier s'ouvre ou se télécharge, Meta peut le récupérer.

Commerce Manager propose des programmations horaires, quotidiennes et hebdomadaires, et une fois par heure est la fréquence maximale : un feed programmé ne peut pas être récupéré plus souvent. La Marketing API propose également une fréquence mensuelle. Si tu définis une programmation, fais-la démarrer après la régénération de ton propre fichier. Un fichier reconstruit à 09:00 doit être récupéré à 09:15, et non à 09:00.

Il existe également une différence entre une programmation de remplacement, qui considère le fichier comme la vue complète et peut supprimer les produits absents, et une programmation de mise à jour, qui ajoute et met à jour les produits sans jamais les supprimer. Meta documente l'utilisation conjointe d'une programmation de mise à jour fréquente et d'un remplacement complet moins fréquent, à condition que les deux soient espacés d'au moins dix minutes. Cette méthode convient aux catalogues dont les prix et les stocks évoluent rapidement, mais dont la liste complète de produits change lentement.

Lors du premier import, si les noms de tes colonnes ne correspondent pas au schéma de Meta, Commerce Manager peut te proposer de les associer, par exemple en reliant une colonne appelée name au champ title pris en charge. Approuve ces correspondances et Meta les enregistre sous forme de règles de données qui s'appliqueront aux futurs imports du même feed. C'est utile, mais cela ne justifie pas de conserver des en-têtes non standard. Les noms de champs officiels facilitent le dépannage du fichier en dehors de Commerce Manager.

Chaque import terminé renvoie un récapitulatif : le nombre de produits ajoutés ou mis à jour, les erreurs qui ont bloqué des produits ou l'ensemble du fichier, et les problèmes qui empêcheront certains produits d'apparaître. C'est le premier endroit à consulter lorsqu'un élément manque.

Chemins d'import d'un Facebook product feed montrant l'import ponctuel et la récupération programmée vers un catalogue

Feeds principaux, supplémentaires et par pays

Tous les Facebook product feeds ne remplissent pas le même rôle.

Un feed principal crée et possède les fiches produit. Il contient l'ensemble des champs obligatoires, et c'est ce que la plupart des gens entendent par « le feed ».

Un feed supplémentaire enrichit les produits déjà créés par un feed principal. Il établit une correspondance avec les id existants exacts, est lié au feed principal au lieu d'être autonome et peut renseigner des champs comme les titres, les descriptions, les images, les catégories, la marque, le regroupement des variantes et la vidéo. En revanche, il ne peut explicitement pas remplacer l'id du produit, price, sale_price, availability ou quantity_to_sell_on_facebook. Cette limite est importante : un feed supplémentaire ne permet pas de mettre à jour les prix ou les stocks. Lorsqu'un champ pris en charge apparaît dans les deux feeds, la valeur supplémentaire l'emporte dans le catalogue sans modifier le fichier principal. Un feed supplémentaire peut servir plusieurs feeds principaux, mais chaque feed principal ne peut être relié qu'à un seul feed supplémentaire.

Les feeds par pays et par langue remplacent les valeurs localisées des produits déjà existants. Un feed par pays gère le prix, le prix soldé, la disponibilité, le statut et le lien de destination propres à un marché. Un feed par langue gère les textes traduits comme les titres et les descriptions. Il existe un mode combiné pour les deux, et lorsque plusieurs valeurs de remplacement peuvent correspondre, l'ordre de priorité est d'abord langue et pays, puis langue, puis pays, et enfin la valeur du feed principal.

C'est aussi la véritable réponse à la question des devises multiples. Un fichier de données principal normal contient une seule devise. Un catalogue en propose plusieurs grâce aux feeds par pays. Pour les catalogues de plus de 100,000 produits, Meta recommande un feed par pays ou par langue plutôt qu'un seul gros fichier de remplacement.

Deux autres comportements méritent d'être connus avant de te surprendre. Par défaut, la suppression est actuellement activée sur un feed, ce qui signifie qu'un remplacement complet peut supprimer les produits appartenant au feed lorsqu'ils sont absents du nouveau fichier. Une fois la suppression activée, Meta ne permet pas de la désactiver pour ce feed. C'est une bonne raison de marquer les articles out of stock plutôt que de supprimer des lignes, car le catalogue conserve alors l'article et son historique. Et lorsqu'un feed dépasse les limites de taille ou de nombre d'articles, la division est correctement prise en charge : crée le nouveau feed en utilisant l'id de l'ancien comme origine, importe le sous-ensemble, et la propriété de ces articles sera transférée lors de la première session terminée au lieu d'être enregistrée comme une suppression massive.

Maintenir un Facebook Product Feed à jour

Meta n'impose pas une fréquence de mise à jour unique, et c'est logique, car les catalogues n'évoluent pas tous au même rythme. La règle pratique consiste à récupérer le feed au moins aussi souvent que les champs importants changent réellement.

  • Toutes les heures pour un stock qui évolue vite, les ventes flash ou les prix volatils
  • Tous les jours pour un inventaire e-commerce ordinaire
  • Toutes les semaines uniquement lorsque les produits, les prix et la disponibilité changent vraiment lentement

Au-delà de la fréquence, cette courte liste couvre la plupart des problèmes :

  • Utilise out of stock pour une indisponibilité temporaire au lieu de supprimer des lignes. Le champ availability empêche les produits indisponibles d'apparaître dans les annonces.
  • Garde des id stables et identiques dans le feed, les événements du pixel et du serveur, ainsi que dans tous les feeds de remplacement localisés. Un id qui change prive le produit de son historique.
  • Versionne les URL d'images chaque fois que leur contenu change.
  • Rédige des titres qui ressemblent à des noms de produits plutôt qu'à des textes promotionnels. Dans une catalog ad, le titre est souvent le seul texte associé au produit que voit l'acheteur.
  • Renseigne les catégories même si elles sont facultatives, car elles aident Meta à associer tes produits à ce que la personne consultait déjà.
  • Lis le récapitulatif d'import après chaque récupération, pas seulement après la première.
  • Évite les modifications inutiles de champs. Les changements importants peuvent soumettre à nouveau les produits à l'examen des règles, précisément le type de perturbation que les internal labels permettent d'éviter.

Les conseils de Meta sur les catalogues de qualité expriment la même idée générale : des données produit complètes et précises aident ses systèmes à recommander les bons produits. Meta ne publie aucun chiffre à ce sujet, et il n'existe pas non plus de statistique crédible à l'échelle du marché sur la part des dépenses e-commerce consacrée aux catalog ads. Méfie-toi donc de tout pourcentage précis que tu pourrais voir cité.

De manière plus générale, le système de diffusion de Meta repose chaque année davantage sur la qualité des données que sur la configuration manuelle. Pour les formats de catalogue, cette donnée correspond à l'exhaustivité du feed.

Questions fréquentes

Qu'est-ce qu'un Facebook product feed ? Un fichier structuré, au format CSV, TSV, XLSX, Google Sheets ou XML, qui contient un enregistrement par produit. Meta l'importe dans un catalogue dans Commerce Manager, et les catalog ads et les boutiques utilisent ce catalogue. Le feed est l'entrée, le catalogue est le conteneur, et un même catalogue peut être alimenté par plusieurs sources.

Quels champs sont obligatoires dans un Facebook product feed ? Pour un feed retail standard : id, title, description, availability, condition, price, link, image_link et brand. Le champ size est également obligatoire pour les produits concernés vendus via Shops, en particulier les vêtements et les chaussures.

Un Facebook product feed peut-il contenir plusieurs images par produit ? Oui. Un image_link principal et jusqu'à 20 URL dans additional_image_link, soit jusqu'à 21 images par fiche produit. Sépare les URL par une virgule, un point-virgule, une espace ou une barre verticale, et applique à chaque image les mêmes spécifications qu'à l'image principale.

Quelle est la différence entre additional_image_link et item_group_id ? additional_image_link ajoute plusieurs photos à la fiche d'un même produit. item_group_id relie plusieurs fiches produit distinctes qui sont des variantes les unes des autres, chacune avec ses propres id, price, availability et image principale, ainsi qu'au moins un attribut qui la différencie réellement.

Quels formats de fichier Facebook accepte-t-il pour un product feed ? CSV, TSV, Excel XLSX, Google Sheets et XML au format RSS ou Atom, avec compression facultative au format ZIP ou GZIP. Un fichier JSON autonome n'est pas un format de feed accepté.

Pourquoi mon image produit ne s'est-elle pas mise à jour après son remplacement ? Meta met en cache les médias produit selon leur URL. Écraser le fichier à la même adresse ne lui donne donc aucun signal pour le récupérer à nouveau. Modifie ou versionne l'URL de l'image, puis ajoute la nouvelle URL au prochain import.

À quelle fréquence faut-il mettre à jour un Facebook product feed ? Au moins aussi souvent que le prix, la disponibilité et les données produit changent. Commerce Manager prend en charge des programmations horaires, quotidiennes et hebdomadaires, avec une récupération toutes les heures au maximum.

Quelle peut être la taille d'un Facebook product feed ? 100 MB pour un import ponctuel, 4 GB pour un feed programmé, avec une compression recommandée au-dessus de 1 GB, environ un million de produits par feed et une limite de 5,242,880 caractères par ligne.

Quelle est la différence entre un product feed et un catalogue ? Le feed est un fichier d'entrée qui décrit les produits. Le catalogue est le conteneur persistant qui les stocke après leur import, et c'est lui que les annonces et les boutiques utilisent réellement.

Un même product feed peut-il contenir plusieurs devises ? Un fichier de données principal normal doit contenir une seule devise. Les différents marchés sont gérés via des feeds par pays, qui remplacent le prix, le prix soldé, la disponibilité, le statut et le lien pour chaque pays. Le catalogue peut ainsi servir plusieurs devises même si le fichier principal n'en contient qu'une.

Sources et lectures complémentaires

Toutes les spécifications ci-dessus proviennent de la documentation actuelle de Meta :

Conclusion

Un Facebook product feed est un fichier composé de champs nommés, et presque tous les problèmes rencontrés avec les catalog ads viennent d'un de ces champs qui est incorrect, manquant ou obsolète.

Les points à retenir :

  • Neuf champs font l'essentiel du travail : id, title, description, availability, condition, price, link, image_link et brand, auxquels s'ajoute size pour les catégories Shops concernées.
  • price se compose d'un nombre, d'une espace et d'un code ISO 4217, avec une seule devise par fichier. Les feeds par pays gèrent le reste.
  • id doit correspondre exactement au content id envoyé par ton pixel, sinon les Advantage+ catalog ads ne peuvent pas relier le comportement de navigation au produit.
  • Plusieurs images sont placées dans additional_image_link (jusqu'à 20 images supplémentaires par produit). Les variantes occupent des lignes distinctes partageant un item_group_id. Les vidéos sont placées dans video[0].url jusqu'à video[19].url. Trois mécanismes, trois fonctions.
  • Une image remplacée a besoin d'une nouvelle URL, sinon elle n'est jamais récupérée à nouveau.
  • Les formats acceptés sont CSV, TSV, XLSX, Google Sheets et XML, avec une limite de 100 MB pour un import ponctuel et de 4 GB pour un feed programmé.

L'étape suivante utile consiste à ouvrir ton propre fichier à côté du tableau des champs obligatoires ci-dessus et à le vérifier champ par champ. La plupart des feeds peu performants ne sont pas défectueux de façon intéressante. Il leur manque des catégories, ils contiennent une URL d'image non versionnée ou un id qui ne correspond plus à celui du site depuis six mois.

Chris Pollard
Chris Pollard

Chris est le fondateur de Ads Uploader, qui aide les équipes marketing et les agences à économiser des heures sur l'automatisation de Meta Ads. Après des années à voir les équipes perdre du temps sur des imports d'annonces répétitifs, il a construit l'outil qu'il aurait voulu voir exister.

Arrête de lancer tes pubs
Une par une

Lance des centaines de pubs en quelques minutes. Association automatique des ratios vidéo et des miniatures. Publication directe sur Meta.

Essayer Ads Uploader gratuitement

Sans carte bancaire
Essai gratuit de 7 jours

Ad Library Helper

Extension Chrome gratuite pour rechercher, filtrer et sauvegarder des pubs depuis la bibliothèque publicitaire Meta.

Télécharger gratuitement

Développé par Ads Uploader

Prêt à passer tes pubs Meta à l'échelle ?

Découvre pourquoi les performance marketeurs, les agences et les marques font confiance à Ads Uploader pour gérer leurs uploads de créas en masse. Lance des centaines de pubs en quelques minutes, pas en heures.

Commencer gratuitement

Essai gratuit de 7 jours

Sans carte bancaire

Résiliable à tout moment