Mi az a mintavételezés?

A mintavételezés kipróbált statisztikai technika arra, hogy egy adott csoport preferenciáit, véleményét, viselkedését modellezzük egy minta alapján. Ilyenkor nem kérdezünk, vagy vizsgálunk meg mindenkit a csoportból, csak annak egy részét.
Például azok a felmérések, amelyek a  politikai preferenciákat mérik, hogy kire szavaznánk, vagy hogy melyik tévéműsort nézzük, az általában egy 1000 főből álló minta alapján készül.
De miért érdekes ez a kérdés itt, egy webanalitikával foglalkozó blogon?

Mintavételezés Google Analyticsben

Azért, mert a Google Analytics is sokszor mintavételezés alapján dolgozik, viszont ez nem “reprezentatív”.
Az alapértelmezett minta az első 250.000 látogatás (és nem oldalmegtekintés, session alapú), de 500.000-ig bővíthetjük, igaz így lassabbá válik a jelentéskészítés, tovább tart betölteni az adatokat .

Amikor Szabványos jelentéseket nézünk, akkor teljes, nem mintán alapuló adatokat látunk.  Azonban ha egyéni jelentést készítünk, vagy speciális szegmenseket, keresőt használunk, és a jelentésben több mint 250.000 (vagy 500.000) látogatás van, akkor már minta alapján dolgozik a rendszer.

Onnan tudhatjuk, hogy épp mintavételezéssel számol a Google Analytics, hogy a jobb felső részen megjelenik ez a sárga sor:

Mintavételezés google analyticsben

Ez azt is megmondja nekünk, hogy az a körülbelül 250.000 látogatás, ami alapján dolgozik, a teljes látogatások hány százaléka. Fontos tudni, hogy itt a teljes Tulajdonhoz számítja az arányt, tehát ugyanabba a Tulajdonba (az UA azonosító utolsó két száma is azonos) több weboldal adatait mérjük, függetlenül attól, hogy az adott profilba mekkora részét gyűjtjük filterek segítségével, akkor is a teljeshez fogja viszonyítani. (itthon erre még nem nagyon láttam példát, de előfordul ilyen).

Miért probléma a mintavételezés?

Nem feltétlen az. Amikor a minta a teljesnek viszonylag nagy része ( pl 80-90%-a) akkor elég jól megbízható marad. Igaz, még ilyen esetben sem bízhatjuk rá magunkat, ha például oldalmegtekintések alapján akarjuk fizetni egy szerzőnket.
És mint ahogy a fentebbi képen is látjuk, előfordulhat, hogy kevesebb, mint 1% adja a mintát.
Minél kisebb rész képezi a mintát, annál megbízhatatlanabbá teszi az adatokat, komoly eltérések lehetnek a minta és a valóság között.
Nézzük csak meg ezt a jelentést, több helyen teljesen azonos számok vannak, ami arra figyelmeztet, a pontos számokban ne bízzunk, maximum a trendekben és arányokban:

mintavételezés

A Lunametrics blogjában, amely alapja a mostani bejegyzésnek, komoly eltérésekről beszélnek a valós és a mintaadatok között, pl 80%-os különbség a bevételben, vagy ami a minta alapján az elmúlt 3 évben 5%-os növekedésnek tűnt az a valós adatok alapján kiderült, hogy 5%-os csökkenés.
És sajnos nem csak a nagyon alacsony mintáknál, de akár az 50-60%-osaknál is lehetnek ilyen kilengések.
Rajtunk múlik, mennyire bízunk meg ezekben az adatokban, vagy mennyire kezeljük szkeptikusan. Személy szerint azt gondolom komoly üzleti döntéseket ne alapozzunk rá, járjuk körbe előbb a lehetőségeinket, miként láthatunk a minták mögé.

Milyen alternatívák vannak?

1. Google Analytics Prémium

Ez itt Magyarországon kevésbé az, egyrészt mivel Magyarországon direktben még nem elérhető, másrészt mivel a listaára 150.000 dollár/év. Vannak cégek itthon is, amelyek olyan adatmennyiséggel dolgoznak, hogy megéri, vagy megérné nekik a Google Analytics Prémium használata, de a nagy átlag nem ilyen. A magyar piac relatíve kicsi, ezért itt 250-500.000 látogatás sokmindenre elég.

2. Időintervallum megváltoztatása

Általában akkor kezd el problémává válni a mintavételezés, amikor túl nagy időtávra szeretnénk látni az adatokat. Ez a weboldal forgalmától függően már 2-3 hónap, de lehet hogy csak 1-2 év távlatában jelentkezik. Ha a vizsgált időtávot lecsökkentjük úgy, hogy az adott időszakban kevesebb mint 250.000 (500.000) látogatás legyen, akkor már nem mintaadatokat látunk. Ezeket azután egy külső excelben összefésülhetjük, hogy a nagyobb időszakra vonatkozóan is elemzéseket végezhessünk.

3. Szabványos jelentések használata

Bár az egyéni jelentések vagy gyorsparancsok segítségével két kattintással elérhetővé válnak a legfontosabb jelentések, ha az a szabványos jelentések közt is elérhető, és teljes adatot szeretnénk látni, akkor érdemesebb végigkattintgatni érte, hogy elkerüljük a mintát.

4. Profilok használata

Amikor a szabványos jelentések nem elégségesek, és speciális szegmensekre lenne szükség a szűréshez, érdemes helyettük külön profilba szűrni az adatokat. Ha például csak az organikus forgalmat szeretném vizsgálni, készítek egy profilt, amibe csak az organikus forgalmat méri a rendszer, és az ebben a profilban használt szabványos jelentések ugyanúgy teljesek, mint a főprofilnál. (értelemszerűen ha szegmensek összehasonlítására szeretném használni, ez a módszer nem működik, de ott  nem is a pontos számok a fontosak, hanem a trendek.)

5. Egy Tulajdonba mért oldalak csökkentése

Bár itthon nem nagyon van példa rá, és általában csak kapcsolódó oldalak esetén történik így (pl blog, mobilverzió, idegennyelvű verzió), külföldön jobban előfordul, hogy több különböző weboldalt egy tulajdonba mérnek, majd profilokba szétfilterezik őket, és úgy vizsgálják. Ezt egyébként a Google Analytics sem ajánlja, én is csak azt tudom mondani, hogy lehetőleg különálló weboldalakat külön mérjünk. Így értelemszerűen a Tulajdonba érkező adatmennyiség is kisebb, így később kerül sor a mintavételezésre. (példa: ha 20 egyenként havi 30.000 látogatást generáló oldalt mérünk egybe, akkor már az egy hónapra nézett jelentések is mintavételezésen alapulnak, míg ha ezek 20 különböző tulajdonban vannak, még az éves jelentés is teljes adatok alapján vizsgálható.

6. A mintavételezési ráta beállítása

A Google Analytics lehetőséget ad a mintavételezési ráta beállítására a _setSampleRate() kóddal.
Azt kell itt szem előtt tartani, hogy ha ezt beállítjuk, akkor is mintavételezés alapján fognak érkezni az adatok a Google Analyticsbe, amikor egyébként nem indokolt. Ezért használata nem javasolt, de szükséges megemlíteni, hogy van erre is lehetőség.

7. Szerveroldali megoldás alternatív követésre

Érdekes megoldás lehet az is, ha egy alternatív második követőkódot is beillesztünk a látogatóink egy bizonyos körére. Amennyiben például beazonosítható a regisztrált felhasználó a weboldalunkon (cookie segítségével), megtehetjük, hogy ilyen esetekben egy második követőkód is bekerüljön, és mérje ezeket a látogatókat. (azaz a második kód csak akkor kerül be az oldalba, és akkor mér, amikor cookie alapján azonosítottam, hogy az adott látogató a kívánt csoportba, pl regisztráltak, tartozik).
Egy ilyen megoldás használata azonban körültekintést igényel, mert könnyű elrontani. Ha nem megfelelő a kód, vagy nem a megfelelő módon/időben aktivizálódik a második követőkód, az adatok könnyen használhatatlanná válnak, és ezt nem is feltétlen vesszük azonnal észre.

8. Google Analytics API

A Google Analytics API-t használva lehetőségünk van olyan eszközök létrehozására, amelynek segítségével úgy tudjuk gyűjteni az adatokat, hogy elkerüljük a mintavételezést, például úgy, hogy minden nap lekérdezzük a szükséges adatok körét, és egy külön alkalmazásban dolgozzuk fel, nem a Google Analytics felületén (hasonlóan, mint a 2. pont javaslatában, csak itt automatikusan érkeznek az adatok, nem nekünk kell a letöltött jelentéseket összefésülni.) A GA API-nak is vannak ugyan korlátai (napi 50.000 lekérdezés, lekérdezésenként 10.000 sorral), de ha van rá fejlesztőkapacitásunk hosszútávon sokkal könnyebbé teheti az elemzést a használata.

9. Analytics Canvas

Vagy más, hasonló szolgáltatás. Az előző ponthoz képest annyi a különbség, hogy ők elvégzik helyettünk a piszkos munkát az API-val, nem nekünk kell beleőszülnünk, míg lefejlesztjük a számunkra megfelelő analitikai eszközt.

10. BigQuery

Google BigQuery egy jelenleg bétában lévő szolgáltatás, amellyel hatalmas mennyiségű adatot fogunk tudni elemezni “egy gombnyomásra”. A közeljövőben mindenképp egy próbát megérő lehetőség lesz arra, hogy nagy mennyiségű nyers adatot tudjunk elemezni mintavételezés nélkül.