Closed PerOlavM closed 1 year ago
Det finnes en app for XP som knytter XP og Content Studio mot VWO: https://market.enonic.com/vendors/enonic/vwo Antar det krever lisensavtale med VWO. De har en free trail mulighet. https://vwo.com/ Ønsker vi å ta i bruk enda ett 3. parts verktøy?
Jeg ønsker å flytte trafikken vår via serveren. Det er for å forsikre at alle som skal være med i eksperimentet blir med.
Problemet med tredjepartsløsninger som Visual Website Optimizer, Google Optimize og lignende er at de er javascript-baserte. Dermed er det mange som ikke blir med i eksperimentet om de har en ad-blocker eller javascript slått av. Det hindrer at koden kjører i nettleseren deres, og da får vi færre i en av gruppene som skal se ny eller gammel versjon av forsiden.
Ifølge Reuters i 2018 brukte 24% av nordmenn en ad-blocker. Det er ganske mange som ikke blir trukket med i vår AB-test.
Til sammenligning vil en regel på server-nivå treffe besøkende lenge før javascript. Så vi burde kunne garantere at like mange ser den nye forsiden som den gamle versjonen.
Jeg forstår at vi bruker Apache på serveren så vi kan bare sette en tidsbasert regel for å sende folk til en av sidene vi skal teste. For eksempel slik som foreslått her: https://julien.danjou.info/a-b-testing-with-apache/
Basert på klokkeslett så kan man sende alle som besøker forsiden klokken 10:00 til den gamle versjonen av forsiden, og de som besøker 10:01 til den nye versjonen av forsiden. Det vil si basert på oddetall og partall i klokkeslett. Så setter vi en cookie for å huske hvilken versjon de skal se om de kommer tilbake i løpet av eksperimentet, og setter en timeout på hvor lenge den cookie skal vare.
Vi kan gjøre dette med mod_rewrite. http://httpd.apache.org/docs/current/mod/mod_rewrite.html
Vi diskuterte mulige løsninger for AB-testing med Enonic og bruk av Amplitude
Vi kan ha behov for trafikk-routing med Enonic. Isåfall er det for å sende grupper av besøkende til to eller flere ulike sider med hver sin URL og ulikt design. For eksempel visuelle forskjeller og tekstendringer.
En slik komponent trekker ut brukere og sender de til ulike destinasjoner.
@tomanders ser på dette og hvordan Amplitude kan legges til i Enonic
Et alternativ for mindre endringer er å ikke sende brukere til ulike URLer, men heller sende data om hva brukere har sett og hva de har trykket på til Amplitude. Da kan man for eksempel sende hvilken versjon av en tekst eller knapp en bruker har sett og trykket på. Det kan sendes som et parameter til Amplitude.
Eksempel: Vi endrer tekst på lenkene på forsiden
Om brukeren ser ny versjon av forsiden så måler vi en sidevisning slik
event_type: sidevisning,
event_properties: {
ab_test: variantA
}
Om brukeren ser gammel versjon av forsiden
event_type: sidevisning,
event_properties: {
ab_test: kontrollgruppe
}
Samme logikk kan gjelde klikk på knappen, med parameter for hvilken versjon de så.
Da kan man fortsatt gjøre AB-tester basert på enklere "hvis A så gjør dette" logikk.
For eksempel: Alle som besøker forsiden på et klokkeslett med oddetall får en annen tekst på lenker, eller ulik størrelse på boksene for lenkene
Begge løsninger krever at vi setter en cookie som varer like lenge som eksperimentet, slik at man ikke får se 2 ulike versjoner av samme side i løpet av eksperimentet. Ideelt sett så vil alt gå tilbake til normalen etter eksperimentet er over.
dokumentasjon til Amplitude SDK for JavaScript eget repo med eksempler for å legge til Amplitude med eksempler for dekoratøren og andre apper som sykepengesøknad
En viktig fordel er at vi unngår ad-blocking så målingen blir mer nøyaktig
Skal vi flytte denne til nav-enonicxp-frontend?
Sjekk først med Enonic / XP community hva som er anbefalt løsning.