Analysesystemen voor klanten

Stel je voor dat je een beginnende ondernemer bent die net een website en mobiele applicatie heeft gemaakt (bijvoorbeeld voor een donutwinkel). U wilt met een klein budget gebruikersanalyses koppelen, maar weet niet hoe. Iedereen in de buurt gebruikt Mixpanel, Facebook Analytics, Yandex.Metrica en andere systemen, maar het is niet duidelijk wat je moet kiezen en hoe je het moet gebruiken.

Analysesystemen voor klanten

Wat zijn analysesystemen?

Allereerst moet gezegd worden dat een gebruikersanalysesysteem geen systeem is voor het analyseren van logs van de dienst zelf. Het monitoren van de prestaties van de dienst is gericht op stabiliteit en prestaties en wordt afzonderlijk door de ontwikkelaars uitgevoerd. Er worden gebruikersanalyses gemaakt om het gedrag van de gebruiker te bestuderen: welke acties hij uitvoert, hoe vaak, hoe hij reageert op pushmeldingen of andere gebeurtenissen in de dienst. Wereldwijd kent gebruikersanalyse twee richtingen: mobiele en webanalyse. Ondanks de verschillende interfaces en mogelijkheden van web- en mobiele diensten, is het werken met het analysesysteem in beide richtingen ongeveer hetzelfde.

Waarom doen?

Gebruikersanalyses zijn nodig:

  • om te monitoren wat er gebeurt bij het gebruik van de dienst;
  • om de inhoud te veranderen en te begrijpen waar te ontwikkelen, welke functies toe te voegen/verwijderen;
  • om te ontdekken wat gebruikers niet leuk vinden en dit te wijzigen.

Hoe werkt het?

Om gebruikersgedrag te bestuderen, moet u een geschiedenis van dit gedrag verzamelen. Maar wat moet je precies verzamelen? Deze vraag vertegenwoordigt tot 70% van de complexiteit van de hele taak. Veel leden van het productteam moeten deze vraag samen beantwoorden: productmanager, programmeurs, analisten. Elke fout bij deze stap is kostbaar: het kan zijn dat je niet verzamelt wat je nodig hebt, en het kan zijn dat je iets verzamelt waardoor je geen zinvolle conclusies kunt trekken.

Als je eenmaal hebt besloten wat je gaat verzamelen, moet je nadenken over de architectuur van hoe je het gaat verzamelen. Het belangrijkste object waarmee analytische systemen werken, is een gebeurtenis. Een gebeurtenis is een beschrijving van wat er is gebeurd en die naar het analysesysteem wordt verzonden als reactie op een gebruikersactie. Voor elk van de acties die in de vorige stap voor tracking zijn geselecteerd, ziet de gebeurtenis er doorgaans uit als een JSON-pakket met velden die de ondernomen actie beschrijven.

Wat voor soort JSON-pakket is dit?

Het JSON-pakket is een tekstbestand dat beschrijft wat er is gebeurd. Een JSON-pakket kan bijvoorbeeld informatie bevatten dat de gebruiker Mary de actie Gestart spel op 23 november om 00:15 uur heeft uitgevoerd. Hoe elke actie beschrijven? De gebruiker klikt bijvoorbeeld op een knop. Welke eigendommen moeten op dit moment worden verzameld? Ze zijn onderverdeeld in twee typen:

  • supereigenschappen - eigenschappen die kenmerkend zijn voor alle gebeurtenissen die altijd aanwezig zijn. Dit is tijd, apparaat-ID, API-versie, analyseversie, OS-versie;
  • gebeurtenisspecifieke eigenschappen - deze eigenschappen zijn willekeurig en de grootste moeilijkheid is hoe ze te selecteren. Voor de knop 'munten kopen' in een spel zijn dergelijke eigenschappen bijvoorbeeld 'hoeveel munten de gebruiker heeft gekocht', 'hoeveel de munten kosten'.

Een voorbeeld van een JSON-pakket in een taalleerservice:
Analysesystemen voor klanten

Maar waarom verzamelen we niet gewoon alles?

Omdat alle evenementen handmatig worden aangemaakt. Analytics-systemen hebben geen knop 'Alles opslaan' (en dat zou zinloos zijn). Alleen de acties uit de servicelogica die interessant zijn voor een deel van het team worden verzameld. Zelfs voor elke status van een knop of venster zijn doorgaans niet alle gebeurtenissen van belang. Bij lange processen (zoals een spelniveau) kunnen alleen het begin en het einde van belang zijn. Wat er in het midden gebeurt, komt misschien niet samen.
Servicelogica bestaat in de regel uit objecten - entiteiten. Dit kan een “munt”-entiteit of een “niveau”-entiteit zijn. Daarom kunt u gebeurtenissen samenstellen uit entiteiten, hun toestanden en acties. Voorbeelden: “level gestart”, “level beëindigd”, “level beëindigd, reden - opgegeten door een draak”. Het is raadzaam dat alle entiteiten die kunnen worden "geopend", worden gesloten om de logica niet te schenden en het verdere werk met analyses niet te bemoeilijken.

Analysesystemen voor klanten

Hoeveel gebeurtenissen zijn er in een complex systeem?

Complexe systemen kunnen honderden gebeurtenissen verwerken, die van alle klanten (productmanagers, programmeurs, analisten) zijn verzameld en zorgvuldig (!) in een tabel zijn ingevoerd, en vervolgens in de servicelogica. Het voorbereiden van evenementen is een groot interdisciplinair werk waarbij iedereen moet begrijpen wat er moet worden verzameld, oplettendheid en nauwkeurigheid.

Wat is het volgende?

Laten we zeggen dat we alle interessante evenementen bedenken. Het is tijd om ze te verzamelen. Om dit te doen, moet u klantanalyses koppelen. Ga naar Google en zoek naar mobile analytics (of kies uit de bekende: Mixpanel, Yandeks.Metrika, Google Analytics, Facebook-analyse, Melodie, Amplitude). We halen de SDK van de website en bouwen deze in de code van onze dienst (vandaar de naam “client” - omdat de SDK in de client is ingebouwd).

En waar evenementen verzamelen?

Alle JSON-pakketten die worden gemaakt, moeten ergens worden opgeslagen. Waar worden ze naartoe gestuurd en waar verzamelen ze zich? Bij een klantanalytisch systeem is deze hiervoor zelf verantwoordelijk. We weten niet waar onze JSON-pakketten zich bevinden, waar hun opslag is, hoeveel er zijn of hoe ze daar zijn opgeslagen. Het gehele incassoproces wordt door het systeem uitgevoerd en is voor ons niet van belang. In de analysedienst krijgen we toegang tot een persoonlijk account, waar we de resultaten zien van de verwerking van initiële gedragsgegevens. Vervolgens werken analisten met wat ze in hun persoonlijke account zien.

In gratis versies kunnen de onbewerkte gegevens meestal niet worden gedownload. De dure versie heeft dergelijke functies.

Hoe lang duurt het om verbinding te maken?

De eenvoudigste analyses kunnen binnen een uur worden gekoppeld: het zal App Metrika zijn, die de eenvoudigste dingen zal laten zien zonder aangepaste gebeurtenissen te analyseren. De tijd die nodig is om een ​​complexer systeem op te zetten, is afhankelijk van de geselecteerde gebeurtenissen. Er doen zich problemen voor die extra ontwikkeling vereisen:

  • Is er een wachtrij met evenementen? Hoe kun je bijvoorbeeld oplossen dat de ene gebeurtenis niet vóór de andere kan komen?
  • Wat te doen als de gebruiker de tijd heeft gewijzigd? Tijdzone gewijzigd?
  • Wat te doen als er geen internet is?

Gemiddeld heb je Mixpanel binnen een paar dagen opgezet. Als er een groot aantal specifieke evenementen moet worden verzameld, kan het een week duren.

Analysesystemen voor klanten

Hoe kies ik welke ik nodig heb?

Algemene statistieken werken prima in alle analytische systemen. Zeer geschikt voor marketeers en verkopers: u kunt de retentie zien, hoe lang gebruikers in de applicatie hebben doorgebracht, allemaal basisstatistieken op hoog niveau. Voor de eenvoudigste landingspagina zijn Yandex-statistieken voldoende.

Als het gaat om niet-standaard taken, hangt de keuze af van uw dienst, analytische taken en gebeurtenissen die moeten worden verwerkt om deze op te lossen.

  • In Mixpanel kun je bijvoorbeeld A/B-testen uitvoeren. Hoe je dat doet? Je maakt een experiment waarin er meerdere voorbeelden zijn en maakt een selectie (je wijst bepaalde gebruikers toe aan A, andere aan B). Voor A is de knop groen, voor B is deze blauw. Omdat Mixpanel alle gegevens verzamelt, kan het de apparaat-ID van elke gebruiker van A en B vinden. In de servicecode worden met behulp van de SDK aanpassingen gemaakt - dit zijn plaatsen waar iets kan veranderen om te testen. Vervolgens wordt voor elke gebruiker de waarde (in ons geval de kleur van de knop) uit Mixpanel gehaald. Als er geen internetverbinding is, wordt de standaardoptie geselecteerd.
  • Vaak wilt u niet alleen gebeurtenissen opslaan en bestuderen, maar ook gebruikers verzamelen. Mixpanel doet dit automatisch, op het tabblad Gebruikers. Daar kunt u alle permanente gebruikersgegevens (naam, e-mailadres, Facebook-profiel) en gebruikersloggeschiedenis bekijken. U kunt gebruikersgegevens als statistieken beschouwen: De draak at 100 keer en kocht 3 bloemen. In sommige systemen kan aggregatie per gebruiker worden gedownload.
  • Wat is de belangrijkste koelte Facebook-analyse? Het verbindt de dienstbezoeker met zijn Facebook-profiel. Daarom kunt u uw doelgroep achterhalen en, belangrijker nog, deze vervolgens omzetten in een reclamepubliek. Als ik bijvoorbeeld een site één keer heb bezocht en de eigenaar ervan advertenties (automatisch invulbaar publiek in Facebook-analyse) voor bezoekers heeft ingeschakeld, zal ik in de toekomst advertenties voor deze site op Facebook zien. Voor de site-eigenaar werkt dit eenvoudig en gemakkelijk; u hoeft er alleen maar aan te denken een dagelijkse limiet op uw advertentiebudget in te stellen. Het nadeel van Facebook analytics is dat het niet bijzonder handig is: de site is behoorlijk complex, niet meteen begrijpelijk en werkt niet heel snel.

Er hoeft bijna niets gedaan te worden en alles werkt! Misschien zijn er ook nadelen?

Ja, en een daarvan is dat het meestal duur is. Voor een startup kan dit ongeveer $ 50 per maand zijn. Maar er zijn ook gratis opties. Yandex App Metrica is gratis en geschikt voor de meest elementaire statistieken.

Als de oplossing echter goedkoop is, zullen de analyses niet gedetailleerd zijn: u kunt het type apparaat en het besturingssysteem zien, maar geen specifieke gebeurtenissen, en u kunt geen trechters maken. Mixpanel kan 50 dollar per jaar kosten (een applicatie met Om Nom kan bijvoorbeeld zoveel kosten). Over het algemeen is de toegang tot gegevens in al deze landen vaak beperkt. Je bedenkt niet je eigen modellen en lanceert ze. Betaling vindt doorgaans maandelijks/periodiek plaats.

Iemand anders?

Maar het ergste is dat zelfs Mixpanel de datavolumes die inherent zijn aan een actieve mobiele applicatie als een benadering beschouwt (openlijk rechtstreeks vermeld in de documentatie). Als je de resultaten vergelijkt met serveranalyses, zullen de waarden uiteenlopen. (Lees in ons volgende artikel hoe u uw eigen server-side analyses kunt maken!)

Het grote nadeel van vrijwel alle analytische systemen is dat ze de toegang tot ruwe logs beperken. Het zal dus niet werken om uw eigen model te gebruiken op schijnbaar uw eigen gegevens. Als je bijvoorbeeld naar trechters in Mixpanel kijkt, kun je alleen de gemiddelde tijd tussen stappen berekenen. Complexere statistieken, bijvoorbeeld de mediaantijd of percentielen, kunnen niet worden berekend.

Ook ontbreekt het vaak aan de mogelijkheid om complexe aggregaties en segmentaties uit te voeren. De lastige groepsaankoop “om gebruikers te verenigen die in 1990 zijn geboren en elk minstens 50 donuts hebben gekocht” is bijvoorbeeld mogelijk niet beschikbaar.

Facebook Analytics heeft een zeer complexe interface en is traag.

Wat moet ik doen als ik alle systemen tegelijk inschakel?

Goed idee! Het komt vaak voor dat verschillende systemen verschillende resultaten opleveren. Verschillende cijfers. Bovendien hebben sommige de ene functionaliteit, andere een andere en weer andere zijn gratis.
Bovendien kunnen meerdere systemen parallel worden ingeschakeld om te testen: bijvoorbeeld om vertrouwd te raken met de interface van een nieuw systeem en er geleidelijk naar over te schakelen. Zoals in elk bedrijf moet u hier weten wanneer u moet stoppen en de analyse zodanig verbinden dat u deze kunt volgen (en dat zal uw netwerkverbinding niet vertragen).

We hebben alles met elkaar verbonden en vervolgens nieuwe functies uitgebracht. Hoe kunnen we evenementen toevoegen?

Hetzelfde als bij het helemaal opnieuw verbinden van analytics: verzamel beschrijvingen van de benodigde gebeurtenissen en gebruik de SDK om deze in de clientcode in te voegen.

Ik hoop dat de antwoorden op veelgestelde vragen nuttig voor u zullen zijn. Als ze u hebben geholpen te begrijpen dat analyses aan de clientzijde niet geschikt zijn voor uw toepassing, raden we u aan analyses aan de serverzijde te proberen. Ik zal er in het volgende deel over praten, en daarna zal ik het hebben over hoe je dit in je project kunt implementeren.

Alleen geregistreerde gebruikers kunnen deelnemen aan het onderzoek. Inloggen, Alsjeblieft.

Welke klantanalysesystemen gebruikt u?

  • Mixpanel

  • Facebook Analytics

  • Google Analytics

  • Yandex Metrica

  • anderen

  • Met uw systeem

  • Niets

33 gebruikers hebben gestemd. 15 gebruikers onthielden zich van stemming.

Bron: www.habr.com

Voeg een reactie