Pari viikkoa sitten muistutimme lukijoita jälleen siitä, että sivun latautumisaika vaikuttaa huomattavasti sivun menestykseen hakukoneissa. Latausajan seuraaminen on onneksi helppoa, sillä tulokset saa suoraan Google Analyticsistä. Tänään kerromme, miten Google Analytics voi auttaa latausajan mittauksessa, ja mitä eri luvut oikeasti tarkoittavat.

Sivun_latautumisaika_Google_AnalyticsissaGoogle Analytics kerää automaattisesti tietoa sivujen latautumisajoista käyttämällä selaimen Navigation Timing API:a. Käytännössä GA ottaa otoksen kaikista sivulatauksista ja mittaa, kuinka kauan sivun latautuminen kestää. Käyttäjää saattaa kuitenkin hämmentää se, että yhden latausajan sijasta GA tarjoaa koko joukon erilaisia mittareita.

  • Sivun latausaika (Avg. Page Load Time): mittaa kokonaisajan siitä, kun käyttäjä aloittaa siirtymisen sivulle (esim. klikkaa linkkiä) siihen, kun sivu on latautunut kokonaan
  • Sivun lataamiseen kuluva aika (Avg. Page Download Time): mittaa itse sivun lataamiseen kuluvan ajan
  • Verkkotunnuksen hakuaika (Avg. Domain Lookup Time): verkkotunnuksen nimipalvelimelta hakemiseen kuluva aika
  • Uudelleenohjausaika (Avg. Redirection Time): uudelleenohjaukseen kuluva aika
  • Palvelinyhteysaika (Avg. Server Connection Time): palvelimeen (TCP) yhteyden muodostamiseen kuluva aika
  • Palvelinvastausaika (Avg. Server Response Time): palvelimelta vastauksen saamiseen kuluva aika
  • Asiakirjan vuorovaikutusaika (Avg. Document Interactive Time): aika, jolloin selain on jäsentänyt sivua sen verran, että käyttäjä voi sen kanssa vuorovaikuttaa (DOMInteractive), vaikka koko sivu ei ole vielä latautunut
  • Asiakirjan sisällön latausaika (Avg. Document Content Loaded Time): aika, jolloin selain on ladannut ja jäsentänyt sivun (DOMContentLoaded). Tällöin kuvien yms. lataamien ei kuitenkaan välttämättä ole valmis, eikä kaikkia Javascripteja ole suoritettu

Tärkeimpänä näistä mittareista voisi pitää [highlight]sivun latausaikaa (Avg. Page Load Time)[/highlight]. Tämä kertoo, kuinka hyvin sivusto selviytyy kaikista eri tehtävistä yhteensä. Latausaikaa seuraamalla näkee, onko sivustolle tehdyt parannukset saanut aikaan merkittäviä muutoksia.

Sivun kokonaislatausaika ei kuitenkaan välttämättä kerro tärkeintä eli sitä, onko kävijä tyytyväinen. Käyttäjälle voi olla yhdentekevää, kuinka nopeasti sivun kaikki sisältö on latautunut. Sivun vierailijaa kiinnostaa enemmän miten nopeasti sivu tuntuu latautuvan. Hyvä mittari tämän tarkkailemiseen onkin asiakirjan vuorovaikutusaika. Tämä mittari kertoo, milloin käyttäjä voi jo alkaa tekemään asioita sivulla, esimerkiksi klikata linkkiä toiselle sivulle. Tällöin ei välttämättä haittaa, vaikkei kaikki sisältö vielä olisikaan näkyvillä.

Ole tarkkana

Vaikka raportteja on monenlaisia, on dataa tarkasteltaessa oltava varovainen. Oletusraportteja selatessa on hyvä pitää mielessä pari asiaa:

  • Oletuksena GA mittaa latausaikoja vain yhdeltä prosentilta kävijöistä. Tämä tarkoittaa sitä, että luvut eivät välttämättä kerro koko totuutta latausajoista, varsinkin jos liikennettä on vähän. (Otoksen suuruutta voi toki muuttaa mittauskoodissa asetuksella siteSpeedSampleRate: 100, missä luku on haluttu otos kävijöistä). GA ei kuitenkaan prosessoi kuin tietyn määrän saamistaan mittauksien ajoitusmittauksista, riippuen sivulatauksien määrästä. Tässä onkin yksi syy lisää harkita Google Analytics Premiumin hankkimista.
  • Luvut ovat keskiarvoja, joten ääripäät vääristävät lukuja. Tätä vääristymää lisää se, että virheellisiä mittauksia ei jätetä huomioimatta, vaan ne ilmoitetaan arvolla 0. Näitä nolla-arvoja tulee, kun ajan mittaaminen ei jostain syystä onnistu. Nolla-arvoja saattaa joskus olla joukossa jopa merkittävästi, joten niiden kanssa kannattaa olla tarkkana.

Vääristymistä tulee ongelmia varsinkin, kun otetaan vertailuun kaksi aikajaksoa. Näissä nolla-arvot voivat kääntää vertailun tuloksen päälaelleen. Joskus onkin hyvä ottaa data tarkempaan syyniin vaikkapa exceliin ja poistaa datasta virheelliset nolla-arvot.

Mukautettu latausaikojen mittaus

Vaikka sivuston nopeuden oletusraportit ovatkin oikein tarkasteltuina hyvin käyttökelpoiset, on usein käytännöllisempää rakentaa oma mittaus mitaamaan tarkasti juuri niitä aikoja, mitä halutaan. Tässä voi käyttä apuna GA:n User Timings -mittausta.

User timings -mittaus toimii samaan tapaan, kuin GA:n oma ajoituksien mittaus, eli GA laskee keskiarvon ajoista. Oleellisena erona on se, että tässä voi mitata juuri niitä elementtejä, joiden latautuminen on itselle tärkeintä. Apuna voi käyttää Navigation API:n tarjoamia aikoja tai sitten voit luoda omia aikaleimoja mittaamaan haluttuja aikoja. Esimerkiksi resurssien (esim. JavaScript-kirjastojen) lataamiseen kuluvia aikoja voi mitata vaikka performance.getEntriesByType(”resource”) -metodin avulla.

Oma suosikkiratkaisuni on eventtien käyttäminen ajan mittaamiseen. Eventit tarjoavat vapauden tallentaa juuri sitä dataa mitä haluan, juuri siinä muodossa kuin itse haluan sen nähdä. Tag Manager on tässä hyvä apu. Eventtejä käyttämällä voi helposti esimerkiksi ryhmitellä mittausajat kategorioihin (0-1 s, 1-2 s, jne.). Simo Ahavan blogikirjoitus paljastaa yksityiskohtaisemmin, miten tämä tehdään.

Vaikka sivun tai sen yksittäisten elementtien latausaikojen mittaaminen saattaa äkkiseltään tuntua monimutkaiselta, niiden seuraaminen kannattaa. Mitä nopeammin sivustosi latautuu, sitä tyytyväisempiä asiakkaasi ovat, ja sitä enemmän Googlen hakualgoritmit arvostavat sisältöäsi.