Sessiecookie-rotatie op je webshop identificeren en oplossen
Cookie-rotatie betekent dat iets in je webshop de sessiecookie opnieuw genereert tijdens een enkel bezoek. Elke nieuwe waarde wordt geteld als een afzonderlijke sessie, zodat je winkel meer sessies registreert dan er daadwerkelijk hebben plaatsgevonden. Omdat sessies de noemer zijn van je conversiepercentage, valt je conversiepercentage lager uit. Je bestellingen, omzet en klantaantallen worden niet beïnvloed.
Shopify gebruikt een cookie genaamd _shopify_s om een browsersessie in je winkel te identificeren, en Shopify Analytics groepeert de activiteit van een bezoeker in sessies met behulp van die cookie. Sessies hebben ook verwachte grenzen, zoals inactiviteit en middernacht UTC, wat wordt besproken in sessies en bezoekers vergelijken.
Je kunt in je browser controleren of de cookie op je webshop roteert, achterhalen wat de oorzaak is, en vervolgens de oplossing verifiëren. Rotatie komt voort uit de eigen code of apps van je webshop, dus je lost dit op in je webshop, en voor sommige controles heb je toegang nodig tot je themacode.
Op deze pagina
Vereisten
Om de controles op deze pagina te voltooien, heb je de volgende tools nodig:
- Een desktopbrowser met ontwikkelaarstools, zoals Chrome, Edge, Firefox of Safari.
- Toegang tot de themacode, aangepaste scripts of appconfiguratie van je webshop.
- Toegang tot de instellingen van je platform voor toestemmingsbeheer, als je winkel er een gebruikt.
Hoe sessiecookies van Shopify werken
De volgende cookies registreren bezoekersactiviteit op je webshop:
| Cookie | Beschrijving |
|---|---|
_shopify_s | Identificeert een combinatie van browsersessie en winkel. Heeft een verschuivende vervaldatum van 30 minuten vanaf het laatste gebruik. |
_shopify_y | Ondersteunt Shopify Analytics. Vervalt na één jaar. |
Wanneer er een sessiecookie wordt geplaatst in de browser van een bezoeker, bevat deze een unieke waarde, zoals 1a2b3c4d-1a2b-3c4d-1a2b-3c4d5e6f7a8b. Als een sessie vervalt en er een nieuwe sessie begint, verandert de cookie in een andere unieke waarde, zoals 5e6f7a8b-5e6f-7a8b-5e6f-7a8b9c0d1e2f.
Omdat _shopify_s een verschuivende vervaldatum heeft, wordt deze ververst bij elke actie die een bezoeker uitvoert. In een webshop zonder rotatie blijft de waarde tijdens het hele bezoek hetzelfde en vervalt deze pas na dertig minuten inactiviteit. Als de waarde halverwege een bezoek verandert, wordt de activiteit voor en na de verandering als twee afzonderlijke sessies geteld.
Controleren of de sessiecookie roteert
Je kunt de controle op cookierotatie uitvoeren met behulp van je browser. Je kunt cookierotatie niet diagnosticeren aan de hand van je Analytics-rapportages, omdat deze het totale aantal sessies weergeven en niet de reden waarom elke sessie is aangemaakt. Voer de controle uit in een privé- of incognitovenster van je browser, zodat bestaande cookies en browserextensies de resultaten niet beïnvloeden.
Waar je de controle uitvoert, is van belang. Je toestemmingsbanner wordt alleen weergegeven in de regio's waarvoor je winkel is geconfigureerd, en de meeste rotatie vindt plaats in de toestemmingsflow. Een controle vanuit een regio zonder banner kan het probleem dus volledig over het hoofd zien. Controleer in welke regio's je winkel om toestemming vraagt en voer vervolgens de controle uit vanuit een van die regio's. Als je niet zelf vanuit die regio kunt browsen, vraag dit dan aan een collega of je ontwikkelaar. Raadpleeg je cookiebanner beheren om te controleren in welke regio's je winkel om toestemming vraagt.
Voer de controle uit op je webshop in elke toestemmingsstatus om het cookiegedrag te bevestigen:
- Zonder op de banner te reageren
- Na toestemming voor cookies te hebben gegeven
- Na toestemming te hebben geweigerd
Stappen:
- Open je webshop in een privé- of incognitovenster. Zorg ervoor dat je test vanuit een geschikte regio en bepaal welke toestemmingsstatus je wil controleren.
- Open de ontwikkelaarstools van je browser.
- Open het cookies-paneel in de ontwikkelaarstools van je browser:
- In Chrome, ga naar Applicatie > Opslag > Cookies.
- In Firefox, ga naar Opslag > Cookies.
- In Safari zet je eerst het Ontwikkel-menu aan via Instellingen > Geavanceerd > Toon functies voor webontwikkelaars en vervolgens ga je naar Ontwikkel > Toon web-infovenster > Opslag > Cookies.
- Voor andere browsers raadpleeg je de ondersteunende documentatie van je browser voor de stappen.
- Selecteer je domein.
- Zoek
_shopify_sin de lijst en noteer de eerste paar tekens van de bijbehorende waarde. Als_shopify_sniet in de lijst staat, blader dan verder en bekijk het paneel Cookies dertig tot zestig seconden voordat je een conclusie trekt over het cookiegedrag. - Laat de ontwikkelaarstools geopend, blader normaal door je webshop en bezoek drie of vier pagina's, waaronder een productpagina en de winkelwagen.
- Controleer de waarde van
_shopify_sna elke pagina, en opnieuw nadat je één minuut op dezelfde pagina bent gebleven.
Op basis van je activiteit op de cookietoestemmingsbanner gedragen cookies zich doorgaans op de volgende manieren:
- Er wordt verwacht dat een cookie afwezig blijft voordat een bezoeker reageert op de toestemmingsbanner, en nadat een bezoeker weigert.
- Er wordt een cookie verwacht nadat een bezoeker toestemming accepteert. Dit is de enige toestemmingsstatus waarbij er een moet worden gegenereerd.
Als de cookie na het accepteren van toestemming nog steeds afwezig is, of als je winkel geen toestemming vraagt in de regio van waaruit je test, dan blokkeert of verwijdert iets in je webshop deze cookie. Ga naar de oorzaak van cookierotatie achterhalen.
Tijdens de controle op cookierotatie duidt het volgende gedrag op rotatie:
- Een cookiewaarde die op enig moment tijdens het bezoek verandert.
- Een cookie die verschijnt en verdwijnt.
Oorzaak van cookierotatie achterhalen
Shopify kan niet detecteren wat de cookierotatie veroorzaakt, omdat deze logica in je webshop wordt uitgevoerd. Shopify kan dit gedrag ook niet toewijzen aan een specifieke app of verkoper.
Doorloop de volgende stappen voor probleemoplossing op volgorde om de oorzaak van de cookierotatie te achterhalen. Toestemmingsbeheer is de oorzaak van de meeste rotatie in Liquid-webshops:
- Controleer de werking van je platform voor toestemmingsbeheer.
- Controleer de configuratie van je cookiebanner.
- Controleer je webshopscripts en -logica.
- Controleer de algemene opslag en werking van cookies.
Werking van het platform voor toestemmingsbeheer
Als je winkel een externe app voor toestemmingsbeheer gebruikt, begin dan hier. _shopify_s is gecategoriseerd als een rapportage- en analytics-cookie in het cookiebeleid van Shopify, en niet als een noodzakelijke cookie. Een toestemmingsapp die analytics-cookies blokkeert of wist, heeft hier dus invloed op.
Stappen:
- Ga na welke app voor toestemmingsbeheer je winkel gebruikt.
- Zoek in de app-instellingen op hoe
_shopify_sis gecategoriseerd en wat de app doet met cookies in die categorie. - Controleer of de app cookies bij elke paginalading wist en opnieuw aanmaakt, in plaats van één keer actie te ondernemen op basis van de keuze van de bezoeker.
Om dit op te lossen overleg je met de app-ontwikkelaar zodat de app de toestemmingskeuze van elke bezoeker aan Shopify doorgeeft via de Customer Privacy API, in plaats van analytics-cookies te wissen en opnieuw aan te maken bij elke paginalading. Verlaag niet hoe vaak de app de keuze van een bezoeker afdwingt, aangezien een geweigerde keuze gedurende het hele bezoek moet blijven gelden. Raadpleeg voor de aanbevolen instellingen een cookiebanner configureren met een externe cookiebanner-app.
Het corrigeren van een toestemmingstool die keuzes van bezoekers nooit aan Shopify rapporteerde, verandert meer dan alleen hoe activiteit wordt gegroepeerd in sessies. Na de correctie worden eerder niet-gerapporteerde keuzes toegepast. Voor bezoekers die weigeren worden daardoor geen niet-essentiële gegevens meer verzameld, wat kan leiden tot een daling in je sessie-aantallen.
Cookiebannerconfiguratie
In de regio's waar je winkel om toestemming vraagt, plaatst Shopify geen analytics-cookies totdat de bezoeker deze accepteert. Buiten die regio's is de cookiebanner standaard niet actief. Een stabiele _shopify_s voorafgaand aan interactie met de banner is dus het verwachte gedrag. Raadpleeg je cookiebanner beheren om te controleren in welke regio's je winkel om toestemming vraagt.
Waar toestemming vereist is, vindt rotatie plaats in de periode voordat de bezoeker een keuze heeft gemaakt. In plaats van de cookie met rust te laten, wist en herstelt de toestemmingstool de cookie herhaaldelijk, waarbij elke cyclus wordt geregistreerd als een nieuwe sessie.
Stappen:
- Open je webshop in een privévenster in je browser en reageer niet op de cookiebanner.
- Observeer
_shopify_sgedurende 30 tot 60 seconden in het venster Cookies van de browser. - Controleer of de waarde herhaaldelijk verandert of dat de cookie verdwijnt en weer verschijnt, zolang de banner onbeantwoord blijft.
- Beantwoord de banner en controleer vervolgens of het gedrag stopt.
Controleer voor welke regio's je winkel is geconfigureerd om toestemming te vragen en zorg ervoor dat de banner de keuze van elke bezoeker aan Shopify doorgeeft via de Customer Privacy API, in plaats van cookies te wissen en opnieuw aan te maken terwijl de banner open is. Als analytics voor die bezoeker worden geblokkeerd en de cookie alsnog weer verschijnt, wordt deze door een andere app dan de toestemmingstool aangemaakt. Doorloop in dat geval de overige gebieden op deze pagina.
Webshopscripts en -logica
Niet alle rotatie wordt veroorzaakt door toestemmingsbeheer. Elk script of elke webshoplogica die _shopify_s verwijdert, blokkeert, roteert of opnieuw genereert tijdens een normaal bezoek, veroorzaakt rotatie. In één voorbeeld werd cart.js grofweg elke tien seconden aangeroepen en werden de cookiewaarden gelijktijdig opnieuw gegenereerd. In een ander voorbeeld was rotatie te herleiden naar een verkeerde classificatie van het domein die niet gerelateerd was aan toestemmingstools.
Stappen:
- Open het tabblad Netwerk in de ontwikkelaarstools en selecteer vervolgens Logboek behouden.
- Blijf 60 seconden op een pagina zonder er acties op uit te voeren.
- Houd de
_shopify_s-waarde in het venster Cookies in de gaten en controleer of verzoeken zich op korte termijn herhalen, in het bijzondercart.js. - Let er elke keer dat de waarde verandert op welk verzoek of script direct daaraan voorafgaand is uitgevoerd. Een verzoek dat zich herhaalt zonder de waarde te wijzigen, is niet de oorzaak.
- Zoek in de code van je thema, aangepaste scripts en tagmanagercontainers naar
document.cookieen_shopify_s. - Controleer of je webshop op één canoniek domein wordt weergegeven. Bekijk in het venster Cookies of
_shopify_smeerdere keren wordt weergegeven onder verschillende domeinen. - Bekijk onlangs geïnstalleerde apps en recente themawijzigingen. Als het gedrag recent is begonnen, is het mogelijk gerelateerd aan die wijzigingen.
Om dit op te lossen corrigeer je de code die de cookie schrijft. Zorg er bovendien voor dat omleidingen naar één canonieke hostnaam verwijzen voordat analytics worden uitgevoerd. Beperk of verwijder een herhalend verzoek pas nadat is bevestigd dat dit de waarde van _shopify_s verandert. De functies winkelwagen, voorraad en chat kunnen namelijk legitiem informatie opvragen zonder invloed te hebben op de cookie.
Het corrigeren van een script, app of domein dat de cookie overschrijft, heeft alleen invloed op hoe bestaande bezoekersactiviteit in sessies wordt gegroepeerd. De gegevens die worden verzameld, veranderen niet.
Opslag en werking van cookies
Rotatie is tot nu toe niet direct herleid naar cookie-attributen, maar het is verstandig dit uit te sluiten wanneer andere gebieden in orde zijn.
Stappen:
- Bekijk in het venster Cookies de waarden van Domein, Pad, Verloopt en SameSite voor
_shopify_s, en niet alleen de waarde ervan. - Bevestig dat de cookie niet wordt overschreven met een kortere levensduur of met een specifieker pad dan de instellingen van Shopify.
Om dit op te lossen verwijder je de code of app-instelling die de attributen van de cookie overschrijft.
Oplossing verifiëren
Bevestig de oplossing door de cookie te inspecteren, niet door je Analytics-rapporten te bekijken. Een stabiele _shopify_s-waarde tijdens een volledig bezoek geeft aan dat de oplossing heeft gewerkt. Sessiegegevens die voorafgaand aan de oplossing zijn geregistreerd, worden niet opnieuw verwerkt. In je historische rapporten worden dus nog steeds de onjuist verhoogde sessie-aantallen weergegeven.
Herhaal de stappen om te controleren of de sessiecookie roteert in een nieuw venster voor privé- of incognitobrowsen en bevestig de volgende resultaten:
| Controle | Verwacht resultaat |
|---|---|
| Navigeer door drie of vier pagina's zonder de toestemmingsbanner te beantwoorden. | _shopify_s wordt niet geplaatst of behoudt een stabiele waarde. |
| Herhaal de controle nadat er toestemming is gegeven. | _shopify_s behoudt een stabiele waarde. |
| Herhaal de controle nadat de toestemming is geweigerd. | _shopify_s wordt niet geplaatst of behoudt een stabiele waarde. |
| Navigeer van een productpagina naar de winkelwagen en ga vervolgens verder met browsen. | De _shopify_s-waarde blijft behouden. |
| Blijf 60 seconden op één pagina en bekijk het tabblad Netwerk. | Geen enkele herhalende aanvraag wijzigt de _shopify_s-waarde. |
Volgende stappen als de rotatie aanhoudt
Rotatie wordt veroorzaakt door code of een configuratie waar Shopify geen controle over heeft, dus de oplossing ligt bij degene die die code onderhoudt. Als je de onderdelen op deze pagina hebt doorgenomen en _shopify_s nog steeds roteert, neem dan contact op met de verantwoordelijke partij:
- Neem voor een platform voor toestemmingsbeheer of een andere app contact op met de ontwikkelaar van de app via de vermelding van de app in de Shopify App Store.
- Neem voor aangepaste themacode, aangepaste scripts of tagmanager-containers contact op met de ontwikkelaar of het bureau dat deze onderhoudt.
Vermeld de volgende gegevens zodat ze het gedrag kunnen reproduceren:
- De toestemmingsstatussen die je hebt getest en wat er bij elke status gebeurde.
- De
_shopify_s-waarden die je hebt genoteerd en de pagina of actie die voorafging aan elke wijziging. - Elke herhalende aanvraag die de waarde wijzigde en het script dat deze startte.
- De wijzigingen die je al hebt aangebracht.