Scripts de suivi du budget Performance Max : calculs, règles et limites

En bref

Dans Google Ads, un script peut surveiller la dépense de vos campagnes Performance Max, proposer un nouveau budget ou le modifier lui-même. Il ne peut pas fixer la part donnée à YouTube ou à la recherche : Google la décide. Commencez par une simple alerte, et n’autorisez les modifications qu’après des tests.

Script de suivi du budget PMax
C’est un petit programme en JavaScript que l’on lance depuis votre compte Google Ads. Il lit les dépenses et les résultats de vos campagnes, envoie une alerte, propose un budget ou le modifie lui-même. Comme tout logiciel, il demande un responsable, une autorisation d’accès, une surveillance et de l’entretien.

Ce qu’un script peut faire, et ce qu’il ne peut pas

Les campagnes Performance Max diffusent vos textes, images et produits sur la recherche, YouTube, Gmail et des sites partenaires, là où Google le décide. Répartir l’argent entre ces campagnes, ou entre elles et vos annonces de recherche classiques, dépend de vos marges et de vos objectifs. Pour ajuster une valeur de conversion selon le client, la zone ou l’appareil, on utilise les règles de valeur client ; le budget, lui, fixe combien vous y consacrez. Le script applique vos hypothèses telles quelles, justes ou fausses.

Une limite passe souvent inaperçue : vous ne répartissez pas le budget d’une campagne Performance Max entre ses canaux. Google répartit lui-même la diffusion entre la recherche et ses partenaires, le Display, YouTube, Discover, Gmail et Maps, selon les objectifs et les cibles de la campagne. Les annonces tirées de votre catalogue produits ne forment pas non plus un poste de budget que le code peut plafonner. Le script agit sur le montant de la campagne, pas sur une part par canal.

Le script peut aller plus ou moins loin, du plus prudent au plus risqué.

Sur un budget sensible ou des données instables, je commence par l’alerte seule. Sur un cas répétable, encadré par des limites et qu’on sait annuler, une modification automatique peut se défendre.

Un script vous évite d’héberger un programme sur un serveur, pas de le surveiller. Il lui faut un responsable, une autorisation d’accès et un journal des actions. Il lui faut aussi une alerte en cas de panne et une façon de reprendre après une erreur. Surtout, il agit toujours au nom de la personne qui l’a autorisé.

Ce que le script doit surveiller

Chaque alerte contient le contexte qui permet de la comprendre ; sinon, vous recevez un e-mail sans savoir quoi en faire.

  1. Le rythme de dépense. Le script compare la dépense cumulée à celle attendue au même jour et à la même heure, dans le fuseau horaire du compte. Joignez-y le type de budget, ses changements récents, l’état « limitée par le budget », les annonces refusées et les problèmes de paiement. Une panne de la mesure sur le site doit aussi déclencher l’alerte. Une campagne qui dépense peu n’a pas forcément un budget trop bas. L’objectif de rentabilité est peut-être trop exigeant, ou la demande trop faible. La cause peut aussi être une période d’apprentissage de Google, un catalogue indisponible ou une campagne qui ne diffuse pas.
  2. Les résultats, une fois complets. Les ventes, appels et formulaires que Google Ads compte comme conversions remontent parfois avec retard. Jugez le coût par conversion et le ROAS une fois ce délai passé, sur des périodes semblables en jours, en saison et en réglages. Une moyenne sur plusieurs jours n’efface pas un changement de mesure.
  3. Les annonces sur votre nom. Le script peut croiser la dépense de Performance Max, le rapport par canal et vos annonces sur les recherches de votre marque. Si ces dernières baissent, cela ne prouve pas que Performance Max les remplace. Cela justifie une vérification, puis éventuellement un test qui distingue une coïncidence d’un vrai transfert du trafic de vos annonces de recherche vers Performance Max.

Une alerte utile donne la valeur observée, la valeur attendue et l’écart. Elle indique aussi de quand datent les données et ce qui a changé en même temps. Google conseille de juger Performance Max sur une période plus longue qu’une journée. Parmi les causes de variation, il cite la mesure des conversions, les réglages modifiés et le fonctionnement même des enchères. Le rapport par canal ajoute des diagnostics sur la diffusion et le catalogue.

Avant de laisser le script changer un budget

Vérifiez d’abord ce que fait le script si une donnée arrive en retard, si une campagne renvoie une erreur ou s’il tourne deux fois.

Le budget quotidien est le montant moyen que vous prévoyez de dépenser par jour. Pour la plupart des campagnes, Google peut dépenser jusqu’au double un jour donné. Sur le mois, il plafonne normalement la dépense à 30,4 fois ce budget, s’il reste inchangé.

Le jour où vous modifiez le budget, la limite du jour repose sur le montant le plus élevé saisi ce jour-là. Baisser juste après une hausse ne remet donc pas le compteur à zéro. Pour le reste du mois, Google recalcule la limite avec la dépense déjà réalisée, le dernier budget et les jours restants.

Le budget total suit une autre logique. Pour Performance Max, il se choisit seulement à la création d’une campagne datée, sur 3 à 90 jours. Il plafonne la dépense de toute la période, sans limite par jour. Le type de budget, quotidien ou total, ne se change plus après la création.

Le scénario qui dérègle les budgets
Le script baisse la campagne A, puis augmente la campagne B. La baisse réussit, la hausse échoue, et une relance refait la baisse. Le problème vient d’une exécution à moitié faite, répétée et jamais vérifiée.

Pour déplacer de l’argent entre campagnes, calculez tous les montants avant de modifier quoi que ce soit. Leur somme doit respecter le budget global validé. Chaque campagne reçoit un minimum, un maximum et une variation maximale. Le tout part ensuite en un seul lot, qui passe en entier ou pas du tout.

Je n’autorise l’écriture que si la mesure fonctionne, que les conversions de la période sont arrivées et que rien d’important n’a changé récemment. La campagne doit aussi pouvoir diffuser, sans alerte de paiement ou de règles publicitaires. Chaque lot porte un numéro et ne produit pas deux fois le même effet s’il est relancé. Il note l’avant et l’après, prévient en cas d’échec et dispose d’un bouton d’arrêt. Pour garder le contrôle de l’automatisation, vérifiez ces protections dans les tests.

Alerte, proposition ou modification : que choisir ?

Partez du coût d’une mauvaise décision. Si un écart peut attendre votre vérification, une alerte suffit. Si vous avez trop de campagnes pour refaire le calcul, demandez une proposition chiffrée. Si la réaction doit être rapide mais la situation ambiguë, ajoutez une validation humaine. La modification sans validation se justifie seulement si les conditions d’action et d’arrêt sont testées, avec des montants plafonnés. Restaurer un budget ne récupère pas l’argent déjà dépensé.

Avant la moindre ligne de code, écrivez le cahier des charges. Il sert aussi de consigne si vous faites écrire le script par une IA.

Lancez ensuite le script en mode simulation : il calcule et note ce qu’il aurait fait, sans rien modifier. L’écriture vient après des tests qu’on peut refaire, pas après une durée d’observation choisie au hasard. Si personne ne sait expliquer le calcul et revenir à l’état précédent, restez au stade de la proposition.

Mettre en place le script, étape par étape

Les quatre étapes d’installation

  1. Créer le script, nommer un responsable. Dans Google Ads, le script se crée depuis Outils, puis Actions groupées et Scripts. Désignez son responsable et notez les comptes couverts. Le premier aperçu ou lancement demande une autorisation d’accès, qui n’élargit pas vos droits dans Google Ads. Avec l’accès en lecture seule, le script consulte ; avec les accès Standard et Administrateur, il peut modifier. Si son auteur perd l’accès au compte, le script s’arrête jusqu’à une nouvelle autorisation.
  2. Lire avant d’écrire. Le script lit le type et le montant du budget des campagnes visées. Il lit ensuite la dépense, les conversions et leur valeur, par jour et par heure. Il calcule le coût par conversion et le ROAS en gérant les divisions par zéro et les données absentes.
  3. Tester à blanc. Lancez l’Aperçu, puis lisez le journal des changements et les erreurs. L’Aperçu bloque les modifications dans Google Ads, mais pas les autres services : un e-mail peut partir et une feuille Google peut changer. Ensuite, laissez tourner le mode simulation sur des données réelles.
  4. Déployer comme un service. Fixez la fréquence, le fuseau horaire et les destinataires. Il faut aussi une alerte d’échec, un verrou contre deux lancements simultanés et un arrêt d’urgence. N’activez l’écriture qu’après validation du mode simulation et de la restauration des réglages.

Avant toute écriture, testez le calcul sur des données figées, avec les cas qui le mettent en défaut.

À quelle fréquence lancer le script ?

Partez de la perte que vous pouvez accepter, de la vitesse de dépense, du retard des statistiques et de votre temps de réaction. Une alerte toutes les heures ne protège rien si personne ne la lit avant le lendemain.

Question Calcul à faire Effet sur la fréquence
Quelle dépense à risque pouvez-vous accepter avant d’agir ? Dépense à risque acceptable divisée par la dépense horaire la plus forte attendue Lancer le script plus souvent que ce délai, temps de réaction compris
À quoi ressemble une journée normale à cette heure ? Dépense cumulée des mêmes jours de semaine, hors incidents et promotions Comparer à cette courbe, pas au budget d’une journée inachevée
Les données seront-elles fraîches et lues ? Retard des statistiques, présence humaine, lassitude face aux alertes Espacer les lancements si rien de nouveau ne peut arriver entre deux

L’écart se calcule ainsi : écart = dépense cumulée observée / dépense cumulée attendue - 1. Le modèle officiel de détection d’anomalies de Google compare lui aussi l’heure en cours aux mêmes jours de semaine passés. Il prévient que les statistiques peuvent avoir jusqu’à environ trois heures de retard. La courbe attendue tient donc compte de ce retard, de la saison et des changements de budget. Google limite par ailleurs à 30 minutes l’exécution d’un script sur un compte ; s’il est coupé, les changements déjà faits restent appliqués.

Ce que la personne qui code doit savoir

Cette partie s’adresse à la personne qui écrira le script : transmettez-la telle quelle.

AdsApp.performanceMaxCampaigns() donne l’état, les dates, la stratégie d’enchères, les statistiques et le budget des campagnes. Pour une lecture plus fine, AdsApp.search() lance une requête dans le langage de Google Ads (GAQL). Les diagnostics du catalogue et les résultats par produit relèvent d’autres ressources : ne les déduisez pas de la dépense de la campagne.

Sur un budget quotidien, setAmount() change le montant dans la devise du compte. getType() distingue DAILY de TOTAL, et getAmount() renvoie zéro pour un budget total. Une campagne Performance Max ne peut pas partager son budget. Réallouer entre deux campagnes revient donc à modifier deux budgets distincts.

Sur un budget total, l’objet propose getTotalAmount() et setTotalAmount(). L’API Google Ads accepte ce budget pour Performance Max. La référence des scripts limite pourtant encore setTotalAmount() aux campagnes vidéo. Testez en Aperçu dans le compte visé et traitez toute erreur comme bloquante.

AdsApp.mutateAll envoie un lot de modifications, avec l’option partialFailure à true par défaut. Certaines opérations peuvent alors réussir pendant que d’autres échouent. Pour un lot tout ou rien, passez-la à false ; le script doit ensuite contrôler chaque résultat et relire les budgets écrits. Pendant l’Aperçu, AdsApp.getExecutionInfo().isPreview() permet de bloquer les e-mails et les écritures dans une feuille.

Les appels search, mutate et mutateAll donnent accès à la plupart des opérations de l’API, sans clé de développeur. Les scripts gèrent aussi les groupes de composants, certains éléments d’annonce et plusieurs ciblages ; ils peuvent même créer une campagne. Chaque ressource garde ses contraintes.

Ces appels agissent sur le montant global d’une campagne Performance Max, pas sur une répartition comme « 40 % sur YouTube, 60 % sur le Réseau de Recherche ». Ils ne mesurent pas non plus ce que la campagne rapporte en plus, ce qui demande un test, et ne suppriment pas le retard des statistiques.

Script, règle automatique ou API : que choisir ?

Outil Ce qu’il fait bien Sa limite
Rapports de Google Ads Budget, prévisions et rapport par canal, sans code Aucun calcul sur mesure, ni modification coordonnée entre plusieurs campagnes
Règle automatique Combiner des conditions, envoyer un e-mail, changer un budget encadré Se lance jusqu’à deux heures après l’horaire prévu, sans priorité entre règles
Script Google Ads Courbe horaire, calculs multi-campagnes, lot tout ou rien Limite de 30 minutes, tests et entretien
API Google Ads Automatiser à grande échelle, avec stockage et supervision dans votre propre système Projet Google Cloud, autorisations, hébergement, mises à jour et sécurité à gérer

Une règle automatique peut combiner plusieurs conditions et actions, et Google recommande des bornes minimales et maximales. Deux règles visant les mêmes éléments n’ont en revanche aucun ordre de priorité. Pour Performance Max, on crée une règle depuis l’onglet Groupes de composants ou depuis Actions groupées. Elle agit sur son groupe, mais ne répartit pas le budget entre canaux.

Pour une simple alerte par e-mail sur un seuil, la règle suffit. Passez au script pour une courbe horaire propre au compte, un calcul de marge ou un transfert de budget tout ou rien. L’API se justifie pour relier plusieurs systèmes, faire valider hors de Google Ads ou tout surveiller d’un seul endroit. Elle n’est pas plus sûre qu’un script bien conçu, et changer d’outil ne corrige pas un indicateur mal défini.

Faire écrire le script par une IA

Un outil d’IA peut produire une première version du script. Il ne remplace pas la relecture d’une personne qui comprend le JavaScript, les autorisations et l’effet de chaque écriture. Donnez-lui le cahier des charges et les protections décrits plus haut : limites, lot tout ou rien, journal et bouton d’arrêt. Exigez une alerte ou une proposition avant toute modification. Chaque message doit citer la campagne, les valeurs observée et attendue, l’écart, le motif et le numéro du lot.

Faites ensuite passer au code les tests listés plus haut. Laissez-le en mode simulation jusqu’à ce que ses propositions soient expliquées et comparées aux décisions humaines. Un code produit par une IA peut être correct sur la forme et dangereux pour votre budget. Avant de le planifier, nommez la personne qui en répond et celle qui valide une écriture.

Sources officielles, vérifiées le 26 juillet 2026 et en septembre 2026

Questions fréquentes

Quel seuil d’alerte choisir pour le rythme de dépense ?
Le bon seuil dépend de votre compte. Comparez la dépense cumulée à celle des mêmes jours et des mêmes heures, dans le fuseau du compte, en tenant compte du retard des statistiques et des changements récents. Le seuil découle ensuite de la perte que vous acceptez et du temps qu’il vous faut pour réagir.
Un seul script peut-il surveiller toutes mes campagnes Performance Max ?
Oui, techniquement. Mais un script est coupé au bout de 30 minutes, et chaque service appelé a ses propres limites d’utilisation. Si l’échec d’un lot peut toucher trop de campagnes à la fois, séparez les traitements et prévoyez des points de reprise.
Budget quotidien ou budget total : lequel choisir pour Performance Max ?
Le budget total ne se choisit qu’à la création d’une nouvelle campagne datée, sur 3 à 90 jours. Il convient à une opération limitée dans le temps : Google répartit la dépense sur toute la période, sans limite par jour. Pour une campagne permanente, gardez le budget quotidien, car le type ne se change plus après la création.
Si mes annonces sur mon nom baissent, Performance Max les remplace-t-elle ?
Pas forcément. Cette baisse peut aussi venir du budget, des enchères, de la saison, de la façon d’attribuer les ventes ou d’un changement de mesure. Vérifiez ces pistes, puis organisez un test avant de toucher au budget sur ce seul indice.
L’API Google Ads est-elle plus sûre qu’un script ?
Non. Les scripts lisent déjà les données et modifient les budgets avec les autorisations du compte. L’API apporte surtout votre propre système de stockage et de supervision. Dans les deux cas, la sécurité vient des droits, des tests, des limites, des journaux et du retour en arrière, pas du nom de l’outil.
Vincent Duquesne, consultant Google Ads
Vincent Duquesne
Expert Google Ads Certifié depuis 2011 : j’ai audité et restructuré des centaines de comptes dans des dizaines de thématiques différentes. +20M€ gérés.
Google Partner Premier 2026

Vous avez besoin d’un partenaire Google Ads ?

Je vous accompagne dans la mise en place, le suivi et l’optimisation de vos campagnes Google Ads.

Réserver un appel