---
metadata:
  - name: generator
    content: Diplodoc Platform v5.50.6
alternate:
  - https://yandex.com.tr/support/metrica/en/code/counter-spa-setup.md
  - https://yandex.com.tr/support/metrica/es/code/counter-spa-setup.md
  - https://yandex.com.tr/support/metrica/pt/code/counter-spa-setup.md
  - https://yandex.com.tr/support/metrica/ru/code/counter-spa-setup.md
  - https://yandex.com.tr/support/metrica/tr/code/counter-spa-setup.md
title: Cómo instalar y configurar la etiqueta para sitios SPA
description: Cómo instalar y configurar una etiqueta para sitios SPA.
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/support/metrica/es/llms.txt


# Cómo instalar y configurar la etiqueta para sitios SPA

## Inicialización de etiquetas {#section_r5y_2rf_qfb}

Para usar una etiqueta de Yandex Metrica en sitios SPA, siga estos pasos:

1. [Cree e instale el código de etiqueta en su sitio](https://yandex.com.tr/support/metrica/es/quick-start.md), si aún no está instalado. 
1. Al inicializar la etiqueta, establezca el parámetro `defer` en `true`. Esto es necesario para desactivar el envío automático de datos sobre [vistas](*просмотрах). Para registrar impresiones de página, use la función `hit`, como se describe en la sección 3.
    Ejemplo de inicialización de la etiqueta:
    
    ```
    ym(XXXXXXXX, 'init', {
        defer: true,
        clickmap:true,
        trackLinks:true,
        accurateTrackBounce:true
    })
    ```
    
1. Para asegurarse de que Yandex Metrica registre los cambios importantes en la página, analice la lógica de su web e inserte la función [hit](https://yandex.com.tr/support/metrica/es/objects/hit.md) en las partes adecuadas de su código, de modo que se active cada vez que considere que la página ha cambiado.
    Invoque la función `hit`:
    
    ```
    ym(XXXXXXXX, 'hit', url[, options]);
    ```
    Parámetros que se pueden pasar en la función `hit`:
    
    <!-- source: es/_includes/objects/hit/id-hit/hit-params.md -->
    #|
    ||
    **Parámetro**
    |
    **Valor predeterminado**
    |
    **Tipo**
    |
    **Descripción**
    ||
    ||
    `url`
    |
    —
    |
    Cadena de caracteres
    |
    La URL de la página desde la cual se realizó la vista. Si no se proporciona la URL, se utilizará el valor de [`window.location.href`](https://yandex.com.tr/support/metrica/es/data/visit-params-example.md#goal)
    ||
    ||
    `opciones`
    |
    —
    |
    Objeto
    |
    —
    ||
    ||
    campos de `opciones`
    |
    >
    |
    >
    |
    >
    ||
    ||
    `options.callback`
    |
    —
    |
    Función
    |
    La función de retorno de llamada a invocar después de enviar datos de vista de página
    ||
    ||
    `options.ctx`
    |
    —
    |
    Objeto
    |
    Contexto accedido por la palabra clave `this` en la función de devolver llamada
    ||
    ||
    `options.params`
    |
    —
    |
    Objeto
    |
    Parámetros de sesión
    ||
    ||
    `options.referer`
    |
    —
    |
    Cadena de caracteres
    |
    La URL desde la que el usuario cargó el contenido de la página actual
    ||
    ||
    `options.title`
    |
    `document.title`
    |
    Cadena de caracteres
    |
    Título de la página actual
    ||
    ||
    Campos para el objeto `options.params`:
    |
    >
    |
    >
    |
    >
    ||
    ||
    `order_price`
    |
    —
    |
    Doble
    |
    [Ingresos por meta](https://yandex.com.tr/support/metrica/es/objects/hit.md#price). Puede establecer el costo en una moneda o unidades convencionales.
    ||
    ||
    `moneda`
    |
    —
    |
    Cadena de caracteres
    |
    Use este campo si desea pasar el costo de la meta en moneda. Yandex Metrica reconoce un código de moneda de tres letras [ISO 4217](https://www.six-group.com/en/products-services/financial-information/data-standards.html#scrollTo=currency-codes).

    <!-- source: es/_includes/ecommerce/data/id-about/currency-note.md -->
    Si elige una moneda diferente, se enviarán valores nulos en lugar de monedas e importes.
    <!-- endsource: es/_includes/ecommerce/data/id-about/currency-note.md -->
    ||
    |#
    <!-- endsource: es/_includes/objects/hit/id-hit/hit-params.md -->
    
    {% cut "Ejemplo de invocación de la función `hit`" %}
    
    ```javascript
    ym(XXXXXXXX, 'init', {});
    //...
    ym(XXXXXXXX, 'hit', '#contacts',{params:{
        title: 'Información de contacto',
        referer: 'http://example.com/#main'
    }});
    ```
    
    {% endcut %}
    

## Envío de conversiones {#section_bpg_5dk_yfb}

Para rastrear eventos del sitio que no cambian la URL de la página, use la función `reachGoal`:
```
ym(XXXXXXXX, 'reachGoal', 'TARGET_NAME);
```

[Ejemplos de configuración de objetivos en el fragmento de código](https://yandex.com.tr/support/metrica/es/objects/reachgoal.md#reach_goal_examples).

## Transmisión de parámetros de sesión y parámetros de usuario {#section_ypx_lsf_qfb}


{% list tabs %}

- Parámetros de sesión

  
  ```
  ym(XXXXXXXX, 'params', {param1: 'param_value1'})
  ```
  

- Parámetros de usuario

  
  ```
  ym(XXXXXXXX, 'userParams', {param1: 'param_value1'})
  ```

{% endlist %}


## Transmisión de datos de comercio electrónico {#section_nsk_vtf_qfb}

Para transmitir datos, [habilite el comercio electrónico](https://yandex.com.tr/support/metrica/es/ecommerce/about.md) en Yandex Metrica.

Para recopilar correctamente los datos de comercio electrónico, debe asegurarse de llamar la función `hit` cuando el usuario carga una página nueva.

{% cut "Ejemplo de envío de datos de comercio electrónico" %}


```
dataLayer.push({
    "ecommerce": {
        "purchase": {
            "actionField": {
                "id": "TRX987"
            },
            "products": [
                {
                    "id": "25341",
                    "name": "Sudadera con gorro de Yandex (hombre)",
                    "price": 1345.26,
                    "brand": "Yandex",
                    "category": "Ropa/Ropa de hombre/Sudaderas",
                    "variant": "Anaranjado"
                },
                {
                    "id": "25314",
                    "name": "Sudadera con gorro de Yandex (mujer)", 
                   "price": 1543.62,
                    "brand": "Yandex",
                    "category": "Ropa/Ropa de mujer/Sudadera",
                    "variant": "Blanco",
                    "quantity": 3
                }
            ]
        }
   }
});
```


{% endcut %}

## Cómo habilitar Reproducir sesión, clics en mapas, mapas de enlaces y Análisis de formularios {#section_bg3_xtf_qfb}

Puede [conectar Reproducción de sesión](https://yandex.com.tr/support/metrica/es/webvisor/info.md), [mapas de clics](https://yandex.com.tr/support/metrica/es/behavior/click-map.md) y [mapas de enlaces](https://yandex.com.tr/support/metrica/es/behavior/link-map.md) a un sitio SPA. El mapa de desplazamiento, el análisis de formularios y la Reproducción de Sesión 1.0 no son compatibles.

## Desactivación de Yandex Metrica en SPA {#destruct}

Para desactivar Yandex Metrica, use el método `.destruct()` en la instancia de la etiqueta. Este método solo funciona en la [nueva versión](https://yandex.com.tr/support/metrica/es/general/tag-info.md) del código de la etiqueta de Yandex Metrica.

- Para etiquetas inicializadas a través del constructor `Ya.Metrika2`:
    
    ```    
    // Inicializar la etiqueta
    const counter = new Ya.Metrika2(counterId);
    
    //  Desinicializar la etiqueta
    counter.destruct()    
    ```
    
- Si la inicialización ocurre con configuraciones:
    
    ```    
    // Inicializar la etiqueta
    const counter = new Ya.Metrika2({
      id: counterId,
      trackLinks: true
    });

    // Desinicializar la etiqueta
    counter.destruct()    
    ```
    

- Para etiquetas inicializadas a través del método `ym`:
    
    ```
    // Inicializar la etiqueta
    ym(XXXXXXXX, 'init', {});
    
    // Desinicializar la etiqueta
    ym(XXXXXXXX, 'destruct')
    ```
    
Use el método `destruct` solo para detener Yandex Metrica.

<!-- source: es/_includes/buttons/chat-button.md -->
[Chatee con nosotros](https://yandex.com.tr/chat/#/user/036e6a02-3620-9cdc-4c5e-a34667a7379e?utm_source=spravka){.button}

<!-- source: es/_includes/styles/href-to-button.md -->

<!-- endsource: es/_includes/styles/href-to-button.md -->
<!-- endsource: es/_includes/buttons/chat-button.md -->

<!-- source: es/_includes/code/texing-button.md -->
<div class="cut-button">

{% cut "Escriba un correo electrónico" %}

<!-- source: es/_includes/popup/id-qanda/check1.md -->
Si no pudo [comprobar la etiqueta de manera independiente](https://yandex.com.tr/support/metrica/es/general/check-counter.md), siga estas recomendaciones.
<!-- endsource: es/_includes/popup/id-qanda/check1.md -->

{% list tabs radio %}

- No se envían datos a la consola

  {% include [qanda-check2-2](../_includes/popup/id-qanda/check2-2.md) %}

  {% cut "Las recomendaciones no fueron útiles" %}


  <div style="padding: 15px;
         margin: 10px 0;
         background: #FFFFFF;
         border-radius: 10px;
         border: 1px solid var(--g-color-line-generic);">
    <iframe style="background: #FFFFFF;"
            height="700"
            width="100%"
            frameborder="0"
            src="https://forms.yandex.com.tr/surveys/1706/?&theme=Dannye v konsoli ne otpravlyayutsya&iframe=1&lang=tr">
    </iframe>
  </div>

  {% endcut %}

- Hay datos en la consola, pero no aparecen informes

  <!-- source: es/_includes/popup/id-qanda/check2-3.md -->
  Esto significa que la información se está transmitiendo a Yandex Metrica. Sin embargo, los datos posiblemente no aparezcan en los informes por alguna de los siguientes motivos:
  <!-- endsource: es/_includes/popup/id-qanda/check2-3.md -->

  <!-- source: es/_includes/popup/id-qanda/check2-4.md -->
  - Los datos se envían a una etiqueta con un número diferente.
  - Hay filtros muy estrictos definidos en la pestaña **Filtros** de la configuración de la etiqueta. Elimine los filtros innecesarios.
  - La pestaña **Filtros** en la configuración de la etiqueta tiene el filtro **No contar mis sesiones** habilitado. Esto significa que la etiqueta no registra sus propias sesiones. Intente acceder al sitio con su navegador en modo “incógnito”.
  <!-- endsource: es/_includes/popup/id-qanda/check2-4.md --> 

  {% cut "Las recomendaciones no fueron útiles" %}


  <div style="padding: 15px;
           margin: 10px 0;
           background: #FFFFFF;
           border-radius: 10px;
           border: 1px solid var(--g-color-line-generic);">
    <iframe style="background: #FFFFFF;"
              height="700"
              width="100%"
              frameborder="0"
              src="https://forms.yandex.com.tr/surveys/1706/?&theme=Dannye v konsoli est, no otchety ne otobrazhayutsya&iframe=1&lang=tr">
    </iframe>
  </div>

  {% endcut %}

{% endlist %}

{% endcut %}

</div>

<!-- source: es/_includes/styles/cut-button.md -->

<!-- endsource: es/_includes/styles/cut-button.md -->
<!-- endsource: es/_includes/code/texing-button.md -->

<!-- source: es/_includes/footer-links.md -->
- - -

<div class="borderless-table">

#|
||
Enlaces útiles

- [Etiqueta de demostración](https://metrica.yandex.com.tr/r/dashboard?)
- [Agregar una etiqueta](https://metrica.yandex.com.tr/add/)
- [Configuración gratuita de etiquetas](https://yandex.com.tr/promo/freeservice/metrica?utm_source=help_metrica_tr&utm_medium=cpc&utm_campaign=1)
- [Yandex Metrica API](https://tech.yandex.com.tr/metrika/)
- [Sugiera su idea](https://yandex.com.tr/support/metrica/troubleshooting/idea.html)
- [Discutir en Telegram](https://t.me/yandexmetrika)
|
Capacitación en línea

- [Obtener un certificado de Yandex Metrica](https://yandex.ru/adv/expert/exam/metrika/?utm_source=metrika_help&utm_medium=web&utm_campaign=static&utm_content=useful_links)


- [Tomar un curso de capacitación](https://yandex.com/adv/edu/online/metrika?utm_source=metrika_help&utm_medium=web&utm_campaign=static&utm_content=useful_links)

||
|#

</div>

<!-- source: es/_includes/styles/table-style.md -->

<!-- endsource: es/_includes/styles/table-style.md -->
<!-- endsource: es/_includes/footer-links.md -->

<!-- source: es/_includes/styles/cut-button.md -->

<!-- endsource: es/_includes/styles/cut-button.md -->

<!-- source: es/_includes/styles/href-to-button.md -->

<!-- endsource: es/_includes/styles/href-to-button.md -->

[*просмотрах]: Cargando una de las páginas de un sitio cuando un usuario navega a ella. Las visitas a la página también incluyen las actualizaciones de la página, las actualizaciones del sitio AJAX y el envío de datos mediante el método [hit](https://yandex.com.tr/support/metrica/es/objects/hit.md).
{% included (../_includes/popup/id-qanda/check2-2.md) %}
   Esto puede suceder por los siguientes motivos:
   - La etiqueta no está instalada correctamente. Por ejemplo, el CMS modificó el código de la etiqueta. Vuelva a instalar la etiqueta o comuníquese con el servicio de asistencia técnica de su CMS (sistema de administración de contenido).
   - Los scripts rotos están impidiendo que la etiqueta de Yandex Metrica funcione en el sitio. Puede comprobarlo en la consola del navegador.


{% endincluded %}