Sådan trækkes data fra Facebook-annoncer automatisk i regneark

Efter at have set, hvordan du sender dine Google Ads-kampagnedata til regneark, gør vi det samme med Facebook-annoncer. Igen er ideen at implementere en datadrevet strategi i kampagnepræstationsstyring. Men efter min mening er rapportering hver måned eller endda ugentligt ikke nok: det skal være dagligt. Og så det ikke tager dig 20 minutter om dagen at eksportere dine CSV-filer og formatere dem, er det sådan, hvordan du automatiserer de kedelige ting.

Oprettelse af en applikation på Facebook-udvikler

For at få adgang til Facebook API skal du oprette en applikation på Facebook Developer.

  1. Gå til følgende url: udviklere.facebook.com
  2. Log ind med din Facebook-konto.
  3. Klik på 'Opret en Facebook-udviklerkonto'.
  4. Klik på fanen "Mine applikationer"> "Opret en app".
  5. Giv din ansøgning et navn som "Rapportering".

Nu, hvor din ansøgning er oprettet, skal du give den de nødvendige tilladelser for at få adgang til det indhold, du er interesseret i: læsning af kampagnepræstation.

6. I Tilføj et produkt skal du klikke på: Konfigurer “API Marketing.

7. I Marketing API> Værktøjer skal du vælge "ads_read" og "read_insights".

8. Klik på "Hent token": du har en lang alfanumerisk streng, der vises på skærmen, ikke del den med nogen, det er din dyrebare! Denne tolkien, desværre, dette token er nøglen til at autentificere dig selv og få adgang til Facebook API. Denne nøgle er ikke evig, den varer cirka 2 måneder. Men rolig, vi får se, hvordan du styrer denne begrænsede levetid, så dit script ikke holder op med at arbejde natten over.

”Jeg ønsker, at det ikke behøver at være sket i min tid,” sagde Frodo. ”Det gør jeg også,” sagde Gandalf, ”og det gør alle, der lever, for at se sådanne tider. Men det er ikke dem, der skal bestemme. Alt, hvad vi skal beslutte, er, hvad vi skal gøre med den tid, der er givet os. ” - JRR Tolkien, Ringenes fællesskab

Klargøring af regnearket

Det første trin er at forberede det regneark, der fungerer som din destination til dataimport. Åbn to regneark og navngiv dem henholdsvis "Facebook-annoncekampagner" og "Facebook-annonce-annonskonto". Du kan ændre navnene på arkene, men i dette tilfælde skal du også gøre det samme i scriptet.

Gå derefter til scripteditoren: "Værktøjer"> "Scripteditor".

Wrinting scriptet

Scriptet afhænger af de oplysninger, du vil sende til dit regneark. Jeg mener, at der er to hovedkomponenter, der skal defineres til automatisk rapportering

  • Granularitet: hvad er den brændvidde, som jeg vil se på udførelsen af ​​mine kampagner? Hvis det er en global vision, skal du vælge Ad Account-niveau for at få resultaterne af Facebook-annoncer. For en mere lokal vision skal du vælge kampagneniveau.
  • Opdatering eller vedhæftning: opdatering af rækker kan være nyttigt, hvis du f.eks. Vil oprette et kontrolpanel til budgetovervågning, der opsummerer din kampagnes forbrug siden begyndelsen af ​​måneden. Det vil klemme gamle data og erstatte dem med den nye. Hvis du vil have en daglig fordeling af din kampagnes ydelse, foretrækkes følgende metode. Den tilføjer nye rækker for at skrive nye data, der holder den gamle.

For at du skal have begge metoder foreslår jeg et script, der:

  • Opdaterer den foregående dags ydelse af Facebook-annoncekampagner på et regneark.
  • Tilføjer en ny linje med den samlede kontoresultat opnået dagen før.

Dette giver dig mulighed for både at få et hurtigt overblik over udførelsen af ​​kampagnerne og kontrollere, om der er et problem for en af ​​dem, mens du for eksempel har kontoresultatet siden begyndelsen af ​​måneden.

Her går manuskriptet:

Udskift følgende oplysninger

Indtast dit annonskonto-id og det token, du har fået i det foregående trin. Glem ikke citatmærkerne!

Valg af data, der skal sendes

Dette script foreslår at returnere følgende felter: kampagnenavn, visninger, forbrug, cpc, ctr og cpm. Du kan selvfølgelig tilpasse disse beregninger, her er listen over tilgængelige felter:

Hvis du for eksempel vil tilføje metrikken "klik":

  • Føj til var urlCampaignInsights:
felter = campaign_name% 2cimpressions% 2cspend% 2ccpc% 2cctr% 2ccpm% 2Cclickcs ...
  • Tilføj variabel-klik for at indsamle de ønskede oplysninger:
... var ctr = kampagneData.ctr var klik = kampagnedata.clicks ...
  • Endelig glem ikke at fortælle scriptet om at få vist disse oplysninger på regnearket:
… Ark.getRange (j + 2,6) .setValue (ctr) ark.getRange (j + 2,7) .setValue (klik) ...

Hvis du også vil tilføje en beregning i rapporteringen på annonskontoniveau, kan du overveje at tilføje linjer med lignende kode efter linjer 74, 87 og 97 og også tilføje "2% Cclick" til linje 60.

Administrer udløbsdato for token

Som vi sagde har tokenet en levetid på to måneder. Så at dit script ikke holder op med at køre natten over, tilbyder jeg dig et script, der advarer dig via e-mail en uge før dit token udløber. Dette giver dig tid til at opdatere den.

Til dette skal du kende SecretClient og klient-iden til din ansøgning. Gå til “Indstillinger”> “Generelt”. Du får dit id og din hemmelighed og føjer det til dit script.

Og tilføj dette script efter det foregående i scripteditoren (glem ikke at tilføje din e-mail-adresse i variablen var mailAdress):

Når du modtager aleter-e-mailen, bliver du bare nødt til at oprette forbindelse til Facebook Developer derefter "Tools"> "API Graph Explorer". Kontroller, at du har valgt den rigtige app, og klik derefter på "Generer adgangstoken". Du skal bare erstatte det nye token i dit script.

Planlæg scriptet

Nu når dit script er klar, lader vi planlægge det til at køre med jævne mellemrum og opdatere dit dashboard.

  1. Få adgang til Googles scripteditor, klik på "Rediger"> "Aktuel projektudløsere".
  2. Klik på "Tilføj udløser" nederst til højre på siden. Vælg funkitonet “facebookAdsReporting”, vælg “Hourly Trigger” i “Select of source of events”, og vælg derefter “Daily” i “Select the type of trigger”. Gem din trigger.
  3. Tilføj nu en ny trigger til funktionen "facebookTokenExpiringAlert" med den samme opsætning.

... du har lige automatiseret din Facebook-annoncerapportering!

Jeg er ikke en udvikler, koden er ikke meget elegant, men den fungerer fint. De, der har nogle javascript-evner, er velkomne til at forbedre koden. Håber du nyder det alligevel!