Google Ads Scripts beheren

Wanneer je eenzelfde script voor meerdere accounts gebruikt, is het handig om deze op één plek te beheren. Wij leggen uit hoe je dit het beste kan doen.

Start nu!
Google Get started!

Heb jij dezelfde Google Ads scripts in meerdere accounts draaien? Dan weet je net als ik dat een kleine wijziging of verbetering in je script tot veel werk leidt. Je moet deze wijziging namelijk in alle scripts verwerken. Dat kan veel makkelijker!

Difficulty

Category
Tips & Trucs

Tags

Nu komt er, natuurlijk, gelijk een vraag in je op: “Waarom gebruik je geen MCC-script?” Nou, de gebruikte scripts maken veelal gebruik van variabelen die account-specifiek zijn. Die wil ik dus ook per account kunnen instellen.

“Ja, maar…”, hoor ik je nu denken, “…dan gebruik je toch een MCC-script in combinatie met een Google Sheet, waarin je deze variabelen per account definieert?”. Ja, dat is een goed plan voor verschillende scripts, maar het probleem is dat je snel tegen een time-out aanloopt, omdat het script maximaal 30 minuten mag draaien.

Universele oplossing

Om alles overzichtelijk te houden en het beheer van de Google Ads scripts zo eenvoudig mogelijk te maken, hebben we bij Increase voor een andere oplossing gekozen. We beheren onze scripts nu op Google Drive, waardoor we een centrale plek hebben voor de scripts en een wijziging in dit script doorwerkt in alle accounts die van het script gebruikmaken.

Het aanmaken van .js-bestanden op Google Drive wordt gemakkelijk door de app ‘Javascript Editey’ te installeren als addon. Hiermee kan je nieuwe Javascript-bestanden aanmaken en deze bewerken. Het grote gemak hiervan is het gebruikersbeheer. Je kan bepalen wie er toegang hebben tot de scripts, zodat het niet gebeurd dat iemand het script per ongeluk kapot maakt.

Aanroepen van externe scripts

Bij het vervangen van een script in een Google Ads account voor een extern script, maken we twee nieuwe scripts aan op Google Drive. Eén met de inhoud van de function main (verplicht in het script) en een ander script met de overige functies uit het script. We kunnen deze scripts gebruiken door de inhoud ervan te laden met de DriveApp en uit te voeren middels de eval()-functie. Wanneer je een nieuw JS-bestand aanmaakt in Google Drive, gebruik dan het laatste deel van de URL als ID voor in het script.

En dit werkt zoals gehoopt. Je kan variabelen gebruiken tussen verschillende scripts en de online Scripts-editor. Mogelijk is de uitvoering van je script wel wat trager dan direct vanuit Google Ads, maar in ons geval weegt dit niet op tegen het gemak van het beheer.

Beveiliging van je script

Om ervoor te zorgen dat onze scripts niet klakkeloos overgenomen worden door anderen, beschermen we deze. In een apart .js-bestand op Google Drive hebben we een array aangemaakt, met daarin de account-ID’s waarop onze scripts mogen draaien. Wanneer iemand dan onze code letterlijk overneemt, kan die niet in een ander account gebruikt worden, omdat het script controleert welk account gebruik probeert te maken van het script.

Bij voorkeur wil je de geschreven code uit het Google Ads Script geheimhouden, zodat er niemand mee aan de haal gaat. Maar daarvoor is bovenstaande uiteenzetting geen oplossing. Met een beetje moeite kan je uiteindelijk de achterliggende code wel achterhalen. Hoewel het niet het doel is van deze werkwijze, hebben we het overnemen van onze scripts wel een beetje moeilijker gemaakt.

The script
// Copyright 2019. Increase BV. All Rights Reserved.
//
// Created By: Tibbe van Asten
// for Increase B.V.
//
////////////////////////////////////////////////////////////////////

var config = {
 
  LOG : true,
  
  SCRIPT_MAIN : 'XXX',
  SCRIPT_OTHER : 'YYY',
  
}

////////////////////////////////////////////////////////////////////

function main() {
  
    var accountId = AdsApp.currentAccount().getCustomerId();

    // Load & execute external script by ID
    var main = DriveApp.getFileById(config.SCRIPT_MAIN).getBlob().getDataAsString();
    eval(main);
  
} // function main()

    // Load & execute external script by ID
    var other = DriveApp.getFileById(config.SCRIPT_OTHER).getBlob().getDataAsString();
    eval(other);
Show whole script!
The Experts
Tibbe van Asten Head of PPC @ Increase
Nils Rooijmans Water Cooler Topics
Martijn Kraan Freelance PPC Specialist
Bas Baudoin Teamlead SEA @ Happy Leads
How about you? JOIN US!
Sharing Knowledge
Caring

Kennis delen

Adsscripts.com staat voor het delen van kennis. In de huidige markt houden SEA-specialisten de kennis en ervaring graag voor zich. Wij zijn er van overtuigd dat het delen van kennis ervoor kan zorgen dat iedereen beter wordt in haar of zijn werk. Daarom lopen wij hier graag in voorop, door onze kennis over scripts te delen met iedereen.

Wil jij ook graag een bijdrage leveren? Wij staan open voor nieuwe ideeën en feedback op alles wat je op Adsscripts.com vindt.

Neem contact op

Training &
Workshop
Neem contact op!
Adsscripts Training & Workshop