Muligheter med Google Analytics API

Denne artikkelen omhandler hvordan Liernett brukte data fra Google Analytics via deres API.

Jeg tok i bruk Google Analytics i september 2006, og har siden dette brukt det på alle de nettsidene og prosjektene jeg har jobbet med gjennom Sylling Hardcode.

Noen år senere begynte jeg også å ta i bruk API-et til Google Analytics for nettavisen Liernett. På denne måten fikk jeg oppdaterte trafikktall rett inn i dashboardet til Liernett, hvor dataene ble presentert på en forenklet måte og tilpasset redaksjonens behov.

Liernett ble avviklet ved utgangen av 2012, så dashboardet slik det ser ut i dag gir ingen fancy diagrammer jeg kan vise til. I tillegg er en del av koden utdatert, da Google Analytics har avsluttet støtte for den versjonen av API-et jeg opprinnelig koblet meg til.

Men jeg har endret litt på koden i et av diagrammene som ble brukt for å illustrere noen av mulighetene:

Trafikk per time med Google Analytics API

For å få til dette diagrammet hentet jeg ut sidevisninger per time for siste 12 søndager (ikke inkludert dagens dato) og sidevisninger per time så langt for dagens dato. Dette var et av de mindre kompliserte uthentingene av data fra Google Analytics.

Jeg hentet også ut all statistikk per dato og lagret dette i en MySQL-database som jeg selv kontrollerte, slik at jeg lettere kunne lage egne statistikker. På denne måten unngikk jeg også eventuelle begrensinger i antall requests til API-et og også ventetiden for å hente ut store mengder data.

Heatmap for totaltrafikk et helt år

Med de dataene jeg lagret lokalt i egen database fikk jeg laget et slikt «heatmap» som på en enkel måte ga et totalbilde over trafikken for et helt år om gangen:

totaltrafikk.png

Detaljer for enkeltdato

Ved klikk på en av datoene i «heatmap» fikk man opp en detaljert oversikt over den aktuelle datoen, slik at man raskt kunne avklare hva det var som gjorde at dagen var så bra eller dårlig, eller sånn midt på treet:

enkeldato.png

De dataene som vises i dette bildet er fra den lokale databasen. «Fem mest leste artikler denne dagen» fungerer dessverre ikke nå i dag, grunnet endringene i API-et etter at Liernett ble avviklet.

Detaljer for enkeltartikkel

Klikket man seg videre fra detaljene for en enkeltdato kunne man se detaljer for en enkeltartikkel. Her kunne man se hvordan trafikken på artikkelen hadde vært over tid:

enkeltartikkel.png

Dette diagrammet ble det referert til flere steder i Liernetts statistikk og dashboard.

Small-scale Big Data

All denne statistikken kan betraktes som Liernetts Big Data, tatt i betraktning at Liernett var en hyperlokal nettavis med små ressurser og relativt lite trafikk. Det som var av trafikk ble grundig analysert.

Alle Liernetts artikler fikk en merkelapp, som vi kalte «etiketter», slik at statistikken også kunne brytes ned på hvilket tema artikkel omhandlet. Liernett hadde totalt 139 slike etiketter, pluss 16 artikkelkategorier.

Da var det en smal smak å kombinere dette med statistikken som hadde sin opprinnelse i Google Analytics, siden alt lå i samme database. Med få tastetrykk kunne jeg sammenligne for eksempel levetiden for en artikkel om Arbeiderpartiet med levetiden for en artikkel om Fremskrittspartiet, og om det var noen signifikante forskjeller i hvor mange ganger artiklene ble delt på Facebook (som også ble logget).

Krediteringsoversikt

Den kanskje mest heftige bruken av API-et til Google Analytics var oversikten for «kreditering». Liernett ble drevet av fire eiere, og vi tok ikke ut noen lønn. Men som eiere fordelte vi noe av inntektene mellom oss som arbeidsgodtgjørelse.

For å gjøre dette mest rettferdig ble dette fordelt basert på en relativt komplisert fordelingsnøkkel. Den totale potten som skulle fordeles hver måned ble bestemt på forhånd. En del av potten ble jevnt fordelt ut i fra antall artikler som ble publisert, mens resten ble fordelt ut i fra hva en bidragsyters artikler genererte av sidevisninger, besøkende, delinger på Facebook og leserkommentarer.

En av utfordringene med trafikktall for en nettavis er definisjonen av «mest lest». Skal man da ta utgangspunkt i mest lest siste timen? Mest lest siste døgnet? Mest lest siste uken? Eller kanskje mest lest gjennom tidene?

Tar man utgangspunkt i mest lest gjennom tidene vil en artikkel som ble publisert for flere år siden ha flere forutsetninger for å bli lest flere ganger. Spesielt for en lokalavis, hvor en del trafikk er «longtail» og kommer fra søkemotorer flere år etter publiseringstidspunktet.

Løsningen ble at alle data ble samlet inn for hver artikkel i nøyaktig 7 døgn fra publiseringstidspunktet. Da ville alle artikler få samme forutsetninger, og det ville gi et godt bilde av hver artikkels «performance». 7 døgn etter publisering ble statistikken for en artikkel låst, og den 8. i hver måned var alle artikler publisert forrige måned låst, og arbeidsgodtgjørelsen for den måneden ble utbetalt.

Det ville også gi et insentiv til oss selv: En populær artikkel ville generere mer arbeidsgodtgjørelse enn en mindre populær artikkel. Hva det hadde å si for mangfoldet er vanskelig å si... Men det lå altså en grunnsats i bunnen per publiserte artikkel, uavhengig av om den ble lest eller ikke.

Løsningen ble slik som i skjermdumpen nedenfor. Ved avkryssing for «Vis som kroner i oversiktstabell nedenfor» ble alle prosenter vist som kroner og øre, slik at man kunne se nøyaktig hvor mye man hadde tjent på sin artikkel:

kreditering.png

I det samme verktøyet ble det forresten lagt opp til registrering av kjørte kilometer og andre utlegg for hver artikkel.

Svend Asbjørn Sylling, 15. desember 2013

Bloggen fra Sylling Hardcode