Besucher-ID beibehalten nach Wechsel disableCookies zu Cookie-Tracking

Wenn ich das Tracking mit disableCookies beginne, dann mir aber eine Einwilligung für Cookies vom Besucher einhole und beim nächsten Seitenaufruf mit Cookies tracke (also disableCookies nicht mehr aufrufe), dann werde ich als anderer Besucher gezählt. D.h. ich habe eine andere Besucher-ID.

Was muss ich tun, damit das nicht passiert und ich als derselbe Besucher geführt werde?

Hi Udo,

ich denke das Problem besteht weil es bis zum Zeitpunkt der Einwilligung kein Cookie mit einer ID vorhanden ist.
Sobald du aber einen Cookie mit einer ID hast ist diese Info höherwertig.

Infos dazu hier:
https://matomo.org/faq/general/faq_21418/

Mir würde hier folgende Lösung einfallen, die du einmal probieren könntest.
Speichere die initiale ID im SessionStorage des Browsers.

Diese ID schickst du dann immer mit dem Pageview mit.
Achtung die IDs immer vorher setzen, dann erst den Seitenbesuch abschicken.

Visitor-ID:
<script>
var visitor_id;
_paq.push([ function() { visitor_id = this.getVisitorId();
//console.log(visitor_id); 
</script>


USER-ID:
_paq.push(['setUserId', 'USER_ID_HERE']);
_paq.push(['trackPageView']);

Was du auch machen könntest is die Nutzer mit einer selbst erzeugten, generischen Variable zu versehen und diese dann immer mit einer CustomDimension mitzugeben.
Dadurch solltest du den Nutzer wieder finden können.
Egal welche IDs gesetzt werden.

Hallo @Trackingninja,
vielen Dank für deine Antwort.
Ich habe das auch bei Matomo angesprochen. Das Problem wurde erkannt und wird in der nächsten Version beseitigt sein.

Dort wird es für das Consent-Thema beim Einsatz von Cookies neue Methoden geben. So z.B. wird wohl eine dann neue Methode requireCookieConsent über der von disableCookies als Empfehlung stehen. Bei requireCookieConsent trackt dann Matomo auch schon ohne Cookie-Consent. Bei rememberCookieConsentGiven wird dann mit Cookies getrackt.

Noch zu deinem Code-Beispiel eine Anmerkung (da ich auch in etwa den Gedanken schon hatte): Tracke ich zu Beginn ohne Cookies steht im JavaScript die VisitorID nicht zur Verfügung. Die wird erst auf dem Server generiert.

Cookies are disabled.

- Matomo identifies this visitor by a fingerprint.
- On the backend a random visitorId is used which is not known to JavaScript.

https://github.com/matomo-org/matomo/issues/13056#issuecomment-650868590

Vielen Dank.
Udo

Noch zu deinem Code-Beispiel eine Anmerkung (da ich auch in etwa den Gedanken schon hatte): Tracke ich zu Beginn ohne Cookies steht im JavaScript die VisitorID nicht zur Verfügung. Die wird erst auf dem Server generiert.

Cookies are disabled.

- Matomo identifies this visitor by a fingerprint.
- On the backend a random visitorId is used which is not known to JavaScript.

https://github.com/matomo-org/matomo/issues/13056#issuecomment-650868590

Vielen Dank.
Udo

Stimmt, das macht die Umsetzung natürlich etwas schwieriger. :smiley:
Je nachdem wie es dann auch um die rechtliche Lage steht ist der LocalStorage oder Session Storage aber fsicherlich eine Übergangslösung.