• Home
  • Blog
  • Personalisatie van een website in Umbraco

Personalisatie van een website in Umbraco

  • Umbraco

Wanneer een gebruiker uw website bezoekt dan wilt u hem zo goed mogelijk helpen, en zo relevant mogelijke content bieden. U kunt hiervoor de data gebruiken die de bezoeker u al geeft en vervolgens de content op uw website aanpassen of personaliseren. Het principe ‘personalisatie’ dat ontvangen werd als ‘marketing buzzword’ is daadwerkelijk toegepast binnen Perplex, met indrukwekkende resultaten.

Tijdens CodeGarden 2017 werden we, met één van de sites waarop we personalisatie toepassen, genomineerd in de categorie ‘Best Technical Solution’. In deze blog laten we zien wat onze gedachten zijn over personalisatie van websites in Umbraco en willen we inspireren om er zelf ook mee aan de slag te gaan. We kijken kort naar enkele belangrijke concepten en gaan vervolgens, op basis van een concreet stappenplan, aan de slag met personalisatie.

Expliciete variabelen

Een websitebezoeker laat bewust of onbewust verrassend veel informatie achter, maar gebruikt uw website deze data eigenlijk wel? Sommige data is relatief eenvoudig uit te lezen en hiervoor is een goede package beschikbaar, namelijk: Personalisation Groups van Andy Butland, die al handvatten in Umbraco geeft. De variabelen zijn expliciete signalen die een bezoeker afgeeft. Enkele voorbeelden hiervan zijn:

  • Locatie (op basis van het IP-adres van de bezoeker)
  • Het tijdstip van de dag
  • De manier waarop mensen landen op uw website. Is dit door direct de URL in te typen, via een zoekmachine, via een advertentie of via een link op een andere website
  • De browser
  • Het apparaat type; mobiel, tablet of desktop

Personalisatie

Vervolgens kunnen we de variabelen gebruiken om content persoonlijk te maken voor deze specifieke gebruiker. Hier zijn talloze opties voor te bedenken, maar enkele voorbeelden zijn:

  • Het weergeven van een andere afbeelding
  • Het weergeven van andere titels en/of tekst, of gedeelten hiervan
  • Een andere navigatie aanbieden zoals “Deze pagina’s zijn voor u wellicht ook relevant” of “Andere bezoekers bekeken ook”

Vanuit programmeursperspectief niet echt rocket science, zou je zeggen. De variabelen zijn eenvoudig uit te lezen en in Umbraco kun je simpelweg meerdere properties toevoegen op je doctypes om afhankelijk van de variabelen de ene of de andere property te tonen aan de gebruiker. So, what’s the big rush?

Impliciete personalisatie

Bovenstaande variabelen geven een goede houvast voor websitebezoekers, maar zijn relatief statisch en veranderen vaak niet meer na de landing. En daar wordt het interessant, want na binnenkomst op de website kunnen we wellicht op basis van gedrag een bezoeker sturen, of vriendelijker gezegd ‘ondersteunen’.

  • Welke (type) pagina’s heeft een bezoeker bekeken en welk patroon kunnen we daarin herkennen?
  • Welke acties heeft een bezoeker uitgevoerd op uw website?
  • Welke functionaliteiten op uw website gebruikt de bezoeker?
  • Hoeveel pagina’s worden er bezocht?

Maar zelfs als we deze zaken bijhouden, hoe komen we dan tot succesvolle personalisatie en waar moet u beginnen? Hieronder delen we het stappenplan dat wij volgen bij de inzet van personalisatie. Hopelijk geeft het u ook houvast.

We gaan niet in op de creatie van persona’s en het ontdekken van de customer journey, maar onthoud dat dit één van de belangrijkste stappen is voor succesvolle personalisatie! Onderschat dit niet en beperk het aantal persona’s en fases, want personaliseren geldt voor élke persona en het liefst ook voor elke fase.

Stap 1: Persona’s & customer journey

Om helder te krijgen waar u zou kunnen beginnen met personaliseren, is het belangrijk om af te vragen voor wie u personalisatie in wilt zetten. Een handige manier om hier meer richting aan te geven is het creëren van persona’s. Welke bezoekers verwacht ik op mijn website en wil ik bedienen? Hoe zien deze personen eruit, wat zijn hun drijfveren, wat zoeken ze wel op een website, en wat niet, et cetera. Op basis van deze persona’s ‘scoren’ we onze data in stap 2.

Naast deze eerste dimensie, zou je er ook voor kunnen kiezen om onderscheid te maken tussen diverse fases uit de customer journey en deze ook te gebruiken. Typische customer journey fases kunnen zijn; bewust worden, ontdekken, aanschaffen, gebruiken en verbinden (awareness, discover, purchase, use, bond). Wanneer we ook de fases gebruiken zijn er variabelen voor tweedimensionale personalisatie.

Voorbeeld: Geef bij elke pagina aan op een schaal van 0 t/m 10 hoe relevant deze pagina is voor elke persona & fase. Content op de pagina kan bijvoorbeeld zeer relevant zijn voor persona A (9 punten), in mindere mate voor persona B (5 punten) en helemaal niet voor persona C (0 punten).

Stap 2: Annoteer de content

Nu de inputvariabelen zijn bepaald (zowel expliciete als impliciete) en de persona’s en fases zijn toegevoegd kunnen we echt aan de slag. Aan welke inputvariabele kennen we een score toe en wat is de waarde van deze variabele voor een persona of fase. U kunt dit bijvoorbeeld doen op basis van een 10-puntenschaal, maar experimenteer vooral om te ontdekken wat het beste werkt.

Zodra de websitebezoeker vervolgens naar een volgende pagina gaat, worden wederom punten toegekend. Op een gegeven moment wordt een bepaalde drempelwaarde bereikt van bijvoorbeeld 25 punten voor een specifieke persona, of 30% extra punten voor een persona in vergelijking met andere persona’s. In dat geval nemen we aan dat er voldoende zekerheid is en deze bezoeker voldoet aan de persona.

In deze stap is het vooral van belang om content goed te annoteren, maar daarnaast content ook op een juiste manier te schrijven. Als het goed is schrijft u de content namelijk met een specifieke persona in uw achterhoofd en is annoteren daarbij eenvoudig.

Daarnaast dient u zelf een algoritme te ontwikkelen dat voldoende zekerheid geeft wanneer de drempelwaarde is bereikt. Dit algoritme is één van de belangrijkste onderdelen van uw personalisatie, maar tevens één van de moeilijkste. Ons advies hierin is om te beginnen met een simpele aanname, zoals de voorbeelden hierboven en op dit algoritme vervolgens constant kleine aanpassingen te doen of het zelf optimaliserend te maken.

Stap 3: Het personaliseren van content

Mooi, de scoring is nu ook gerealiseerd en dan kunnen we eindelijk beginnen met dat wat de meeste mensen zien als personalisatie, namelijk het aanpassen van content aan de hand van de persona. De manier van personalisatie kan per website verschillen en zal voor een groot deel afhangen van de tijd en energie die u er in wilt steken. Uiteraard kunt u elke afbeelding personaliseren, maar dat betekent wel dat u voor elke persona en pagina een andere afbeelding zult moeten uploaden. Datzelfde geldt voor tekst, waarbij u meerdere varianten van één tekst moet ontwikkelen, het liefst voor elke persona.

Een veel minder intensieve stap is het personaliseren van de navigatie. Een voorbeeld zou kunnen zijn dat u de aangeboden content onder ‘Interessante artikelen’, afhankelijk maakt van de persona. Dit kan door zoveel mogelijk content aan te bieden die goed scoort voor deze persona, en die deze bezoeker nog niet heeft gezien. Het voordeel is dat we alle content in stap 2 al hebben geannoteerd, waardoor deze data nu eenvoudig kan worden hergebruikt.

In stap 3 is het dus vooral belangrijk om te bepalen welke manier van personalisatie u kiest. Daarnaast is een essentieel deel van het algoritme het bepalen van de relevantie van pagina’s voor de persona’s. Welke pagina’s biedt u waar binnen de website aan en hoe is te voorkomen dat het algoritme leidt tot een selffulfilling prophecy of dat de bezoeker in een filter bubble terechtkomt.

Stap 4: Meten is weten

Het is natuurlijk hartstikke leuk om te personaliseren, maar dit doe je natuurlijk niet voor niets. Het doel is om zo relevant mogelijk te zijn voor de bezoeker en door te meten weet u of u dit bereikt. Het meten kan op verschillende manieren. Meten kan op macroniveau (u verkoopt meer artikelen, de gemiddelde waarde van de order is hoger, u hebt meer contactaanvragen) of op microniveau (een bezoeker bekijkt meer pagina’s, spendeert meer tijd op de site, u heeft een lager bounce percentage). De enige manier om aan te tonen dat dit komt door het personalisatie-algoritme is door te meten welke bezoeker u personaliseert en te vergelijken of deze gepersonaliseerde bezoeker meer conversie oplevert dan een ander.

De manier waarop wij dat doen is door met een meetgroep en controlegroep te werken bij al onze personalisatie. We hebben bijvoorbeeld een meetgroep met 30% van de bezoekers, op welke we ook daadwerkelijk personalisatie toepassen. De overige 70% van de bezoekers is onze controlegroep. In de controlegroep scoren we wel op de persona’s en fase, maar personaliseren we niet. Op deze manier vergaren we statistieken voor alle bezoekers. Tegelijkertijd bepalen we het succes van de personalisatie, door te analyseren of er een significant verschil optreedt in het beoogde doel. Indien dat het geval is weet u dat de scoring, persona’s, content en het personalisatie-algoritme werken. Gefeliciteerd!

Onze houvast is dat we twee of drie weken meten en testen, voordat we doorgaan met stap 5. Zorg wel voor voldoende websitebezoekers om zeker te zijn van de resultaten.

"Ga niet over één nacht ijs met personalisatie, want u heeft voldoende data nodig voor een beetje vertrouwen in de meetresultaten."

Stap 5: Optimaliseren van uw algoritme en content

De vervolgstap is dat u probeert (zoals altijd) om nog betere resultaten te behalen. Het doel is om de scoring van persona’s en fases te optimaliseren, de personalisatie-resultaten nog relevanter te maken, ervoor te zorgen dat websitecontent een juiste afspiegeling is van de persona’s en dat er voor elke persona voldoende afwijkende content is. Dit laatste geeft ook nog een hele goede houvast voor het schrijven van nieuwe content; probeer van tevoren te bedenken voor welke persona en welke fase u content wilt schrijven. Dit hoeft niet exact één persona te zijn, het mogen er ook meer zijn maar bedenk wel voor wie u schrijft.

Het optimaliseren is één van de leukste, maar ook lastigste stappen. Bij personaliseren van geringe zaken (bijvoorbeeld enkel de relevante artikelen die je ook moet lezen) is de kans heel groot dat u heel snel een lokaal maximum bereikt. In dat geval lijkt het erop dat verder optimaliseren niet mogelijk is, terwijl u misschien helemaal in de verkeerde richting aan het zoeken bent.

The proof of the pudding is in the eating

We hebben dit stappenplan diverse malen uitgevoerd en in samenwerking met ZB is het ingezet voor één van de opdrachtgevers van ZB. Het gaat om een website over scheiden en deze bevat erg veel content. Met personalisatie kunnen we ervoor zorgen dat we de meest relevante content aan iedere individuele bezoeker aanbieden.

De website is door Umbraco beloond met een nominatie voor ‘Best technical solution’ (helaas niet gewonnen). Tijdens BETA-garden op CodeGarden 2017 hebben we onderstaande film gedemonstreerd en toegelicht. In de video laten we in vogelvlucht zien hoe wij het een en ander in Umbraco instelbaar hebben gemaakt, bovenstaande punten hebben verwerkt en het een en ander hebben gevisualiseerd.

Vooralsnog zijn we erg tevreden met de resultaten die we zien in onze statistieken, waarbij er significantere hoge conversie optreedt bij het toepassen van personalisatie in vergelijking met de controlegroep. We blijven investeren in het onderzoeken van data die we verzamelen en het verbeteren van ons personalisatie-algoritme.

 


"If I give you a penny, then you're a penny richer and I'm a penny poorer, but if I give you an idea, then you will have a new idea, but I'll have it too."

Ook personaliseren?

Hopelijk hebben we u kunnen inspireren om zelf aan de slag te gaan met personalisatie. Meer weten over hoe personalisatie op uw Umbraco-website kan worden gebruikt? Neem contact met ons op!