Instalar el snippet
Añade el SDK a tu sitio en un paso y verifica la instalación.
Instalar Growth Lab requiere una sola etiqueta. No hay app que autorizar, ni tema que modificar más allá de esta línea.
El snippet
Copia el snippet desde Sitios → Instalación en el panel y pégalo en el <head> de tu sitio, lo más arriba posible:
<script
src="https://cdn.growthlab.ecomlabs.dev/sdk/v1/bootstrap.js"
data-site-id="site_TU_ID_PUBLICO"
async
></script>
El atributo data-site-id identifica tu sitio. Es público —viaja en el HTML de cada página— pero no es adivinable ni sirve para leer datos: la API rechaza cualquier lectura que no venga de una sesión autenticada de tu organización.
Por qué en el <head> y no antes de </body>
El SDK aplica los cambios de una variante antes de que el visitante vea la página. Cuanto más tarde se cargue, más probable es un parpadeo visible. Con async la etiqueta no bloquea el renderizado, así que ponerla arriba no cuesta rendimiento.
Qué pasa al cargar
bootstrap.js(≈2.4 KB gzip) establece la identidad del visitante en una cookie propia y enlocalStorage.- Descarga la configuración firmada de tu sitio desde el CDN.
- Si hay experimentos activos, carga
experiments.jsy aplica la variante asignada. - Carga
analytics.jsy empieza a registrar pageviews, clics, scroll y errores.
replay.js, shopify.js y editor.js solo se descargan si los necesitas. Un sitio que no graba sesiones nunca paga esos bytes.
Verificar la instalación
En Sitios → Instalación, pulsa Verificar. La comprobación no busca la etiqueta en tu HTML: consulta si el colector realmente recibió eventos en la última hora y desde qué dominio.
Eso importa porque buscar el <script> en el HTML da falsos negativos en cualquier sitio que renderice con JavaScript o inyecte la etiqueta por gestor de etiquetas.
Resultados posibles:
| Estado | Significado |
|---|---|
verified |
Llegaron eventos desde un dominio registrado. |
wrong_domain |
El snippet funciona, pero está en un dominio que no registraste. |
pending |
Aún no llegó ningún evento. Carga una página con el snippet. |
Registrar dominios
El colector descarta eventos cuyo origen no coincida con el dominio principal del sitio ni con sus dominios permitidos. Sin esto, cualquiera podría poner tu site-id en su propia página y contaminar tus datos.
Registra todos los hosts que uses:
tienda.com(dominio principal)www.tienda.comstaging.tienda.comlocalhostmientras integras en local
Los subdominios del dominio principal se aceptan automáticamente. evilTienda.com no coincide con tienda.com.
Content Security Policy
Si tu sitio tiene CSP, permite el CDN y el colector:
script-src 'self' https://cdn.growthlab.ecomlabs.dev;
connect-src 'self' https://events.growthlab.ecomlabs.dev https://sessions.growthlab.ecomlabs.dev https://cdn.growthlab.ecomlabs.dev;
Verificar integridad (opcional)
Cada bundle publica su hash SHA-384 en /sdk/v1/size-report.json. Si quieres fijar la versión exacta:
<script
src="https://cdn.growthlab.ecomlabs.dev/sdk/v1/bootstrap.js"
data-site-id="site_TU_ID_PUBLICO"
integrity="sha384-..."
crossorigin="anonymous"
async
></script>
Ten en cuenta que al fijar el hash dejarás de recibir correcciones del SDK hasta que lo actualices.