L'éditeur massif natif de Meta Ads Manager accepte un template XLSX qui te permet de créer ou modifier des campagnes, ad sets et annonces en remplissant un tableur et en l'important. Tu l'ouvres dans Ads Manager depuis le menu More (ou l'icône d'import/export) au-dessus de ton tableau de campagnes. La fonctionnalité est gratuite, livrée avec chaque compte publicitaire, et utilise le même format XLSX que Meta utilise en interne pour son workflow d'export/ré-import.
C'est le guide de référence de ce template. Chaque colonne, chaque champ requis vs optionnel, comment créer des campagnes en masse et modifier en masse des annonces existantes, la mécanique de l'image hash et de l'upload ZIP, les messages d'erreur au niveau de la ligne et ce qu'ils signifient réellement, et le pattern export → vider les IDs → ré-import pour déplacer des campagnes entre comptes.
Les launchers massifs tiers qui publient via la Marketing API au lieu de XLSX sont une décision distincte avec leur propre comparatif. Ce guide reste sur le workflow tableur natif, avec une courte section à la fin sur les cas où un outil d'import massif a plus de sens.
Qu'est-ce que l'éditeur massif natif ?
L'éditeur massif natif est la fonctionnalité Import & Export intégrée à Meta Ads Manager. Il accepte un template XLSX (CSV fonctionne aussi pour les fichiers plus simples) qui contient, dans la plupart des fichiers, une ligne par annonce, avec les réglages de campagne et d'ad set de cette annonce sur la même ligne. Il crée ou met à jour tout ce qui se trouve dans le fichier en un seul import.
Il se trouve sous Ads Manager > More > Import ads in bulk, fonctionne uniquement sur desktop et est disponible sur chaque compte publicitaire sans frais. Initialement intégré à Power Editor de Facebook - l'outil exclusivement desktop utilisé par les annonceurs legacy jusqu'au milieu des années 2010 - l'éditeur massif a été intégré à Ads Manager lors du retrait de Power Editor. C'est pourquoi certaines équipes parlent encore du "template Power Editor".
Il gère à la fois la création (lignes avec colonnes d'ID vides) et les mises à jour (lignes avec les Campaign / Ad Set / Ad IDs d'origine intacts). Le même fichier peut mélanger les deux : IDs vides créent, IDs remplis mettent à jour, et Meta traite le fichier ligne par ligne.
Comment fonctionne l'import massif Facebook Ads ?
Le processus d'import massif passe par des tableurs structurés qui communiquent les données d'annonce au système Facebook. Voici comment ça marche :
1. Template de tableur
Tu remplis d'abord un template Excel avec des colonnes pour campagnes, ad sets et annonces. Chaque ligne représente un objet avec tous ses détails. Facebook fournit des templates avec les noms de colonnes corrects, qui diffèrent légèrement de l'UI (par exemple "Body" pour le texte de l'annonce, "Title" pour le titre).
2. Import du fichier
Dans Ads Manager, clique sur le bouton Import/Export et choisis "Import Ads in Bulk". Tu peux soit téléverser ton fichier Excel/CSV, soit coller les données en texte. Le système parse le tableur et crée ou met à jour les campagnes, ad sets et annonces spécifiés.
3. Téléversement des créas
Pour les images et vidéos, deux options :
- Référencer des assets existants via leur Image Hash ou Video ID
- Importer de nouveaux assets en même temps que le tableur, individuellement ou dans un fichier ZIP
La clé : faire correspondre les noms de fichiers du tableur aux fichiers effectivement importés.
4. Traitement et validation
Facebook traite les données et affiche un résumé de ce qui a été importé, avec les éventuels warnings ou erreurs. Les petits problèmes apparaissent en warnings ; les sérieux deviennent des erreurs bloquantes qui empêchent l'import.
5. Revue et publication
Une fois l'import réussi, les campagnes apparaissent dans Ads Manager comme brouillons. Tu peux tout revoir avant de cliquer sur "Publish" pour activer les annonces.
La limite de taille de fichier est d'environ 2 Mo, ce qui permet généralement plusieurs centaines d'annonces par import.
Le template d'import massif : chaque colonne expliquée
Le template d'import massif Meta Ads est le fichier Excel que tu obtiens via Download Excel template dans Ads Manager, ou en exportant une campagne qui tourne déjà. Ses noms de colonnes diffèrent des libellés de l'UI Ads Manager d'une manière qui piège les nouveaux utilisateurs. "Body" est le texte principal. "Title" est le titre. "Link Description" est le texte sous le titre, pas la description de l'annonce. "Link Object ID" est ta Page Facebook.
La référence ci-dessous suit la liste de colonnes de Meta partout où elle couvre une colonne. Les en-têtes de targeting, de placement et de conversion changent plus souvent que le reste, donc copie-les depuis un export de ton propre compte plutôt que de les taper à la main.
Colonnes au niveau campagne
| Colonne | Signification | Format |
|---|---|---|
| Campaign ID | ID de campagne existante pour mises à jour | Laisser vide pour créer |
| Campaign Name | Libellé de la campagne | Texte libre |
| Campaign Objective | Objectif d'achat | Awareness, Traffic, Engagement, Leads, Sales ou App promotion. Requis pour les nouvelles campagnes |
| Campaign Status | Campagne active/en pause | Active ou Paused |
| Buying Type | Mode de paiement | Auction. Requis pour les nouvelles campagnes. Les campagnes Reservation ne peuvent pas être exportées puis ré-importées |
| Campaign Daily Budget | Budget quotidien au niveau campagne | Montant dans la devise de ton compte, sans symbole de devise (ex. 50.00) |
| Campaign Lifetime Budget | Budget total au niveau campagne | Même format que le quotidien |
| Campaign Bid Strategy | Stratégie d'optimisation | LOWEST_COST_WITHOUT_CAP, LOWEST_COST_WITH_BID_CAP, COST_CAP |
| Special Ad Categories | Catégories restreintes | Produits et services financiers (qui couvrent désormais le crédit), emploi, logement, ou enjeux sociaux, élections ou politique. Vide si aucune. Copie la valeur exacte depuis un export |
Colonnes au niveau ad set
| Colonne | Signification | Format |
|---|---|---|
| Ad Set ID | ID d'ad set existant pour mises à jour | Laisser vide pour créer |
| Ad Set Name | Libellé de l'ad set | Texte libre |
| Ad Set Daily Budget | Budget quotidien au niveau ad set | Montant dans la devise de ton compte, sans symbole de devise (ex. 50.00) |
| Ad Set Lifetime Budget | Budget total au niveau ad set | Même format que le quotidien |
| Ad Set Run Status | Ad set actif/en pause | Active ou Paused |
| Ad Set Time Start | Début du schedule | Date et heure, MM/DD/YY HH:MM selon la liste de colonnes de Meta. Reprends le format de ton export |
| Colonne d'heure de fin | Fin du schedule | Même format que l'heure de début. Copie l'en-tête exact depuis un export |
| Optimization Goal | Sur quoi Meta optimise | OFFSITE_CONVERSIONS, LINK_CLICKS, REACH, IMPRESSIONS, THRUPLAY, etc. |
| Billing Event | Quand tu es facturé | IMPRESSIONS, LINK_CLICKS, THRUPLAY |
| Bid Amount | Enchère pour stratégies plafonnées | Montant dans la devise de ton compte, sans symbole de devise (ex. 2.50). Vide pour lowest cost |
| Pixel ID | Pixel de conversion | Requis pour OFFSITE_CONVERSIONS |
| Conversion Event | Event pixel optimisé | PURCHASE, LEAD, COMPLETE_REGISTRATION, etc. |
| Conversion Window | Fenêtre d'attribution | 1d_view, 7d_click, 1d_click_1d_view, etc. |
| Countries | Targeting géographique | Codes pays ISO, séparés par virgule (ex. US, CA, GB). Requis |
| Cities | Targeting par ville | Point-virgule entre les villes (ex. Palo Alto, CA; New York, NY). Laisse vide si tu cibles plusieurs pays |
| Age Min / Age Max | Tranche d'âge | Entiers 13-65 |
| Gender | Targeting par genre | Men ou Women. Laisse vide pour tous les genres |
| Locales | Targeting linguistique | Langues, séparées par virgule |
| Interests | Targeting détaillé | IDs d'intérêt séparées par virgule |
| Custom Audiences | Audiences incluses | Paires ID:Nom, séparées par virgule (ex. 123:Clients, 321:Autres clients) |
| Excluded Custom Audiences | Audiences exclues | Même format ID:Nom |
| Placements | Où les annonces tournent | Séparés par virgule (ex. facebook_feed, instagram_feed, facebook_reels, instagram_stories) |
| Device Platforms | Targeting d'appareil | mobile, desktop ou les deux |
Colonnes au niveau annonce
| Colonne | Signification | Format |
|---|---|---|
| Ad ID | ID d'annonce existante pour mises à jour | Laisser vide pour créer |
| Ad Name | Libellé de l'annonce | Texte libre |
| Ad Status | Annonce active/en pause | ACTIVE ou PAUSED |
| Title | Texte du titre | Un titre par ligne, ou plusieurs pour DCO |
| Body | Texte principal | Le copy principal au-dessus de la créa |
| Link | URL de destination | URL complète avec https:// |
| Display Link | URL d'affichage raccourcie | URL vanity optionnelle |
| Link Description | Texte sous le titre | Texte secondaire optionnel |
| Call to Action | Bouton CTA | SHOP_NOW, LEARN_MORE, SIGN_UP, GET_OFFER, etc. |
| Creative Type | Format d'annonce | ex. Link Page Post Ad ou Video Page Post Ad. Copie la valeur depuis un export |
| Image Hash | Référence vers une image de la library | Hash hex de 32 caractères |
| Video ID | Référence vers une vidéo de la library | ID vidéo Meta avec le préfixe v: (ex. v:123456789) |
| Image File Name | Référence vers un nouvel upload image | Doit correspondre à un nom dans le bundle d'upload (la liste de colonnes de Meta l'appelle colonne Image) |
| Video File Name | Référence vers un nouvel upload vidéo | Doit correspondre à un fichier vidéo importé. Jusqu'à 10 vidéos par import, 10 Mo chacune |
| Story ID | Post de Page existant | Diffuse l'annonce depuis ce post et ignore les colonnes créa. Laisse vide pour construire un nouveau post |
| Video Thumbnail URL | Override de thumbnail vidéo | URL complète |
| URL Tags | À ajouter à l'URL de destination | Chaînes type utm_source=facebook&utm_medium=cpc |
| Tracking Pixel IDs | Tracking de conversion | IDs de pixel qui doivent se déclencher pour cette annonce |
| Instagram Account ID | Identité IG | Requis pour les placements IG |
| Link Object ID | Identité de la Page Facebook | o: suivi de ton Page ID (ex. o:123456789). Requis pour toutes les annonces Meta |
Pour les ad sets Dynamic Creative, les exports ajoutent des colonnes de variantes répétées : Additional Title 1-4, Additional Body 1-4, Additional Link Description 1-4, Additional CallToAction 1-4, Additional Image 1-9 Hash et Additional Video 1-9 ID. Une colonne Use Dynamic Creative doit être sur Yes à l'import, sinon Meta ignore les assets supplémentaires. Depuis juin 2024, Meta peut ne plus proposer le dynamic creative sur les nouveaux ad sets Sales ou App promotion et oriente les annonceurs vers le format Flexible Ads.
Les colonnes requises changent selon l'objectif. Le workflow le plus propre : crée manuellement une annonce minimale dans ton objectif cible, exporte-la comme template de départ et utilise ce fichier exporté comme baseline - chaque colonne requise sera déjà pré-remplie au bon format.
À quoi le workflow XLSX est bon (et à quoi il ne l'est pas)
L'éditeur massif XLSX natif est conçu pour quelques tâches spécifiques et maladroit pour d'autres. Connaître la différence évite des heures de lutte avec le template.
Bons cas d'usage :
- Éditions massives sur de nombreuses annonces - mettre à jour URLs de destination, UTM tags, copy ou budgets sur des centaines de lignes en éditant une seule colonne.
- Reconstructions de campagnes par template - répliquer une structure éprouvée pour un nouveau marché ou client.
- Transfert entre comptes - exporter d'un compte, vider les IDs et ré-importer ailleurs.
- Revue offline et versioning - partager un plan de campagne via XLSX, suivre les diffs, obtenir une validation avant publication.
Cas d'usage gênants :
- Fonctionnalités qui ne survivent pas à l'export et au ré-import - Meta tient une liste des fonctionnalités qui cassent à l'export et à l'import. Les tests A/B, les offres et les Pages partenaires de contenu de marque sont supprimés, les annonces avec plusieurs options de texte perdent les options supplémentaires, et les campagnes Reservation ou les carrousels avec placements personnalisés reviennent en brouillons avec des erreurs impossibles à publier.
- Tests à haute vélocité - la boucle copier-coller entre tableur et Ads Manager ajoute de la friction dès que tu lances plus de ~20 annonces par semaine.
- Contrôle de thumbnail par créa - tu peux fixer une thumbnail URL, mais tu ne peux pas prévisualiser les frames ni choisir parmi les options générées comme dans l'UI.
- Engagement du post - les lignes construites à partir des colonnes créa créent de nouveaux posts, donc likes et commentaires repartent à zéro, sauf si tu colles l'ID du post d'origine dans la colonne Story ID.
Pour tout ce qui est dans la colonne "Bons cas d'usage", la XLSX native est le bon outil et il n'y a aucune raison de chercher ailleurs.
Guide pas à pas de l'import massif
Étape 1 : Télécharger le template
Dans Ads Manager, ouvre l'onglet Campaigns, Ad sets ou Ads et clique sur l'icône d'import/export au-dessus du tableau (ou sur More si l'icône n'apparaît pas). Choisis "Download Excel template" pour de nouvelles campagnes. Pour modifier des campagnes existantes, sélectionne-les et choisis Export > Export selected > Export as .xlsx.

Étape 2 : Remplir tes données
Ouvre le fichier Excel et saisis les détails de campagne, d'ad set et d'annonce. Points clés :
- Laisse les champs ID vides pour les nouveaux items
- Inclus les IDs quand tu modifies des items existants
- Assure-toi que tous les champs requis sont complets
- Fais correspondre exactement les noms de fichiers image
Étape 3 : Importer dans Ads Manager
Clique sur More et sélectionne "Import ads in bulk". Clique sur Choose file pour ajouter ton tableur, ajoute les nouvelles images dans l'onglet Images (une par une ou dans un fichier ZIP) et les nouvelles vidéos dans la section Videos, puis clique sur Import.
Lance plus. Clique moins.
Lance des centaines de créas d'un coup, associe automatiquement les miniatures aux vidéos et publie directement sur tes comptes publicitaires via l'API de Meta.
Essayer Ads Uploader gratuitementSans carte bancaire • Essai gratuit de 7 jours
Étape 4 : Revoir le résumé d'import
Vérifie les succès, warnings et erreurs bloquantes. Clique sur "View errors in Excel" pour voir ce qui a échoué, corrige ces lignes dans ton tableur et ré-importe si nécessaire.
Étape 5 : Publier les changements
Clique sur "Review and publish", coche les items que tu veux mettre en ligne et clique sur "Publish".
(Pro tip : commence par un petit batch de test pour t'assurer que le format est correct avant de passer à des centaines d'annonces.)
Comment créer des campagnes Facebook en masse
Tu n'as pas besoin d'un fichier de campagnes séparé pour créer des campagnes Facebook en masse. Chaque ligne d'annonce du template porte aussi la campagne et l'ad set auxquels elle appartient, donc la structure des campagnes découle des noms que tu mets sur chaque ligne.
La règle qui rend ça possible, c'est la façon dont Meta gère une Campaign ID vide. Il cherche dans le compte une campagne avec le même Campaign Name. S'il en trouve une, la ligne va dans cette campagne. Sinon, il crée une nouvelle campagne. Les ad sets fonctionnent de la même façon avec Ad Set Name. C'est aussi le piège : réutilise un nom qui existe déjà dans le compte et tes "nouvelles" annonces atterrissent dans une ancienne campagne. Donne à chaque nouvelle campagne et à chaque nouvel ad set un nom que le compte n'a jamais utilisé.
- Construis une campagne à la main et exporte-la. Configure l'objectif, un ad set et une annonce comme tu veux que chaque campagne soit, puis exporte-la en .xlsx. Le fichier revient avec toutes les colonnes dont cet objectif a besoin.
- Vide les IDs. Supprime les valeurs de Campaign ID, Ad Set ID et Ad ID. Garde la ligne d'en-tête.
- Copie les lignes une fois par campagne. Donne à chaque copie son propre Campaign Name et Ad Set Name.
- Change ce qui diffère d'une campagne à l'autre. En général le budget, Countries, Link et les colonnes créa. Les nouvelles campagnes ont besoin d'un Campaign Objective et d'un Buying Type, et chaque nouvel ad set a besoin d'un pays et d'un budget.
- Importe et publie. More > Import ads in bulk, puis Review and publish.
Voici à quoi ressemblent trois lignes qui créent deux campagnes (toutes les autres colonnes restent telles qu'elles sont sorties de ton export) :
| Campaign Name | Campaign Objective | Ad Set Name | Countries | Ad Name | Image File Name |
|---|---|---|---|---|---|
| US - Prospecting - Oct | Sales | US - Broad | US | US - Hook A | hook_a.jpg |
| US - Prospecting - Oct | Sales | US - Broad | US | US - Hook B | hook_b.jpg |
| UK - Prospecting - Oct | Sales | UK - Broad | GB | UK - Hook A | hook_a.jpg |
Les lignes un et deux doivent partager une campagne et un ad set, et la ligne trois doit créer une deuxième campagne avec son propre ad set. Comme Meta associe les lignes par nom, vérifie avant de publier que l'aperçu de l'import affiche deux nouvelles campagnes, pas trois.
Comment modifier des annonces Facebook en masse
Il existe deux façons natives de modifier des annonces Facebook en masse, et elles conviennent à des tâches différentes.
Sélectionner et modifier dans Ads Manager. Coche les cases à côté des campagnes, ad sets ou annonces que tu veux changer et clique sur Edit. Le panneau latéral applique les changements de budget, d'optimisation et de créa à tout ce que tu as sélectionné, et "Edit each ad set" ou "Edit each ad" te permet de les modifier un par un sans quitter le panneau. C'est la voie la plus rapide quand le changement est le même pour tous les items.
Exporter, modifier, ré-importer. Exporte les annonces en .xlsx, modifie les cellules, garde les IDs et importe le fichier. Meta te laisse modifier n'importe quel champ du fichier sauf Ad ID, Campaign ID et Image Hash. C'est la meilleure voie quand chaque ligne reçoit une valeur différente, comme de nouvelles URLs avec des UTM tags par annonce.
Dans les deux cas, modifier certains réglages peut relancer la phase de learning ou renvoyer l'annonce en validation, et tu ne peux pas changer l'objectif d'une campagne publiée.
Image Hashes, Video IDs et le workflow ZIP
Les créas sont la partie la plus sujette aux échecs des imports XLSX parce qu'il y a trois façons d'attacher un média à une ligne et elles ne se comportent pas pareil.
Trois façons d'attacher une créa
1. Image Hash (asset existant de la library). Chaque image que tu as déjà importée dans un compte publicitaire Meta reçoit un hash hex de 32 caractères. Mets-le dans la colonne Image Hash et la ligne pointe vers l'asset existant - pas de ré-upload, pas de ZIP. Trouve un hash en créant manuellement une annonce avec l'image, en exportant cette annonce en XLSX et en copiant le hash depuis l'export. La Marketing API expose les hashes directement via /act_{account_id}/adimages, mais les sortir via l'UI est la voie no-code.
2. Video ID (asset existant de la library). Même idée pour la vidéo. La Video ID est une longue chaîne numérique que Meta attribue à l'upload dans la video library du compte. Référence-la dans la colonne Video ID et tu évites le ré-upload.
3. Correspondance de nom de fichier (nouvel upload). Mets un nom de fichier (ex. summer_promo_4x5.jpg) dans la colonne Image File Name. Dans la fenêtre Import ads in bulk, l'onglet Images accepte soit les fichiers individuels, soit une archive ZIP unique contenant tous les noms référencés. Les noms doivent correspondre caractère par caractère, extension incluse, en respectant la casse. Les nouvelles vidéos fonctionnent de la même façon via la colonne Video File Name et la section Videos, mais Meta les limite à 10 par import, jusqu'à 10 Mo chacune.
Échecs silencieux courants
- Espace en fin de chaîne dans la cellule Image File Name - Excel conserve des espaces invisibles qui cassent le match. Nettoie les cellules avant de sauvegarder.
- Métadonnées d'archive Mac - zipper sur macOS ajoute des entrées
__MACOSX/et.DS_Store. Meta les ignore généralement, mais certains outils ZIP incluent des resource forks (._filename.jpg) qui ressemblent à des noms de fichier pour le matcher. Utilisezip -Xdans le terminal, ou retire les métadonnées avant l'upload. - Casse non concordante -
Summer_promo.jpgdans le tableur vssummer_promo.jpgsur le disque échoue silencieusement. Standardise en minuscules. - Références mélangées dans une ligne - remplir à la fois Image Hash et Image File Name dans la même ligne produit un comportement indéfini. Choisis-en une par ligne.
Erreurs dures
- Le fichier total dépasse le plafond XLSX de 2 Mo → divise l'import.
- Nom référencé mais non importé → ligne bloquée jusqu'à résolution.
- Image Hash seul provenant d'un autre compte publicitaire → bloqué, parce qu'un hash seul est recherché dans le compte dans lequel tu importes. Le guide des colonnes de Meta documente aussi une forme préfixée par le compte (ID du compte publicitaire source, deux-points, puis le hash) pour les images stockées dans un autre compte.
- Plus de 10 nouvelles vidéos, ou une vidéo de plus de 10 Mo → l'import échoue. Répartis les vidéos sur plusieurs imports ou référence-les par Video ID.
- Video ID encore en traitement → ligne bloquée avec une erreur "video not ready".
Pour des batches répétés avec les mêmes assets, colle les hashes et IDs plutôt que de ré-uploader. Tu contournes ainsi le plafond de 10 vidéos par upload et tu supprimes toute une classe d'erreurs de nom de fichier.
Lire le résumé d'import : erreurs vs warnings
Après l'upload, Meta affiche un résumé de ce qui a été importé, plus les éventuels warnings et erreurs bloquantes. Clique sur "View errors in Excel" (ou "View details") pour voir quelles lignes ont échoué et pourquoi. Les messages ci-dessous sont paraphrasés, car la formulation exacte de Meta change. Deux issues comptent :
Warnings laissent passer l'import. Courants :
- "Placement not available for selected objective" - Meta publie l'annonce mais saute le placement non supporté. Souvent sans risque à ignorer, mais vérifie que le placement voulu n'a pas été silencieusement supprimé.
- "Bid amount unusually low" - informatif seulement, l'enchère est acceptée telle quelle.
- "Field will be ignored for this objective" - tu as rempli une colonne qui ne s'applique pas (ex. Conversion Event dans une campagne TRAFFIC). Inoffensif.
Erreurs bloquent l'import. Courantes et le fix au niveau de la ligne :
- "Invalid combination of objective and optimization goal" - ta colonne Optimization Goal ne correspond pas au Campaign Objective. Ré-exporte un ad set valide avec l'objectif cible pour voir quels optimization goals Meta accepte.
- "Pixel not found" - le Pixel ID de la ligne n'appartient pas à ce compte publicitaire, ou le compte n'a pas la bonne permission d'asset. Confirme dans Business Settings que le pixel est partagé avec le compte.
- "Image hash not found" - hash d'un autre compte, ou l'asset a été supprimé. Soit ré-uploade via Image File Name, soit copie le hash depuis un nouvel export du compte source.
- "Filename not provided" - Image File Name référence un fichier qui n'était pas inclus dans le ZIP joint ou les uploads individuels.
- "Cannot update fields on existing object" - tu essaies de changer un champ immuable (ex. Campaign Objective d'une campagne existante). Vide les colonnes d'ID pour créer une nouvelle campagne, ou rétablis cette cellule à sa valeur d'origine.
- "Ad set conflicts with campaign budget optimization" - la campagne utilise CBO donc Ad Set Daily Budget / Lifetime Budget doivent être vides. Vide ces colonnes sur les lignes en conflit.
- "Special Ad Category restricted targeting" - les campagnes de produits et services financiers, d'emploi et de logement interdisent les champs âge, genre et targeting détaillé. Retire ces colonnes pour ces lignes.
Ré-importe après correction ; les warnings se reportent de l'essai précédent uniquement pour les lignes inchangées.
Transfert de campagnes entre comptes via Export → Ré-import
Meta n'a pas de bouton "copier la campagne vers un autre compte publicitaire". Le pattern export XLSX → vider les IDs → ré-import est le contournement officiel.
Pas à pas
- Exporte la campagne source. Dans l'onglet Ads, coche les annonces que tu veux copier, puis Export > Selected > Export as .xlsx.
- Ouvre le fichier et vide toutes les colonnes d'ID. Supprime chaque valeur de Campaign ID, Ad Set ID et Ad ID. Laisse les en-têtes intacts. Les IDs remplis tenteraient de mettre à jour, pas de créer.
- Échange les identifiants spécifiques au compte. Ils ne traversent pas les comptes :
- Page ID (la colonne Link Object ID) - remplace-le par le Facebook Page ID du compte cible.
- Pixel ID - remplace-le par le pixel du compte cible (ou partage le pixel source via Business Settings si tu veux une attribution partagée).
- Instagram Account ID - remplace-le par l'identité IG du compte cible.
- Custom Audience IDs - remplace-les par des audiences du compte cible. Les Custom Audiences ne se transfèrent pas sauf si elles sont partagées via le partage d'assets de Business Manager.
- Catalog ID - remplace-le si tu utilises DPA / Advantage+ Catalog.
- Échange ou vide le targeting de placement si le compte cible n'a pas accès aux mêmes placements.
- Importe dans le compte cible. Change d'abord de compte publicitaire dans Ads Manager, puis Import Ads in Bulk.
- Ré-uploade ou re-référence les créas. Les image hashes et Video IDs appartiennent au compte dans lequel ils ont été importés. Téléverse les fichiers à nouveau, copie-les via la Media Library de Meta ou, pour les images, utilise le format de hash préfixé par le compte que Meta documente pour les images stockées dans un autre compte.
- Revois le brouillon et publie.
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 gratuitementSans carte bancaire • Essai gratuit de 7 jours
Ce qui ne suit pas
- Données de phase de learning - la nouvelle campagne redémarre le learning de zéro.
- Engagement du post - likes, commentaires et partages restent attachés au post source. Les lignes construites à partir des colonnes créa créent de nouveaux posts. La seule façon de conserver l'engagement est de référencer le post d'origine dans la colonne Story ID, ce qui exige que le compte cible puisse diffuser des annonces pour la même Page.
- Performance historique - les Insights de la campagne source restent dans le compte source.
- Signaux d'optimisation au niveau du compte - le pixel du compte cible n'a que l'historique de conversions qu'il a accumulé indépendamment.
Le pattern de transfert est suffisamment fiable pour être le workflow recommandé pour l'offboarding d'agences white-label. Consulte notre guide Facebook Ads white-label pour le playbook de handover plus large.
Erreurs courantes à éviter
Mélanger Créer vs Mettre à jour
IDs vides créent, IDs remplis mettent à jour. Les mélanger dans un fichier ne pose pas de problème - mais laisser par accident un ID dans une ligne que tu voulais dupliquer écrasera l'annonce d'origine.
Mauvais formats de colonnes
Les colonnes requises changent selon l'objectif. Exporte toujours une annonce fonctionnelle dans l'objectif cible et utilise-la comme baseline.
Noms de fichiers non concordants
Casse, underscores, extensions et espaces en fin de chaîne comptent tous. Standardise en minuscules, sans espaces, et nettoie les cellules avant de sauvegarder.
Ignorer les messages d'erreur
Les erreurs sont au niveau de la ligne et explicites. Lis le numéro de ligne et la colonne, corrige cette cellule, ré-importe.
Dépasser la taille de fichier
La limite XLSX de 2 Mo est atteinte étonnamment vite dans les campagnes Dynamic Creative avec beaucoup de colonnes de variantes. Divise en batches plus petits.
Tenter d'éditer des champs immuables
Campaign Objective, Buying Type et quelques autres champs sont immuables une fois fixés. L'import bloquera la ligne. Crée plutôt une nouvelle campagne avec la nouvelle valeur.
Quand tu as besoin d'un outil d'import massif Facebook
La voie XLSX est excellente jusqu'à environ 20 annonces par semaine. Au-delà, tu passes plus de temps à copier-coller entre le tableur et Ads Manager que le format ne t'en fait gagner - les lookups d'Image Hash, les itérations d'erreurs, le matching de noms de fichiers, le plafond de 2 Mo et la limite de 10 vidéos commencent tous à dominer. Les équipes qui lancent en plus grand volume passent généralement à un outil d'import massif qui publie via la Marketing API de Meta et saute complètement l'étape du tableur.
Ads Uploader est notre outil, alors prends ça en compte. C'est une web app qui lance via l'API de Meta, et elle remplace les étapes tableur ci-dessus comme ceci :
- Pars d'une annonce qui tourne déjà. Choisis une annonce active et tout le build est calqué dessus, avec son audience et les réglages de campagne, d'ad set et d'annonce copiés. Pas de template à exporter et à nettoyer.
- Construis n'importe quelle structure. Nouvelles campagnes, nouveaux ad sets dans des campagnes existantes, ou nouvelles annonces dans des ad sets que tu as déjà.
- Web app, CLI et MCP sur la même base. Les mêmes builds tournent depuis le navigateur, le terminal ou un agent IA, et les actions IA attendent ton approbation avant que quoi que ce soit ne soit lancé.
- Routage automatique des placements. Importe les versions 9:16, 4:5 et 1:1 d'une créa et chacune va vers les placements qui lui conviennent.
- Duplication par Post ID. Duplique des centaines d'annonces depuis leurs posts existants d'un coup, pour que les copies gardent leurs likes et commentaires.
- Tarif par siège. $59/mois pour un utilisateur et des plans Team par siège, sans pourcentage des dépenses publicitaires et sans limite de comptes publicitaires.
Pour une comparaison côte à côte des autres options, consulte notre comparatif des launchers d'annonces en masse.
Questions fréquentes
L'import massif Facebook est-il gratuit ?
Oui. L'import massif natif de Meta Ads Manager (Import & Export) est gratuit pour chaque annonceur. Il est intégré à Ads Manager sur desktop.
Combien d'annonces puis-je importer à la fois ?
La limite pratique est de plusieurs centaines d'annonces par fichier en raison du plafond de 2 Mo. Pour des volumes plus importants, répartis ton travail sur plusieurs imports.
Quel est le nom exact de la colonne pour le texte principal de l'annonce dans le template XLSX ?
Body. Le template utilise Body pour le texte principal, Title pour le titre, Link Description pour le texte sous le titre, Display Link pour l'URL raccourcie et Link Object ID pour ta Page Facebook. Les noms de colonnes diffèrent des libellés affichés dans l'UI Ads Manager. Vérifie toujours le template exporté, pas les libellés in-app.
Pourquoi mon import XLSX échoue-t-il sans cesse à cause du nom de fichier ?
La colonne Image File Name doit correspondre au nom du fichier importé caractère par caractère, extension et casse comprises. Un seul underscore, un espace en fin de chaîne ou une différence de majuscule rompt silencieusement le lien entre la ligne du tableur et l'asset. Importe les assets dans un ZIP avec les noms exactement référencés, ou colle l'Image Hash / la Video ID au lieu d'utiliser des noms de fichier.
Ai-je besoin d'un template XLSX différent pour les campagnes conversion vs trafic ?
Tu utilises le même template, mais les colonnes requises diffèrent selon l'objectif. Les campagnes de conversion ont besoin des colonnes Pixel ID, Conversion Event et Conversion Window remplies. Les objectifs trafic et engagement peuvent les laisser vides. Le workflow le plus propre consiste à créer d'abord un ad set manuellement avec l'objectif choisi, puis à l'exporter comme template de départ pour que toutes les colonnes requises soient pré-remplies.
Puis-je modifier des annonces existantes via l'import massif ?
Oui. Exporte les annonces à modifier, édite les cellules dans le tableur, laisse les valeurs Ad ID / Ad Set ID / Campaign ID intactes et ré-importe. Les IDs remplis indiquent à Meta qu'il faut mettre à jour ; les IDs vides indiquent qu'il faut créer.
Puis-je conserver l'engagement du Post ID lors de la ré-importation d'une annonce ?
Seulement si la ligne pointe vers le post d'origine. Le template a une colonne Story ID : si tu la remplis, Ads Manager diffuse l'annonce depuis ce post de Page existant et ignore les colonnes créa de cette ligne. Les lignes construites à partir de Title, Body et d'une image ou vidéo créent un nouveau post, donc likes, commentaires et partages repartent à zéro. Consulte notre guide du Facebook Post ID pour savoir comment trouver les post IDs.
Puis-je importer des images et des vidéos en masse ?
Oui. Tu peux soit référencer des assets existants de la library via leur Image Hash ou Video ID, soit ajouter de nouveaux fichiers pendant l'import. Les images s'ajoutent une par une ou dans un fichier ZIP, avec des noms qui correspondent à la colonne Image File Name. Les vidéos vont dans la section Videos et sont limitées à 10 par import, jusqu'à 10 Mo chacune.
Puis-je dupliquer des campagnes entre différents comptes publicitaires ?
Oui. Exporte depuis le compte source, vide toutes les colonnes d'ID, remplace les valeurs spécifiques au compte (Page ID, Pixel ID, Custom Audience IDs, Instagram Account ID), puis importe dans le compte cible. L'historique de performance et l'engagement du post ne suivent pas la copie.
Que se passe-t-il si je rencontre des erreurs pendant l'import ?
Meta renvoie des messages d'erreur au niveau de la ligne avec la colonne fautive. Corrige les cellules signalées dans le résumé, enregistre la XLSX et ré-importe. Les warnings laissent passer l'import ; les erreurs le bloquent jusqu'à résolution.
Conclusion
L'éditeur massif XLSX natif est le bon outil pour les reconstructions par template, les éditions massives, les transferts entre comptes et tout workflow où la revue offline et le versioning comptent. Le glossaire des colonnes, la mécanique des image hashes et les patterns du résumé d'erreurs ci-dessus sont la référence vers laquelle tu reviendras chaque fois que le template se comporte de façon inattendue.
Si ton volume hebdomadaire de lancements a dépassé le workflow tableur, le comparatif des launchers massifs basés sur la Marketing API se trouve dans un guide séparé. Sinon, l'éditeur massif natif reste gratuit, supporté par Meta et pleinement suffisant pour tout ce pour quoi il a été conçu.
