

Ce tutoriel décrit un script qui audite l'activité des objectifs de conversion sur tous les comptes de votre Centre multicompte. Il enregistre les résultats dans une feuille Google Sheets, identifie l'état de chaque objectif, attribue un code couleur à chaque statut et envoie un résumé par e-mail uniquement en cas de problème.
Il n’y a pas d’outils inutiles ni de tableaux de bord tiers, juste un contrôle brut et une visibilité complète.

Ce script audite chaque compte Google Ads de votre compte multicompte et évalue l'état de chaque objectif de conversion sur une période définie. Au lieu de deviner quels objectifs sont actifs ou non, ce système vous fournit un aperçu en temps réel dans une feuille de calcul Google et vous alerte uniquement lorsqu'un élément requiert votre attention.
Il y aura deux notifications par e-mail : une pour les comptes nécessitant une attention particulière et l'autre pour tous les comptes valides.
Exemple:

Messages:
Compris, votre script a besoin deux sorties de courrier électronique distinctes :
✅ E-mail « Tout va bien » (si aucun problème sont trouvés)
⚠️ E-mail « Nécessite une attention » (si n'importe lequel les objectifs sont inactifs, manquants ou peu performants)
Voici exactement à quoi devraient ressembler les deux versions, en utilisant vos exemples de données et votre logique actuelle :
Message n°1
Tous les objectifs de conversion surveillés signalent l'activité au cours des 60 derniers jours.
Aucun problème n'a été détecté dans aucun compte.
Voir le rapport complet :
https://docs.google.com/spreadsheets/d/yoursheetid
Message n°2
Les objectifs de conversion suivants peuvent nécessiter un examen (par exemple, aucune conversion récente ou inactif) :
Bright Widgets Inc (123-456-789) - Soumission du formulaire de contact (attention requise)
Acme Corp (987-654-321) - Planifier un appel (inactif)
Acme Corp (987-654-321) - Inscription à l'essai gratuit (attention requise)
Rocket Leads (456-789-123) - (configuré, aucune activité) (Aucune conversion récente)
Groupe de test bêta (321-654-987) - (non défini) (inactif)
Zebra Analytics (999-111-222) - Téléchargement du livre blanc (attention requise)
Voir le rapport complet :
https://docs.google.com/spreadsheets/d/yoursheetid
Avant de déployer le script, assurez-vous que votre environnement est correctement configuré. Ce script est conçu pour s'exécuter dans un contexte MCC Google Ads afin d'écrire des données et d'envoyer des alertes.
Il s'agit du script complet et non modifié. Tous les commentaires, la mise en forme et la logique sont identiques à l'original. Ne le modifiez pas si vous prévoyez de suivre la décomposition plus loin dans ce tutoriel.
========== CONFIGURATION ========== const SHEET_ID = '1PvpW3eUl5fqRwabBg0P7D8LKzW83MOTVX1KDBMB3ipA' ; const LOOKBACK_DAYS = 60 ; const EXCLUDED_ACCOUNT_IDS = [ '000-000-000', '000-000-000', '000-000-000' ]; const RECIPIENT_EMAILS = '[email protected]' ; // =================================== fonction main() { feuille de const = TableurApp.openById(SHEET_ID).getSheets()[0] ; sheet.clear() ; sheet.appendRow(['Nom du compte', 'ID du compte', 'Nom de l’objectif', 'Conversions', 'Statut', 'Plage de dates']) ; const startDate = getDateXDaysAgo(LOOKBACK_DAYS) ; const finDateT= getTodayDate() ; const dateRangeLabel = 'Derniers jours ${LOOKBACK_DAYS} (${startDate} to ${endDate})' ; const accounts = MccApp.accounts().get() ; const signalé = [] ; soit rowIndex = 2 ; tandis que (accounts.hasNext()) { compte const = comptes.suivant() ; const accountId = account.getCustomerId() ; const accountName = account.getName() ; Logger.log(' ⏳ Compte courant : ${compteNom} (${accountId})') ; if (EXCLUDED_ACCOUNT_IDS.includes(accountId)) { Logger.log(« 🚫 Ignorer le compte exclu : ${compteNom} (${accountId})') ; continuer ; } try { MccApp.select (compte) ; requête const = ' SELECT ConversionTypeName, Conversions DE CAMPAIGN_PERFORMANCE_REPORT PENDANT ${dateStart},${dateEndDate} `; const report = AdsApp.report(query) ; lignes const = rapport.lignes() ; const goalMap = {} ; tandis que (rows.hasNext()) { const ligne = lignes.suivant() ; const butNom = ligne['NomDeTypeConversion'] || « (non défini) » ; const conversions = parseFloat(row['Conversions']) || 0; if ( !goalMap[nomObjectif]) { butMap[butNom] = 0 ; } butMap[butNom] += transformations ; } si (Object.keys(goalMap).longueur === 0) { Logger.log(' ⚠️ Aucune donnée de conversion retournée pour le compte : ${compteName} (${accountId})') ; statut de const = « Aucune conversion récente » ; sheet.appendRow([ compteNom, accountId, '(configuré, aucune activité)', 0, Statut, dateRangeLabel ]); setStatusColumnColor(sheet, rowIndex, status) ; flagged.push ('${nomCompte} (${compteId}) - aucun objectif de conversion déclenché') ; rowIndex++ ; continuer ; } pour (const [nombutObjectif, ConversionsTotales] de Object.entries(goalMap)) { let statut ; if (totalConversions > 0) { statut = « Actif » ; } sinon si (namePoint.toLowerCase().includes('test') || namebutName === '(non défini)') { statut = « Inactif » ; } else { statut = « Besoin d’attention » ; } sheet.appendRow([ compteNom, accountId, butName, totalConversions, Statut, dateRangeLabel ]); setStatusColumnColor(sheet, rowIndex, status) ; if (statut !== 'Actif') { flagged.push('${compteNom} (${accountId}) - ${NomObjectif} (${statut})') ; } rowIndex++ ; } } attraper (e) { Logger.log(' ❌ Compte de traitement des erreurs : ${accountName} (${accountId}) - ${e.message}') ; } } if (signalé.longueur > 0) { sujet const = « ⚠️ Objectifs de conversion à prendre en compte » ; corps de const = « Les objectifs de conversion suivants peuvent nécessiter une révision (par exemple, aucune conversion récente ou inactif) :\n\n » + signalé.join('\n') + '\n\nVoir le rapport complet :\nhttps://docs.google.com/spreadsheets/d/${SHEET_ID}' ; MailApp.sendEmail(RECIPIENT_EMAILS, sujet, corps) ; } else { Logger.log(« ✅ Tous les buts sont des conversions rapportées. » ; } } 🎨 Appliquez la couleur uniquement à la colonne « Statut » (Colonne E) function setStatusColumnColor(sheet, row, status) { plage const = sheet.getRange(ligne, 5) ; Colonne E switch (statut) { cas « Actif » : range.setBackground('#d9ead3') ; Vert clair pause ; cas « Inactif » : range.setBackground('#f4cccc') ; Rouge clair pause ; Cas « Nécessite une attention » : range.setBackground('#fff2cc') ; Jaune clair pause ; Cas « Pas de conversions récentes » : range.setBackground('#e6e6fa') ; Violet clair pause ; Par défaut : range.setBackground(null) ; } } 🕒 Aides fonction getTodayDate() { date de const = nouvelle date() ; return Utilities.formatDate(date, AdsApp.currentAccount().getTimeZone(), 'yyyyMMdd') ; } function getDateXDaysAgo(days) { date de const = nouvelle date() ; date.setDate(date.getDate() - jours) ; return Utilities.formatDate(date, AdsApp.currentAccount().getTimeZone(), 'yyyyMMdd') ; }
Cette procédure pas à pas explique comment configurer le vérificateur d'objectifs de conversion pour votre compte MCC Google Ads. Suivez chaque étape pour activer le système, écrire dans Google Sheets et envoyer des alertes en cas de problème.
Commencez par configurer la destination de sortie.
Vous déploierez ce script dans votre compte MCC.
La première fois que vous utilisez le script, vous devez l'autoriser.
Vous devez terminer cette étape sinon le script ne pourra pas s'exécuter.
Dans le script, vérifiez et modifiez les éléments suivants :
Vous pouvez laisser le reste du script exactement tel quel.
Exécutez-le une fois manuellement pour vous assurer que tout fonctionne.
Pour rendre cette opération automatique, configurez-la pour qu'elle s'exécute selon un calendrier récurrent.
Le script s'exécutera automatiquement et vous avertira uniquement lorsque quelque chose ne va pas.
Lors de l'exécution du script, tous les objectifs de conversion sont vérifiés. Si certains sont inactifs ou ne se déclenchent pas, vous recevrez un e-mail.
Ce script n'est pas un simple vidage de données. Il surveille chaque objectif de conversion de votre Centre multicompte Google Ads. Vous êtes alerté en cas de problème, de blocage ou d'interruption discrète du suivi. Lorsque tout va bien, le silence règne.
Il vérifie chaque compte que vous gérez, signale les objectifs inactifs ou sous-performants et vous envoie un rapport filtré et clair directement dans votre boîte de réception. Google Sheets vous offre une vue en direct de l'état de vos objectifs par compte, nom d'objectif et volume de conversion, avec des repères visuels intégrés.
Vous ne fouillez pas dans les interfaces. Vous n'attendez pas la fin du mois pour réaliser que vous avez été aveugle. Vous maîtrisez la situation avant que cela ne devienne un problème.
Consultez des articles similaires :
Consultez des articles similaires :
Si vous gérez plusieurs comptes, ne manquez pas notre guide sur suivi des problèmes GA4 à partir de nombreuses propriétés ou exportation termes de recherche réels les plus performants avec un script léger pour affiner votre ciblage.
Fatigué de deviner si votre suivi fonctionne ? Vous recherchez une équipe qui crée des systèmes plutôt que de simples rapports ?
Bright Vessel ne se contente pas de gérer Google Ads ; nous optimisons la visibilité des performances à grande échelle. Que vous ayez besoin d'aide pour déployer ce script, l'intégrer à une solution d'automatisation plus complète ou créer une couche d'analyse personnalisée, nous sommes là pour vous.
Parlez à l’équipe qui construit ce que les autres agences falsifient.

"*" indique les champs obligatoires

"*" indique les champs obligatoires

"*" indique les champs obligatoires