Přejít na obsah
PPC Scripts

Audit historického výkonu PLA kampaní

4 komentáře

Co skript dělá:

  1. Stáhne kompletní výkon všech historických produktů za dané časové období (možné nastavit počet dní zpět na řádku 4, číslo 30 říká 30 dnů zpět)
  2. Vygeneruje CSV soubor, který data obsahuje.
  3. Můžete následně bez ohledu na historickou strukturu analyzovat, jaké kategorie a značky PLA kampaní fungovali nejlépe.

screenshot-2016-10-20-12-38-15

Jak skript vložit:

  1. Zkopírujte skript.
  2. Vložte do účtu.
  3. Na řádku 4 si změnte, kolik dní zpět chcete stahovat data PLA kampaní. Dejte si pozor, 360 a více dní může znamenat několik milionů záznamů.
  4. Následně CSV soubor naimportujte pomocí Excel > Data > Z textu
  5. Vytvořte kontingeční tabulku, kterou potřebujeme.
audit-historickeho-vykonu.gs
function main(){

var to = lynt_get_date(1,1);
var from = lynt_get_date(30,1);
var reportArray = [ "OfferId; CampaignName; AdGroupName; Cost; AllConversions; AllConversionValue; ProductTypeL1; ProductTypeL2; ProductTypeL3; CategoryL1; CategoryL2; CategoryL3; CategoryL4; Impressions; Brand; CustomAttribute0; CustomAttribute1; CustomAttribute2; CustomAttribute3; Clicks"];
var report = AdWordsApp.report("SELECT Month, OfferId, Clicks, CampaignName, AdGroupName, Cost, AllConversions, AllConversionValue, ProductTypeL1, ProductTypeL2, ProductTypeL3, CategoryL1, CategoryL2, CategoryL3, CategoryL4, Impressions, Brand, CustomAttribute0, CustomAttribute1, CustomAttribute2, CustomAttribute3 FROM SHOPPING_PERFORMANCE_REPORT DURING "+from+","+to+"");
var iterator = report.rows();
while(iterator.hasNext()) {
var oneRow = iterator.next();
var oneRowString = lynt_json_to_array(oneRow);
reportArray.push(oneRowString);
}

doCSV(reportArray,"PLA report");

}

function doCSV(input,name) {
var data = input.join("\n");
var file = DriveApp.createFile(name, data);
Logger.log(file.getUrl());
}

function lynt_json_to_array(json) {
var OfferId = json.OfferId;
var Clicks = json.Clicks.replace(","," ").replace(".",",");
var CampaignName = json.CampaignName;
var AdGroupName = json.AdGroupName;
var Cost = json.Cost.replace(","," ").replace(".",",");
var AllConversions = json.AllConversions.replace(","," ").replace(".",",");
var AllConversionValue = json.AllConversionValue.replace(","," ").replace(".",",");
var ProductTypeL1 = json.ProductTypeL1;
var ProductTypeL2 = json.ProductTypeL2;
var ProductTypeL3 = json.ProductTypeL3;
var CategoryL1 = json.CategoryL1;
var CategoryL2 = json.CategoryL2;
var CategoryL3 = json.CategoryL3;
var CategoryL4 = json.CategoryL4;
var Impressions = json.Impressions.replace(","," ").replace(".",",");
var Brand = json.Brand;
var CustomAttribute0 = json.CustomAttribute0;
var CustomAttribute1 = json.CustomAttribute1;
var CustomAttribute2 = json.CustomAttribute2;
var CustomAttribute3 = json.CustomAttribute3;
var string =
OfferId + ";'" +
CampaignName + ";'" +
AdGroupName + ";" +
Cost + ";" +
AllConversions + ";" +
AllConversionValue + ";" +
ProductTypeL1 + ";" +
ProductTypeL2 + ";" +
ProductTypeL3 + ";" +
CategoryL1 + ";" +
CategoryL2 + ";" +
CategoryL3 + ";" +
CategoryL4 + ";" +
Impressions + ";" +
Brand + ";" +
CustomAttribute0 + ";" +
CustomAttribute1 + ";" +
CustomAttribute2 + ";" +
CustomAttribute3 + ";" +
Clicks;
return string;
}

function lynt_format_awql_date(datum){
return datum.getUTCFullYear()+("0"+(datum.getUTCMonth()+1)).slice(-2)+("0"+datum.getUTCDate()).slice(-2);
}

//Daylight saving time correction
function lynt_DST(datum, offset){
var yr = datum.getFullYear();
var dst_start = new Date("March 14, " + yr +" 02:00:00");
var dst_end = new Date("November 07, " + yr +" 02:00:00");
var day = dst_start.getDay();
dst_start.setDate(14-day);
day = dst_end.getDay();
dst_end.setDate(7-day);
if (datum >= dst_start && datum < dst_end){
return offset+1;
} else {
return offset;
}
}

//Getting data for x days back in right format for AWQL query
function lynt_get_date(pocet_dni, zona) {
var minule = new Date();
//kdyz je letni cas, tak o hodinu dele (GMT+1)
var offset = lynt_DST(minule, zona);
minule.setTime(minule.getTime() - (1000 * 60 * 60 * (24) * pocet_dni) + offset);
return lynt_format_awql_date(minule);
}
Jakub Kašparů

Spolumajitel PPC agentury Lynt. Píše na jakubkasparu.com.

jakubkasparu.com ↗LinkedIn ↗

Komentáře 4

  1. Pavel

    Ahoj,
    skript hlásí, že nemám přístup k požadovanému dokumentu (pravděpodobně řádek 7), vytvořil jsem vlastní .csv,ale data se nenatáhla, naopak se vytvořil dokument .doc s produkty PLA, ale určitě bude něco špatně. 🙂

    Prosím o radu, co s tím?

    Moc Díky
    Pavel

  2. Vláďa Smitka

    V skriptu nám zůstal testovací export do Google Sheetu, už je to pryč 😉

  3. Pavel

    No dobře, ale kde vezmu CSV soubor? Pořád ho nevidím? Mám do skriptu vložit nějaký odkaz? Je možné postup popsat i trochu více pro lajka? 🙂

  4. Karel Borovička

    Hledej na google disku soubor „PLA report“