Brevemente: La idea principal es que tengo un sitio web con Google Analytics 4 (GA4) integrado y un widget independiente integrado en este sitio web, que también tiene GA4. Como resultado, los eventos se envían a ambos rastreadores. ¿Cómo puedo aislar eso el uno del otro?
Detallado: tenga 2 aplicaciones web de reacción. Uno es el sitio web principal y el otro está integrado en su widget (hecho como una aplicación de reacción que se construye con Webpack en 2 archivos: js y css). Este widget se puede integrar a cualquier sitio web con etiqueta de script y enlace css. Y este widget necesita tener Google Analytics. Pero un sitio web principal también puede tener integrado Google Analytics. Si este sitio web principal tiene Universal Analytics, está bien, los eventos enviados están aislados, pero si ambos tienen nuevos problemas de GA4, tienen lugar.
Intenté integrar GA en ambas aplicaciones [de prueba] con la ayuda de la biblioteca react-ga4. Como resultado, ambas cuentas de seguimiento reciben todos los eventos enviados desde el widget y el sitio web principal. Y también trató de usar en el sitio web principal una etiqueta de secuencia de comandos agregada manualmente y en la biblioteca react-ga4 de la aplicación de widgets. También todos los eventos van a todas partes. Inspeccionar
Luego intenté agregar scripts GA4 manualmente y tengo dos configuraciones para dos rastreadores. Sucede lo mismo: todos los eventos van a ambos rastreadores.
La pregunta principal ¿cómo aislar el envío de eventos?
<script async src="https://www.googletagmanager.com/gtag/js?id=TRACKING_ID_1” ></script> <script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag("js", new Date()); gtag("config", "TRACKING_ID_1”); </script> <!-- Global site tag 2 (gtag.js) - Google Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=TRACKING_ID_2” ></script> <script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag("js", new Date()); gtag("config", “TRACKING_ID_2); </script>```Creo que necesitas modificar un poco tu código de evento gtag.
Por favor tome una decisión sobre este documento .
gtag('event', 'sign_in', { 'send_to': 'G-XXXXXX-2' }); La idea principal es agregar una llamada de parámetro send_to y solicitar que el evento solo se envíe a la identificación de seguimiento.
Y si necesita configurar varias identificaciones de seguimiento.
Puedes configurar el segundo rastreador
No es necesario agregar el <script> nuevamente
<script async src="https://www.googletagmanager.com/gtag/js?id=TRACKING_ID_1"></script> <script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag("js", new Date()); gtag("config", "TRACKING_ID_1"); gtag("config", "TRACKING_ID_2"); </script>