> For the complete documentation index, see [llms.txt](https://academy.gopersonal.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://academy.gopersonal.ai/developers/track-personalization/track-personalizaciones.md).

# Track otras Personalizaciones

Este track aplica al resto de las personalizaciones —contenido web, pop up, notificaciones, código custom y recolector de feedback— y es el que alimenta el dashboard de [Analytics > Personalizaciones](/guia-de-usuario/analytics/personalizaciones.md).

{% hint style="info" %}
Si la variante se creó a partir de un **template de gopersonal**, el track ya viene incluido y el SDK lo envía automáticamente. La implementación descrita en esta página aplica cuando la variante se crea desde 0, a las personalizaciones de tipo **código custom**, y a los casos en que el sitio renderiza el contenido con su propio código.
{% endhint %}

## Momentos a trackear

Se debe trackear la impresión del contenido (cuando el cliente ve la personalización) y cuando hace click sobre la personalización.

## 1. Impresión del contenido

Debe enviarse **una vez por cada vez que el contenido se muestra al cliente**.

```javascript
// Pegar el track en el momento que el usuario ve la personalización. Las variables se completan dinamicamente a la hora de mostrar la personalización.
window.gsSDK?.createContentImpression('{{impressionId}}',{
  content: '{{gs_contentId}}',
  variantId: '{{gs_variantId}}',
  target: '{{gs_targetId}}'
});
```

{% hint style="warning" %}
La impresión debe dispararse cuando el contenido es efectivamente visible, no cuando se resuelve la personalización. Para contenidos que están debajo del fold conviene usar un `IntersectionObserver`.
{% endhint %}

## 2. Click sobre el contenido

Debe enviarse cada vez que el cliente interactúa con la personalización: clic en el banner, en el CTA del pop up, en la notificación o en cualquier elemento accionable del contenido.

```javascript
// Pegar el track en el momento que el usuario hace click sobre la personalización. Las variables se completan dinamicamente a la hora de mostrar la personalización. También es posible agregar tags (String) para identificar el click en la personalización, por ejemplo CTA o cancelar.
window.gsSDK?.clickContentImpression('{{impressionId}}',{
    content: '{{gs_contentId}}',
    tags: 'confirm'
})
```

## Verificación

Antes de dar la implementación por terminada, verificá que:

1. La impresión se envía una sola vez por visualización y no en cada re-render.
2. La impresión se envía únicamente cuando el contenido es visible para el cliente.
3. El clic se dispara en todos los elementos accionables del contenido.
4. En el dashboard de Analytics > Personalizaciones aparecen impresiones, sesiones personalizadas y conversiones para la personalización.

{% hint style="warning" %}
El track de gopersonal es independiente del de GA4. Verificar los eventos en el `dataLayer` **no** confirma que el track de gopersonal esté funcionando. Ver [Google Analytics > Otras personalizaciones](/developers/google-analytics/otras-personalizaciones.md) para el tracking de GA4.
{% endhint %}
