Profile Filters i Google Analytics: Del 3 – Reguljära uttryck (RegEx)

Reguljära uttryck eller Regular Expressions (RegEx) på engelska är ett matchingsspråk som används för att söka efter förekomster av strängar inuti strängar. Det går att skapa väldigt exakta och avancerade regler för bestämma vad som ska anses vara en matching.

I Google Analytics används reguljära uttryck på flera ställen: när du skapar profile filters och mål (goals) eller vid sökningar. Även om det kan se avnacerat ut så är det relativt enkelt att med RegEx i Google Analytics matcha valfitt innehåll i ett fält.

Reglerna

Det finns ett antal tecken som betyder speciella saker, regler för vad som matchar. De som används i Google Analytics är följande:

. (punkt)

En punkt matchar ett valfritt tecken. Ett valfritt tecken betyder i det här fallet valfri bokstav, siffra eller tecken. ”Kol.a” skulle matcha Kolla och Kolna, men inte Kola. Det skulle dessutom matcha kombinationer som Kol8a eller Kolaa.

* (stjärna)

En stjärna matchar noll eller fler av föregående tecken. Det betyder att ”Kol*a” skulle matcha Koa, Kola, Kolla, Kollla osv.

+ (plus)

Plus matchar minst ett av föregående tecken. ”Kol+a” skulle matcha Kola, Kolla, Kollla osv men inte Koa.

? (frågetecken)

Frågetecken matchar noll eller ett av det föregående tecknet. Det gör att ”Kol?a” matchar Koa och Kola men inte Kolla.

| (pipe)

Används för att göra alternativ, kan uttalas som ”eller” för att göra det enklare att förstå. a|b matchar alltså antingen a eller b. I ett verkligt exempel skulle P(e|ä)r matcha både Per och Pär.

^

Används för att indikera att sökningen ska starta från början av strängen. Det efterföljande tecknet skall alltså vara det första i strängen. ^namn matchar både ”namn” och ”namnet”, men inte ”mittnamn”.

$ (dollartecken)

Används för att indikera att sökningen ska starta från slutet av strängen. Föregående tecken skall alltså vara det sista i strängen. För att återanvända föregående exempel så matchar namn$ ”mittnamn” och ”namn” men inte ”namnet”.

( ) (paranteser)

Paranteser används för att gruppera alternativ, oftast i samband med |-symbolen. (hem|webb)sida matchar både hemsida eller webbsida.

[ ] (hakparanteser)

Skapar en lista av tecken som alla matchar. [abc] matchar alltså a, b eller c. På samma sätt matchar Volvo [17]40 både ”Volvo 140” och ”Volvo 740”.
Det finns en specialregel gällande ^ innuti hakparanteser, placeras ^ först inom hakparantesen betyder det ”inte”. Exempelvis betyder [^0-9] att tecknet inte får vara en siffra.

– (minus)

Minustecknet används ihop med hakparanteser för att matcha valfritt tecken inom en serie tecken. [a-c] betyder precis samma sak som [abc] i exemplet ovan. Det fungerar på samma sätt med siffror [0-9] matchar alltså valfri siffra. En vanlig lista att använda inom hakparanteser är att matcha alla ”vanliga” tecken, dvs alla bokstäver och siffror. En sådan matching (för engelska tecken, som ju vanligtvis förekommer i urler) skulle se ut som [a-zA-Z0-9].
Vill du används minustecknet som ett tecken att matcha inom hakparanteserna så placeras den först, [-a-c] matchar alltså a, b, c eller -.

\ (backslash)

Eftersom dessa tecken ovan har så speciella betydelser så tolkas de alltid som regler, men det finns tillfällen då du behöver använda en punkt i dess vanliga, alldagliga, betydelse. Genom att sätta \ framför så tolkas efterföljande tecken inte som en regel utan som det tecken det verkligen är. I förra delen av artikelserien handlade det om IP adresser, det är ett typiskt exempel för när \ är nödvändigt: i ett IP ska punkterna verkligen vara punkter därför måste en IP anges som 200\.110\.13\.22 om regex används.

{n} (måsvingar)

En ganska avancerad regel som inte finns dokumenterad på Google Analytics hjälpsidor är måsvingarna. De används för att upprepa föregående regel/tecken n gånger. Genom att ange ett tal inom måsvingarna, n, anges hur många gånger föregående regel/tecken ska upprepas. {2} anger exempelvis att något ska upprepas två gånger.
Anges två tal så som {2,4} betyder det att något ska upprepas minst två och som mest fyra gånger.

Om du inte specificerar några regler fungerar matchingen i alla fall. Som exempel, ”sida” matchar webbsida, sidan, framsida, framsidans och alla andra kombinationer som innehåller ”sida” någonstans.

Några vanliga exempel

^/artiklar/

Från början (Google Analytics räknar automatiskt bort domännamnet) skall strängen innehålla /artiklar/. Den här regeln kan i kombination med fältet Request URI användas för att i en profil exempelvis endast visa trafiken för de filer som sorterar under mappen artiklar.

^220\.241\.13\.45$

Ett ip bör anges med både ^ (start) och $ (slut) för att vara säker på att inte matcha andra alternativ än vad som avses. Punkterna måste dessutom anges som \. för att de inte ska tolkas som regex regler.

.*

Kombinationen punkt och stjärna betyder fånga allt eftersom punkt motsvarar exakt ett tecken och stjärnan säger upprepa föregående tecken noll eller fler gånger

Google Analytics: Vanliga frågor del 1 – Hjälp, mitt användarnamn är borta!

En av de absolut vanligaste frågorna som ställs på profuktforumet för Google Analytics är en förfrågan om att identifiera användarnamnet som hör till ett visst web property (UA id). Det kan röra sig om situationer där personen som registrerade Analytics kontot fått sparken eller inte längre finns kvar på företaget. Många har även helt enkelt glömt bort vilket konto de använde.

Googles produktforum är en serie forum för olika Google tjänster där användare kan ge varandra hjälp samtidigt som anställda på Google finns med i bakgrunden för att styra upp. Som frivillig har jag hjälp ett stort antal användare med sina problem och har därmed fått en inblick i vad de vanligaste frågorna är.

Det kan tyckas att det borde finnas en enkel lösning på problemet, men tyvärr är det så att Google inte vill identifiera vilket konto ett visst UA id hör till. Det har hänvisats till integritetsskäl, men oavsett orsak så kvarstår problemet – det går för närvarande oftast inte att genom ett UA id ta reda på vilket google konto analytics kontot är registrerat på.

Det verkar som detta kan komma att ändras i framtiden, forumledarna har börjat hänvisa till ett supportformulär, men det verkar inte finnas ett standardiserat och officiellt sätt ännu.

Det finns därför ett par olika råd jag skulle vilja ge för att förhindra att situationen uppstår.

Råd 1: Dokumentera!

Precis som inloggningsuppgifterna till Internetbanken är inloggningsuppgifterna till ditt Google konto en värdehandling, förvara den därefter! Skriv ner användarnamn och lösenord, alla namnuppgifter och vilka tjänster som är knutna till kontot och spara på ett säkert ställe.

Råd 2: Använd aldrig personliga Google-konton till företagets registreringar!

Låt inte en anställd, eller för den delen företagets ägare och chefer, registrera företagets Google tjänster på sitt egna, privata konto. Det kan skapa problem den dagen personen inte längre är en del av företaget.

Råd 3: Ha flera administratörskonton!

Lägg till flera Google konton som administratörer till Google Analytics. På så sätt säkerställer du att det finns flera möjligheter att få tillgång till informationen. Observera dock att alla administratörer har rättighet att göra vilka ändrignar som helst, så lägg bara till konton du litar på!

Fler filter i Google Analytics

Google Analytics har i dagarna utökats med fler filter för att kunna sortera ut olika typer av trafik i dina profiler.
Det är numera möjligt att skapa en profil som exempelvis enbart visar besök från mobiltelefoner av en viss modell eller bara telefoner som använder ett wifi nätverk vid besöket.

De nya fälten är:

  •  Mobile
    •     Is a mobile device
    •     Is a tablet
    •     Mobile brand name
    •     Mobile model name
    •     Mobile marketing name
    •     Mobile pointing method
    •     Mobile has QWERTY keyboard?
    •     Mobile is NFC supported?
    •     Mobile has cellular radio?
    •     Mobile has wifi?
  • Social
    •     Social network
    •     Social action
    •     Social action target
  • Content & Traffic
    •     Hit type: (page, social, transaction, etc.)
    •     Internal search term
    •     Internal search type
  • Audience / Users
  •     Browser size
  •     IP version
  • E-commerce
  •     Local currency code

En mer detaljerad beskrivning finns i Google Analytics Help.

Nya inställningsmöjligheter för användarrättigheter i Google Analytics

Google införde idag möjligheten att på ett mer precist sätt ställa in vad en användare av Google Analytics kan se och göra.

Förut har det endast gått att välja mellan två nivåer, antingen full administratör (med rättighet att ändra alla inställningar, lägga till användare och se all data) eller användare (med enbart rättighet att se rapporterna). Det har dessutom inte varit möjligt att ställa in detta på annat än konto-nivå. Detta har medfört att samma inställningar har gällt för alla profiler i kontot.

Tre olika rättigheter

Nytt är nu att det finns tre olika rättigheter en användare kan ha: Manage Users (Hantera användare), Edit (Ändra inställningar, men inte hantera användare) samt View (se rapporterna).

Edit – kan ändra alla inställningar, lägga till och ta bort konton, profiler, filter och liknande. Användaren kan även se rapporterna (rättigheten View). I stort ungefär motsvarande gamla Administratören. En användare med rättigheten Edit kan dock inte hantera användare.

Manage Users – kan enbart lägga till och ta bort användare.

View – kan enbart se rapporterna, inte ändra några inställningar eller hantera användare.

Med hjälp av dessa rättighetsinställningar går det nu att kombinera ihop olika lösningar:

  • En användare (personalavdelning eller liknande kanske) kan exempelvis ha som uppgift att enbart hantera användare.
  • En extern konsult kan ges rättighet att ändra inställningarna och att se rapporterna men inte hantera användare.
  • Marknadsavdelningen kan ges rättighet att enbart se rapporterna men inte göra ändringar.

Nivåer

Den stora förändringen är att det nu går att ställa in dessa rättigheter på olika nivåer. Förut var det enbart möjligt för ett helt konto, nu går det att ända ner på profil-nivå.

En användare som har Edit-rättighet på Account-nivå har samma rättigheter på alla web properties och profiler under det kontot. Användare med lägre nivå (eller ingen nivå) på Account-nivå kan ges högre (men inte lägre) nivå för de underliggande nivåerna.

Det går alltså att ge en användare Edit-rättighet till en viss web property och de underliggande profilerna utan att användaren kan ändra på account-nivå.

Dessa förändringar gör att det är möjligt att vara mer generös med tillgång till rapporter och information eftersom det till och med går att ge en användare View-rättighet till enbart en enda profil.

 

Läs mer:
Managing Google Analytics User Permissions
Enhancing Google Analytics Access Controls

Profile Filters i Google Analytics: Del 2 – Exkludera dina egna besök

Det är säkert så att det är du själv som är den flitigaste besökaren på din sida. Detta gör att statistiken blir missvisande. För att råda bot på detta går det att använda Profile Filters i Google Analytics för att filtrera bort besöken från den egna datorn/egna nätverket.

Först en varning: Behåll alltid en profil utan några som helst filter. Eftersom filter potentiellt kan ta bort besöksdata som sedan inte går att återställa är det vettigt att ha en profil som alltid innehåller all data.

Filtrera på domän

Sitter du på ett företagsnätverk visas ofta en egen domän som om du gör en slagning/trace på ditt IP. Är så fallet går det att använda det fördefinierade filtret ”Traffic from the ISP domain”. Du väljer Exclude samt ”that are equal to” och anger slutligen domänen i rutan nedanför.

Filtrera bort IP

De flesta av oss sitter dock inte på ett sådant nätverk utan använder istället en leverantör som visas sitt namn vid en slagning mot ditt IP. Exempel på leverantörer du säkert känner igen är Telia, Tele2 och ComHem. Nuförtiden är IP oftast någorlunda fasta och ändras inte speciellt ofta. Har du dock oturen att ha en helt dynamisk IP som ofta ändras är det tyvärr svårt att få någon bra regel som exkluderar dig men inkluderar andra med liknande IP. Sorterar du bort ett helt subnät kan du förloga statistik för många andra besökare. Det är en balansgång vad som är viktigt.

Vad är ett IP

En IP adress är en identifikation av just din dator eller ditt nätverk ut mot Internet. Den mest använda standarden heter IPv4 och består av fyra gruppen med upp till tre siffror i varje grupp. Grupperna består av siffror mellan 0 och 255. Genom IP adressen kan servrar och routrar på internet styra paketen så de kommer till rätt mottagare, jämför med en gatuadress!

Lokalt (privat) vs Publikt IP

Eftersom antalet IP adresser är begränsat (med IPv4, IPv6 är en ny standard på väg som innebär fler adresser) brukar datorer som sitter i ett nätverk inte ha en publik IP. Den publika IP adressen tillhör istället en router som all trafik går genom för att nå internet, och på samma sätt för trafik från internet till den lokala datorn. varje dator på nätverket är då identifierad av ett lokalt (privat) IP som bara används på nätverket. Dessa brukar vanligtvis börja med 192.168, men det finns fler ovanligare serier också.

Det är ett väldigt vanligt fel att användare kör ipconfig på sin dator och ser routerns/gatewayens IP och tolkar det som sitt IP. Eftersom lokala IP aldrig syns utåt mot internet kan inte Google Analytics filtrera på det och filtret fungerar därför inte.

Exkludera med Predefined filter

Det enklaste sättet att exkludera besöksdata är genom ett fördefinierat filter. Det är bara att välja Exlude, Traffic from the IP Address, That are equal to och sedan ange sin IP i rutorna nedanför. I detta fallet går det inte att ange hela subnät eller andra varianter av nummerserier. För varje IP som skall exkluderas måste man skapa ett nytt filter.

Exkludera med custom filter

Ett custom filter är mycket kraftfullare än de inbyggda fördefinierade filtren. Här kan du dra fördel av matchingsspråket reguljära uttryck ”regex” för att skapa regler som exempelvis täcker in serier av IP adresser.

Att exkludera ett enda IP på samma sätt som vid användandet av det fördefinierade filtret görs på ungefär samma sätt. Filtret ska vara av typen Exclude och i rutan Filter Field väljer du IP Address. Så långt inget krångligt. Rutan Filter Pattern har många möjligheter tack vare regex. I den här delen går vi bara in på delar av de olika regex regler som går att använda, mer kommer i en senare del.

Om ditt IP exempelvis är 111.222.11.22 skriver du in det i Filter Pattern rutan. Men eftersom det sker en matchning med regex reglerna måste innehållet i rutan följa de regler som finns.

Regex säger att en punkt betyder ersätt med ”ett valfritt tecken”. Eftersom vi inte vill ersätta punkterna med valfritt tecken i det här exemplet måste vi säga till regex att behandla punkterna som tecken, och inte som regler. Det gör vi med ett \ före punkten: 111\222\.11\.22

Reglerna för regex säger att om ingenting annat sägs så kan de angivna tecknen finnas var som helst i strängen. Hade filtern pattern rutan bara innehållit ”22” skulle alla IP som innehåller 22 (och även 222) matchat. I vårt exempel matchar sista fjärdedelen alltså inte bara 22 utan även 222. För att förhindra detta slänger vi in $ i slutet för att säga att strängen ska sluta där. På samma sätt lägger vi in ^ i början av regeln för att strängen ska börja där (även om det inte är nödvändigt i det här exemplet).

Det kompletta regex regeln som nu ska stå i Filter Pattern rutan är alltså ^111\.222\.11\.22$

Andra möjligheter

Går det så är det helt klart att föredra att filtrera på IP adresser. Sitter du på en uppkoppling med dynamisk IP eller liknande så är det så klart svårare. Det finns ett par alternativa metoder, dock inget som är lika klockrent.

Exkludera genom utm_source

Ett sätt att exkludera besökare utan att förlita sig på IP (exempelvis om besökaren har dynamisk IP) är att sätta en kampanj källa (campaign source) och filtrera på den.

Låt besökaren använda lägga till ?utm_source=DoNotTrack efter websidans adress vid första besöket så sätta en cookie med information om vilken kampanj som användes (detta används egentligen för att märka länkar från olika källor vid reklamkampanjer etc så det går att se från vilken kampanj besökaren kom). Så länge inte besökaren använder en länk med en annan kampanjkälla så finns cookien kvar i ett par månader.

Exkludera med setVar

Det fanns förr ett kommando, setVar, att stoppa in valfri data till Google Analytics. Detta är numera utbytt mot setCustomVar. Tyvärr fungerar det inte att filtrera på setCustomVar, men som tur är fungerar setVar fortfarande. Hur länge till, det vågar jag inte säga dock.

Principen bygger på att besökaren som inte ska spåras besöker en särskild sida där _setVar sätts i samband med Analytics tracker koden.

Det går sedan att använda fältet ”User Defined” för att sortera bort besöksdatan.

Opt-out browser Add-on

Även om det inte handlar om Profile filters så är ett annat sätt för att exkludera din egna besök att använda en plugin till din webbläsare som helt enkelt hindrar Google Analytics från att spåra dig. Dina besök syns helt enkelt inte, varken i dina rapporter eller hos någon annan. Det känns kanske inte helt ok att använda sådana metoder om man själv förlitar sig på Google Analytics, men det är ett alternativ i alla fall. De etiska aspekterna lämnar jag till var och en att fundera på.

 

I nästa del kommer det att handra om olika RegEx regler och hur de olika symbolerna används.

Ny artikelserie: Profile Filters i Google Analytics

Idag startar en ny artikelserie på strategon.se. Den handlar om Profile Filters i Google Analytics. Profile Filters är ett sätt att sortera bort besöksdata från profiler, exempelvis för att hindra att dina egna besök visas i statstiken. Första delen heter Profile Filters i Google Analytics: Del 1 – Grunderna och ”Best Practice” och ger en grundläggande förståelse för vad Profile Filters är och hur de används.

Profile Filters i Google Analytics: Del 1 – Grunderna och ”Best Practice”

Ett Profile Filter i Google Analytics hjälper dig att sortera bort, eller sortera fram, olika slags trafik så att du bara ser exakt det du vill se i varje profil. Det vanligaste användningsområdena för ett Profile Filter är att sortera bort dina egna besök och för att bara visa vissa delar av webbplatsen.

Hur Profile Filters fungerar

Ett Profile filter är ett filter som all inkommande data från Analytics tracker kod på din webplats sorteras genom. Ett filter gäller bara för den profil den är angiven i.

De utförs i den ordningen de är listade. Oftast spelar det ingen roll, men det är viktigt att i alla fall känna till det för de få tillfällen det faktiskt kan betyda något. Speciellt gäller det mer avancerade filter som ändrar datan istället för att ta bort den.

Om reglerna för ett filter passar för den inkommande datan utförs filtret. Data som tas bort i filtren är borta, den går inte att återställa och den når aldrig Google Analytics rapporterna. Efter filtren går det inte längre att få tillgång till IP i Google Analytics, datan är helt avpersonifierad.

Predefined filters


Det finns ett antal standardfilter med färdiga inställningar. De kan bara ta bort data, antingen den data som fastnar i filtret eller bara den data som inte fastnar i filtret.

Det finns fyra predefined filter

Traffic from the ISP domain
Detta filter sorterar trafiken efter från vilket domän användaren tillhör. Detta är användbart för att sortera bort dina egna besök om du sitter på ett nätverk med egen domän, det är mindre användbart om du använder en uppkoppling från exempelvis telia eller comhem.

Traffic from the IP addresses
Detta filter är säkert det mest använda, det är väldigt användbart för att sortera bort dina egna besök om du sitter på en enda fast IP-adress. För att sortera bort en hel kedja av IP-adresser är det bättre att använda ett custom filter.

Traffic to the subdirectories
Om du har särskilda avdelningar på din webbsida kan du sortera efter katalognamnet. Ett exempel är om du har artiklar i underkatalogen /artiklar/ så kan du få statstiken för enbart den katalogen i en egen profil.

Traffic to the hostname
Användbart om du exempelvis har en sida under flera toppdomäner och använder samma tracking kod. Du kan då sortera efter till vilken domän besökaren gick, alla trafik till .se i en profil och all trafik till .com i en annan.

Custom filters

Med egenspecifierade filter går det att sortera på väldigt mycket. Det finns fler funktioner än bara att inkludera och exkludera, bland annat för att ändra mellan versaler och gemener samt för att söka och ersätta text.

Reguljära uttryck

Med hjälp av reguljära uttryck, även kallat regular expressions eller kort och gott regex, går det i custom filters att göra matchningar med hjälp av olika regler för att på så sätt passa in filter på väldigt specifika användningsområden.

Det kommer mer om reguljära uttryck i en senare artikel, men kort beskriven är det en uppsättning regler för hur sökningar i en sträng skall utföras. Olika tecken i reglerna matchar olika kombinationer, en punkt ersätter exempelvis ett valfritt tecken medan en stjärna ersätter noll eller fler av föregående tecken. Det kan låta lite krångligt men det är ett väldigt kraftfullt sätt att söka.

Förutom att exkludera och inkludera finns följande funktioner i custom filters

Lowercase/Uppercase
Eftersom Google Analytics hanterar URLer med versaler och gemener som olika (Index och index ses som olika sidor) kan det vara lämpligt att standardisera alla URLer innan de når rapporterna. Genom dessa regler uppnås detta enkelt.

Search and Replace
Genom att söka efter specifika strängar och ersätta dessa med annan text går det att exempelvis slå samman olika sidor till en enda grupp och på så sätt få överblick över exempelvis alla artiklar.

Advanced
Genom avancerade filter går det att plocka ut data ur ett fält och kombinera med andra samt andra riktigt avancerade saker. Det är speciellt vid användandet av dessa filter som ordningen på filtren är viktig.

Fält

När du använder custom filters kan du välja vilket fält du vill använda i filtret. De flesta fält i Google Analytics finns med. Det går på så vis enkelt att sortera ut exempelvis mobila användare till en egen profil, det går att filtrera på användarens geografiska placering så du kan se enbart besökare från Sverige.

Best Practice

Det är värt att poängtera igen, data som tas bort i ett filter är borta. Den går inte att återställa och den når aldrig rapporterna. Det är därför viktigt att alltid spara en profil utan några som helst filter. På så sätt har du alltid tillgång till all data. Ta därför alltid för vana att skapa en ny profil som du testar dina filter på så att du ser att de har önskade egenskaper!

Ny Dashboard i Google Analytics

I samband med de senaste ändringarna i Google Analytics släppte också Google ett helt nytt utseende för dashboards, knepigt översatt till ”Översikter” på Svenska. Min gissning är att de har tagit inspiration ifrån iGoogle, den nerlagda personliga Google startsidan. Hursomhelst så är de nya funktionerna välkomna, en del är väldigt efterlängtade.

Detta är den andra, och sista, delen av en genomgång av nyheterna i Google Analytics gränssnitt som släpptes i januari 2013. Läs första delen, Uppdaterat gränssnitt i Google Analytics, för att veta mer om alla andra ändringar!

Översikten/dashboarden består av valfria widgets som kan visa olika rapporter. Dessa widgets placeras ut på sidan och kan dras till den position som önskas. Det finns 6 stycken layouter för sidan, med olika antal kolumner och olika bredder.

Widgetarna för att visa diagram och statistik har fått två nya utseenden. Geomap och stapeldiagram. Speciellt geomap, en karta där olika färger representerar olika mängder, är efterlängtad. För sidor som inriktar sig på Sverige är den dock, liksom alla kartor i Analytics, inte speciellt användbar då hela Sverige visas som en enda enhet. Det kan dock vara trevligt att visa en karta över Norra Europa om sidan har mycket trafik från de nordiska länderna.

Advanced segments

En annan nyhet är att det numera går att lägga till ”Advancerade Segment” för att exempelvis visa Dashboarden filtrerat bara på mobiltrafik. Väldigt användbart!