Pri správe online kampaní vás aj bežné činnosti stoja veľa času. V prípade, že si tento čas platíte, vás to, samozrejme, stojí aj veľa peňazí. Pritom veľkú časť týchto činností je možné automatizovať. Pre PPC špecialistu to neznamená, že bude mať o hodinu dlhší obed, ale že môže venovať viac času testovaniu, analýze a zlepšovaniu kampane na úkor bežných činností.
Okrem automatických pravidiel v systéme Google AdWords môžete na automatizáciu ručných zásahov do kampane využiť aj vlastné skripty, ktorých možnosti sú takmer neobmedzené. Ak je pre vás, rovnako ako pre mňa, obmedzením neznalosť JavaScriptu, môžete využiť šikovnosť iných a vybrať si z množstva hotových skriptov na internete.
My vám predstavíme také AdWords skripty, ktoré používame v každej kampani, pretože:
- ich považujeme za naozaj užitočné,
- robia veci, ktoré by mal každý PPC špecialista robiť pravidelne,
- dajú sa do kampane jednoducho nasadiť,
- fungujú!… a to vonkoncom nie je samozrejmosť.
V nasledujúcich riadkoch sa dozviete, ktoré skripty to sú, a prečo a ako ich nasadiť.
Ale ešte predtým si prečítajte niekoľko slov o tom…
Ako sa skripty nasadzujú?
Skripty v rozhraní Google AdWords nájdete v ľavom menu v časti “Hromadné úpravy” (Bulk operations), nie veľmi prekvapivo v časti “Skripty” (Scripts). Ich pridávanie do kampane a nasadzovanie má niekoľko zásad:
- Po kliknutí na tlačidlo “Pridať skript” sa dostanete do kódu. Vždy vymažte pôvodný text (function main…) a pridajte zdrojový kód skriptu.
- Upravujte iba tie časti kódu, ktoré sa v skripte upravovať majú (sú označené komentárom). Podrobnosti nájdete pri každom skripte, ktoré si v tomto článku predstavíme.
- Pred spustením treba skript vždy autorizovať.
- Skripty odporúčame najprv vyskúšať nanečisto (Preview). Uvidíte, čo skript zmení v kampani, keď ho spustíte naostro. Vyhnete sa tak neželaným zmenám.
- Skripty, ktoré majú robiť automatické úpravy v pravidelných intervaloch, nezabudnite po uložení načasovať (Schedule). Spúšťať sa môžu na hodinovej báze, denne, týždenne, mesačne alebo jednorazovo. Nezabudnite nechať zaškrtnutú možnosť “Upozorniť e-mailom na vypršanie autorizácie”. Občas sa to stáva.
- Skripty často odosielajú alebo ťahajú dáta zo zdrojových dokumentov na Google Drive. Tieto dokumenty musia byť vždy pod rovnakým Google účtom, z ktorého spravujete danú kampaň so skriptom.
Videonávod – nasadzovanie skriptu
1. Skript na detekciu nefunkčných URL adries v reklamách
Svet sa mení, váš web tiež. Čo sa týka sveta, ten sa nezvykne meniť často, takže si to zväčša všimnete. Nefunkčnú URL na webe si však spravidla nevšimne nikto. A pritom za to platíte!
Či už produkt z ponuky vypadol, alebo chcel SEO špecialista zlepšiť štruktúru URL adries na webe, nie vždy sa táto zmena dostane k správcovi vašej kampane. Ak sa chcete vyhnúť vyhadzovaniu peňazí na reklamy vedúce na chybové stránky (404, 301), použite tento skript od vývojárov Google.
Ten za vás skontroluje všetky URL adresy v reklamách a sitelinkoch, a označí ich štítkom (Label). V prípade, že objaví nefunkčnú adresu, vás na to upozorní e-mailom.
Skript nájdete na tomto odkaze.
- Vytvorte si kópiu tohto dokumentu v Google Drive. Nastavenia v ňom zvoľte podľa vašich preferencií.
- Vytvorte v AdWords nový skript a vložte do neho zdrojový kód.
- Vyplňte tieto polia:
- SPREADSHEET_URL = URL adresa vytvoreného dokumentu,
- RECIPIENT_EMAILS = e-maily, na ktoré sa bude zasielať upozornenie (správca kampane, ďalší ľudia v zálohe).
- Autorizujte, otestujte a naplánujte spúšťanie podľa potrieb. Ideálne na dennej báze.
2. Skript na prehľad skóre kvality
Prácou a snom každého PPC-čkára je nakloniť si skóre kvality na svoju stranu. Skript od Jakuba Kašparů z Lynt Services to za vás neurobí. Ukáže vám, či ste na správnej ceste. Pomocou neho uvidíte vážený priemer skóre kvality reklamných zostáv (bežne vidíte hodnotu iba pre kľúčové slová). Rovnako aj počet kľúčových slov v zostave, ktoré sú na tom z hľadiska skóre kvality biedne.
Skript nájdete na tomto odkaze.
- Vytvorte nový tabuľkový dokument na Google Drive.
- Jeho URL vložte ku premennej var spreadhsheet = SpreadsheetApp.openByUrl(“”).
- Autorizujte, vyskúšajte a naplánujte spúšťanie skriptu podľa potrieb. Ideálne raz týždenne.
3. Skript, ktorý upozorní na reklamy bez zobrazení
Nejde kampaň, to sa občas stáva. Vyčerpá sa kredit, zablokuje sa platobná karta, reklama je zamietnutá… V takomto prípade padne vhod, ak vás na to upozorní systém ešte skôr ako niekto iný (v prípade agentúry klient).
Skript od Catalyst Canada je síce staršieho dáta, ale je stále aktuálny a funkčný.
Skript nájdete na tomto odkaze.
- Vytvorte si nový skript a vložte do neho zdrojový kód z nasledovnej stránky.
- Dôležité: v zdrojovom kóde sú použité úvodzovky v európskom formáte. Všetky úvodzovky “ a ” treba zmeniť na americký formát “. Rovnako úvodzovky ‘ a ’ treba zmeniť na ‘. Spravíte to jednoducho pomocou funkcie vyhľadať a nahradiť (CTR+H).
- Nastavte nasledujúce premenné:
- var accountName = “presný názov účtu”,
- var yourEmail = “váš e-mail”,
- var emailBody = “text upozorňujúceho e-mailu”,
- Autorizujte, vyskúšajte a naplánujte spúšťanie skriptu. Ideálne každý deň.
4. Skript, ktorý pauzuje duplicitné kľúčové slová vo voľnej zhode
Bez toho, aby ste o tom vedeli, sa vo vašich kampaniach často vyskytujú duplicitné kľúčové slová, ktoré medzi sebou súperia. Výsledkom je vyššia CPC a tým aj zbytočné míňanie kreditu.
Zatiaľ čo na doslovnú duplicitu v presnej či frázovej zhode (“Pizza SEO” a “Pizza SEO”) vás AdWords upozorní (aspoň v AdWords Editore), pri voľnej zhode to tak nie je. +Pizza +SEO a +SEO +Pizza sú pre AdWords dve rozdielne veci, napriek tomu, že na poradí slov vo voľnej zhode nezáleží. Tým pádom spúšťajú reklamu na úplne rovnaké hľadania.
Aby ste nezvádzali boj sami so sebou, Daniel Gilbert z Brainlabs vytvoril skript, ktorý duplicity odhalí a štítkom (Label) označí víťaza a porazeného.
Skript nájdete na tomto odkaze.
- Navštívte vyššie spomenutý Danielov blog na Search Engine Land a zdrojový kód vložte do novovytvoreného skriptu v AdWords.
- Nastavte nasledovné funkcie:
- var METRIC = “AverageCpc” – nastavte metriku, podľa ktorej sa vyhodnocuje výkonnosť duplicít. Na výber máte “Ctr”, “QualityScore”, “Impressions”, “Conversions”, “AverageCpc”.
- var CAMPAIGN_INCLUDE_FILTER = [“názov kampane”] – ak chcete skript spúšťať iba pre niektoré kampane, zahrňte ich názov (resp. časť názvu). Ak ho chcete pre všetky, nechajte toto pole prázdne.
- var CAMPAIGN_EXCLUDE_FILTER = [“názov kampane”] – ak je pre vás jednoduchšie zadať kampane, pre ktoré sa skript spúšťať nemá, môžete tak učiniť rovnakým spôsobom.
- var DATE_RANGE = “LAST_30_DAYS” – nastavte časový rozsah, ktorý sa má brať do úvahy pri porovnávaní výkonnosti kľúčových slov. Na výber máte:
- TODAY,
- YESTERDAY,
- LAST_7_DAYS,
- THIS_WEEK_SUN_TODAY,
- THIS_WEEK_MON_TODAY,
- LAST_WEEK,
- LAST_14_DAYS,
- LAST_30_DAYS,
- LAST_BUSINESS_WEEK,
- LAST_WEEK_SUN_SAT,
- THIS_MONTH.
- Autorizujte, otestujte a naplánujte spúšťanie podľa potrieb. Napríklad raz týždenne.
5. Skript, ktorý vykoná audit kvality kampaní
Môj osobný favorit. Opäť od Jakuba Kašparů a opäť na nôtu skóre kvality. Tento skript skúma skóre kvality do podrobností a prezradí nielen to, ktorá zostava či kľúčové slovo v kvality skóre pokrivkáva. Okrem toho zistí, kto z trojice “predpokladané CTR – relevancia reklamy – vstupná stránka” robí problémy.
Jeho hlavná výhoda teda spočíva v tom, že nemusíte problematické časti kampane hľadať ani skúmať, kde je pes zakopaný. Audit vám ihneď prezradí, v čom je problém, a odporučí, čo urobiť pre jeho odstránenie.
Skript nájdete na tomto odkaze.
- Vytvorte nový tabuľkový dokument na Google Drive.
- Vytvorte si nový skript a vložte do neho zdrojový kód skriptu z tohto blogu.
- Vložte URL dokumentu do riadku: var spreadsheet = SpreadsheetApp.openByUrl(‘URL dokumentu’).
- Autorizujte, otestujte, naplánujte spúšťanie skriptu.
6. Skript, ktorý vytvorí tepelnú mapu (heatmap) výkonnosti po hodinách
Tento skript vám jednoducho pomôže identifikovať časti dňa a týždňa, v ktorých je kampaň efektívnejšia. A to doslova na prvý pohľad.
Podobné prehľady pre hodiny alebo dni si môžete pozrieť aj priamo v rozhraní AdWords. Daniel Gilbert ich však spojil do jednej tabuľky a navyše ich pretavil do heatmapy. Podmienené formátovanie, poviete si. Ale aké užitočné!
Skript vám vygeneruje heatmapy pre rôzne metriky (impresie, kliknutia, konverzie…). Čo je ale najlepšie, na základe nich vypočíta aj odporúčané úpravy ponuky cien za kliknutie pre každú hodinu.
Tieto údaje môžete využiť v ďalšom skripte.
Skript nájdete na tomto odkaze.
- Vytvorte kópiu tohto Google Drive dokumentu.
- Kartu v dokumente nazvite presne tak, ako sa volá účet v AdWords.
- Vytvorte nový skript a vložte do neho zdrojový kód z článku.
- Nastavte nasledovné premenné:
- spreadsheetUrl – vložte URL Google Drive dokumentu,
- dateRange – nastavte rozsah dátumov, z ktorých sa má heatmapa vygenerovať. Použite formát YYYY-MM-DD, teda napríklad 2016-08-01, 2017-01-20,
- ignoreDates – rovnakým spôsobom vylúčte dátumy, ktoré chcete ignorovať (napríklad Vianoce, ktoré môžu deformovať dáta),
- Fields – zvoľte, ktoré z nasledovných metrík chcete mať zahrnuté v heatmape – “Impressions”, “Clicks”, “Cost”, “ConvertedClicks”, “Conversions” a “ConversionValue”,
- campaignNameContains – tu môžete špecifikovať, ktoré kampane do skriptu zahrnúť,
- campaignNameDoesNotContain – tu, ktoré vylúčiť,
- ignorePausedCampaigns – príkazom true (pravda) alebo false (nepravda) rozhodnete o tom, či má skript vyhodnocovať aj výkonnosť pozastavených kampaní.
- Autorizujte, otestujte a spúšťajte podľa potreby.
7. Skript, ktorý nastaví cenu za klik podľa jednotlivých hodín dňa
Keď už máte z predchádzajúceho skriptu použiteľné dáta, na ktoré sa tak pekne pozerá, bola by ich škoda nevyužiť. Tento skript vám umožní pretaviť vygenerovanú heatmapu do úpravy ponuky cien za kliknutie po jednotlivých hodinách dňa.
Namiesto šiestich časových segmentov v AdWords denne tak môžete meniť cenu za kliknutie 24/7.
Skript nájdete na tomto odkaze.
- Vytvorte si kópiu tohto dokumentu.
- V dokumente vložte jej URL do premennej var SpredsheetURL.
- Kartu “Ad Scheduling” premenujte podľa presného názvu AdWords účtu, na ktorý idete skript aplikovať.
- Určite bid modifiers (zmeny ceny za kliknutie) pre jednotlivé hodiny. Spravíte to nasledovne:
- Hodnota 100 % predstavuje aktuálnu ponuku – teda cena za kliknutie sa nemení.
- Vyššie hodnoty, sam ozrejme, ponuku zvyšujú, teda napr 120 % zodpovedá 20 % zvýšeniu cien za kliknutie.
- Naopak, hodnota 80 % by zodpovedala zníženiu ceny za kliknutie o 20 %.
- Ak chcete, určite, ktoré kampane má skript brať do úvahy (includeCampaignNameContains) a ktoré nie (excludeCampaignNameContains).
- Uložte, verifikujte a SPUSTITE SKRIPT BEZ SKÚŠKY (Preview).
- Po prvom úspešnom zbehnutí skriptu prepíšte v kóde hodnotu premennej var firstRun z “true” na “false”.
POZOR! Ak chcete uplatniť návrhy zvýšenia cien za kliknutie podľa výstupu z heatmapy, hodnoty môžete jednoducho skopírovať. Z neznámeho dôvodu sú však tieto hodnoty doslovné – teda hodnota 20 % znamená zvýšenie o 20 %. Po skopírovaní do tohto dokumentu ich preto musíte upraviť, aby zodpovedali vhodnému formátu (20 % na 120 %, -20 % na 80 % a podobne). V tabuľkovom editore to však spravíte jednoducho – prirátate hodnotu 100.
8. Skript, ktorý vám pripraví grafický prehľad štatistík aukcií vášho webu s konkurentami
Ak chcete vedieť, ako sa vašim kľúčovým slovám v konkurenčnom boji darí, môžete si v AdWords pozrieť tzv. štatistiky aukcií. Tie vám prezradia:
- Ako často sa na hľadanie daných kľúčových slov zobrazí vaša reklama?
- Akú priemernú pozíciu dosahujú vaše a akú konkurenčné reklamy?
- Ako často sa vaša reklama zobrazuje na vrchných pozíciách?
- Ako často sa vaša a konkurenčná reklama zobrazujú naraz?
- Ako často sa zobrazuje vaša reklama nad konkurenčnými?
Ak však chcete vedieť, ako sa tieto ukazovatele vyvíjali v čase, musíte si tieto dáta sami relatívne často spracovávať a vyhodnocovať. Alebo môžete použiť ďalší skript z dielne Brainlabs, ktorý to spraví za vás a pripraví vám grafické prehľady vývoja tejto bitky. Ako si všimnete na nasledovnom obrázku, pomocou tohto skriptu hravo odhalíte, kedy sa niektorý z konkurentov zobudil a začal intenzívnejšie v kampani bidovať, prípadne kto z konkurentov poľavil.
Zaujímavosťou tohto skriptu je, že je jediný, ktorý nevkladáte priamo do systému AdWords. Namiesto toho postupujte nasledovne.
Skript nájdete na tomto odkaze.
- Vygenerujte si prehľad aukcií z vášho účtu AdWords.
- Choďte na úroveň, ktorú chcete skúmať (celý účet, konkrétne kampane, reklamná skupina…).
- Prejdite na kartu kľúčové slová (Keywords) a zvoľte možnosť podrobnosti (Details) – prehľad aukcií (Auction Insights).
- Nastavte si správne časové obdobie, pre ktoré chcete generovať report.
- Stiahnite si prehľad v tabuľkovom formáte CSV. Nezabudnite si nastaviť, v akých časových segmentoch chcete mať prehľad vygenerovaný.
- Vytvorte nový tabuľkový dokument v Google Drive.
- Zvoľte Nástroje (Tools) > Editor skriptov (Script Editor) > GoogleSheet.AddOn
- Vložte zdrojový kód a spustite skript.
- Do karty 1 v tabuľke vložte obsah stiahnutého prehľadu aukcií z AdWords.
9. Skript, ktorý vám povie, kedy ste čo vytvorili
Zdedili ste kampaň, ktorá už má nejaký ten piatok a vôbec sa v nej nevyznáte? Začať s upratovaním môže byť kvôli dlhej a často pohnutej histórii účtu ťažké. Trocha vám v tom môže pomôcť tento skript od Russela Savagea, ktorý označí všetky reklamy (alebo kľúčové slová, reklamné skupiny či kampane) dátumom vytvorenia. Získate tak prehľad o tom, čo bolo kedy vytvorené. A to bez toho, aby ste museli pátrať v histórii účtu.
Treba však povedať, že tento skript má aj nevýhodu v podobe obrovského množstva vytvorených štítkov v účte. Tie vám naopak zneprehľadnia prácu so štítkami (Label). Predovšetkým, ak si nepamätáte ich názvy. 🙂 Ja sám používam tento skript výnimočne, vie však byť občas nápomocný.
Skript nájdete na tomto odkaze.
- Do nového skriptu vložíte zdrojový kód.
- V skripte môžete zmeniť parameter var ENTITY na ad, campaign, keyword alebo adgroup podľa toho, čo chcete pooznačovať.
- Autorizujte, uložte, otestujte a spustite.
10. Skript, aký len chcete
Toto bol výber deviatich must have skriptov, ktoré máme v Pizza SEO ako súčasť procesov pri správe kampane. Okrem nich však používame aj množstvo iných skriptov od triviálnych po pokročilé, ako napríklad určovanie cien za kliknutie podľa počasia, o ktorom som už písal dávnejšie.
Čoskoro si budete môcť na našom blogu prečítať aj o našom prvom verejnom AdWords skripte z dielne Pizza SEO. Stay tuned!
Bonus: Kde sme hľadali my a vy môžete tiež?
- Brainlabs Digital – najlepšia svetová performance agentúra, ktorú sa oplatí sledovať nielen kvoli skriptom Davida Gilberta.
- Free AdWords Scripts – Russel Savage z Cask Data robí kruto dobré skripty. A má vlastnú stránku, kde si ich všetky môžete stiahnuť.
- Search Engine Land – stránka, ktorú pozná asi každý SEM marketér. Okrem iného na nej nájdete aj skripty prevažne od dvoch vyššie spomenutých pánov.
- PPC-Scripts.eu – stránka Jakuba Kašparů a jeho firmy Lynt Services po česky s množstvom inovatívnych riešení.
- Optymzr – Frederic Vallaeys je legenda. V tomto článku síce nenájdete ani jeden jeho skript, neznamená to však, že by ste o ňom nemali vedieť.
- Oficiálna stránka Google pre developerov – od ľudí, ktorí vedia, čo robia. Nájdete tu aj automatické pravidlá, ad customizery a iné špásy.
Ahoj,
Paci sa mi tvoj clanok, pouzil som 4 skripty, ale jeden mi hadze chybu a neviem co s tym.
Konretne cislo 8 a chyba je: TypeError: Cannot read property “length” from undefined. (line 249, file “Code”)
Nevies v com je problem? Dakujem
Ahoj, Robert,
opíšem namiesto kolegu. Skúšal si do spreadsheetu skopírovať dáta z Auction Insights? Skript zbehne automaticky, ak sú dáta v správnom formáte. Chybu, ktorú opisuješ, som si všimla, len keď som skript spúšťala po častiach cez Run > REARRANGE.
Ahoj Beáta,
ďakujem za odpoveď.
Jasne, vygeneroval som si prehľad pre konkrétnu reklamnú skupinu ( skúšal som aj iné, aj všetky reklamné skupiny naraz) za posledných 30 dní, dal som segmentovať po dňoch. Vygenervoal excel CSV, otvoril v pspade (skúsil som aj notepad), skopíroval a vložil do google sheet. A nič sa nestalo 🙁
Čo som si ale všimol, tak ja mám v sheete percentá, namiesto desatinných čísel ako majú v návode. A niekoré mám ” < 10 %" čo nieje zrovna priateľské vyjadrenie pre script…dá sa nastaviť adwords auction insights export aby udával presne, možno bude v tom problém.
https://uploads.disquscdn.com/images/9a9ddaca832c85216862d57c626fa9c18e86fd570c91129e6c9611b8ef770d13.jpg
Ahoj, diky za clanok.
Ako opravit to, ked mi pri #6 ked spustim skript vyhodi v denniku tuto chybu v riadku 330:
sheet = sheet0.copyTo(spreadsheet);
Vďaka.
S tým < 10 % nebude problém, pretože aj ja mám také hodnoty v dátach a skripty mi fungujú. Čo však môže byť problém je slovenčina – skús si v AdWords nastaviť angličtinu, malo by ti to potom dať anglickú hlavičku a desatinné bodky namiesto čiarok.
Máš pravdu, bolo to tou čiarkou, to som si nevšimol. Ďakujem veľmi pekne!
Nie je za čo. Som rada, že sme to vyriešili:)
Ahoj, super skripty. Som este len zaciatocnik a hned pri 1 mi hadze chybu Error: Please specify a valid Spreadsheet URL. You can find a link to a template in the associated guide for this script. (line 967). Skusala som uz kadeco. Tabulku som si skopirovala do svojho Google disku a dala som zdielanie. Skusala som to uz viackrat a stale to iste 🙁 Vies mi poradit. Dik
a aby toho nebolo malo, tak pri Scripte 4 hlási chybu: Cannot retrieve the next object: iterator has reached the end. (line 214). NIečo skontrolovalo, ale nie cele
Ahoj, v riadku 48 je potrebné vložiť URL tej tabuľky, zadávala si ju tam? Okrem toho nezabudni zadať aj svoj e-mail do riadku 52, aby ti mohlo prísť upozornenie o chybných URL v kampani.
Ahoj Beatka, mne zase na prvom vychadzuje tuto chybu
https://uploads.disquscdn.com/images/e9c4e6276abbe244959b99f1da26d18f1d184bb4a7ae36d5047d51cff95a197c.png
Ahoj loopka, problémom je, že URL a e-mail je potrebné vyplniť len na začiatku skriptu, čiže v riadkoch 48 a 52. Táto časť skriptu zo screenshotu slúži ako overenie toho, či na začiatku sriptu bola vložená URL namiesto ‘YOUR_SPREADSHEET_URL’.
Čiže v skratke: treba tam vrátiť, čo tam bolo pôvodne a veci meniť len na začiatku skriptu.
Plus teda veľmi oceňujem kreatívne vyjadrenie na obrázku 🙂
Dakujem 🙂 to by sme mali, medzi casom si znova par precitala manual (RTFM:) ale teraz mam zase novu chybu :/ https://uploads.disquscdn.com/images/5c51720711013a27e851a31adb7ee4d1e54458dd2a59d33be425945f1c3756bc.png
Nasadzuješ skript pre jednotlivé účty alebo pre celé MCC? V článku bol aj odkaz na skript pre MCC a tvoja chyba vyzerá tak, že si nasadila práve tento. Skús pozrieť či máš skript z tejto URL https://developers.google.com/adwords/scripts/docs/solutions/link-checker#how-it-works
Beatka, uz ti niekto povedal, ze si zlaticko? Dakujem! 🙂 Prajem vsetkym krasny vikend and happy Friday! https://uploads.disquscdn.com/images/0578787d8cb67ea88a3b2fb89552019823e13fc4f0a127650393886907443383.png
Nie je za čo, aj my sme tu mali podobné problémy pri nasadzovaní, tak to je najmenej podeliť sa o skúsenosti 🙂 Krásny víkend aj tebe