Instalação e configuração de tag em site com AMP

O contador do Yandex Metrica executa JavaScript. Se você instalar o código da tag em um site que usa Páginas Móveis Aceleradas (AMP), as páginas do site não vão passar na validação. Isso ocorre porque a tecnologia AMP restringe o uso de JavaScript e HTML5. Para contornar esse problema, é possível instalar a tag de uma maneira especial.

Observação

Observe que, neste caso, as seguintes funcionalidades do Yandex Metrica não serão suportadas: E-commerce, Reprise de Sessão e rastreamento de cliques no botão Compartilhar.

Habilitação de tag em site com AMP

Atenção

Os sites que utilizam a tecnologia de Páginas Móveis Aceleradas (AMP) não conseguem coletar dados de análise de conteúdo.

Faça alterações no código HTML das páginas do seu site:

  1. O rastreamento de ações do usuário em sites com AMP utiliza o componente adicional amp-analytics. Adicione-o ao código da sua página, no interior do elemento head:

    <head>
        ...
            <script async custom-element="amp-analytics" src="https://cdn.ampproject.org/v0/amp-analytics-0.1.js"></script>
        ...
    </head>
    
  2. Edite o elemento body: adicione o elemento amp-analytics. Para que os dados da sessão sejam transmitidos para o Yandex Metrica, defina o atributo type para o valor metrika e use a variável counterId para definir o número da tag.

    <body>
        ...
            <amp-analytics type="metrika">
                <script type="application/json">
                    {
                        "vars": {
                            "counterId": "XXXXXX"
                            ...
                        }
                    }
                </script>
            </amp-analytics>
        ...
    </body>
    

Transmissão de dados

Atenção

Quando o usuário abre uma página AMP, o Yandex Metrica registra uma visualização (pageview). Isso significa que você não precisa transmitir esse evento para o Yandex Metrica. Se você o enviar, os relatórios do Yandex Metrica mostrarão um número errado de visualizações de página.

Para transmitir dados quando a tag for inicializada, use:

  • A variável yaParams para enviar parâmetros de sessão.
  • Os atributos de triggers para transmitir eventos, como conclusões de objetivo.

Envio de parâmetros de sessão e parâmetros de usuário

Exemplo de transmissão de parâmetros de sessão e parâmetros de usuário personalizados durante uma sessão, usando a variável yaParams:

...
"vars": {
             "counterId": "XXXXXX",
             "yaParams": "{\"key\":\"value\",\"__ymu\":{\"user_param_key\":\"user_param_value\"}}"
},
...

Você também pode transmitir apenas os parâmetros de sessão, ou apenas os parâmetros de usuário:

...
"vars": {
             "counterId": "XXXXXX",
             "yaParams": "{\"key\":\"value\"}"
},
...
...
"vars": {
             "counterId": "XXXXXX",
             "yaParams": "{\"__ymu\":{\"user_param_key\":\"user_param_value\"}}"
},
...

Taxa de rejeição precisa

Para obter a taxa de rejeição exata, use o atributo de acionamento timer:

{
    ...
    "triggers": {
        "notBounce": {
            "on": "timer",
            "timerSpec": {
                "immediate": false,
                "interval": 15,
                "maxTimerLength": 14
            },
            "request": "notBounce"
        },
        ...
    }
}

Conversão

Para rastrear a conclusão de objetivos quando um elemento específico da página for clicado, use o atributo de acionamento click.

{
    ...
    "triggers": {
        "someGoalReach": {
            "on": "click",
            "selector": "#Button",
            "request": "reachGoal",
            "vars": {
                "goalId": "superGoalId",
                "yaParams": "{\"key\": \"value\"}" // Quando o objetivo for concluído, o valor da variável do evento será usado para os parâmetros de sessão
            }
        },
        ...
    }
}

Campo

Tipo

Descrição

goalId

String

O identificador de objetivo definido durante a criação de um objetivo de evento JavaScript na interface do Yandex Metrica.

Rolagem de página

É possível usar o atributo de acionamento scroll para registrar a rolagem até um ponto específico da página (um percentual da altura da página). Você pode definir esse evento como objetivo.

{
    ...
    "triggers": {
        "halfScroll": {
            "on": "scroll",
            "scrollSpec": {
                "verticalBoundaries": [
                    50
                ]
            },
            "request": "reachGoal",
            "vars": {
                "goalId": "halfScrollGoal"
             }
        },
        "partsScroll": {
            "on": "scroll",
            "scrollSpec": {
                "verticalBoundaries": [
                    25,
                    90
                ]
            },
            "request": "reachGoal",
            "vars": {
                    "goalId": "partsScrollGoal"
            }
        },
        ...
    }
}

Rolagem de feed infinito

Pode-se usar um feed infinito para visualizar artigos sequencialmente. Para registrar cliques de artigo para artigo e visualizações individuais, use o acionador amp-next-page-scroll.

{
    ...
    "triggers": {
        "trackScrollThrough": {
             "on": "amp-next-page-scroll",
             "request": "pageview"
        },
        ...
    }
}

Carregamento de elemento de página individual

Use o atributo de acionamento visible para registrar quando os elementos de uma página são exibidos na tela do usuário.

Exemplo genérico do código da tag

Este exemplo de código é fornecido apenas para ilustrar as possibilidades da tag. Ao copiá-lo, exclua os comentários (//<…>), substitua XXXXXX pelo número da sua tag e faça outras alterações conforme necessário (por exemplo, configure a transmissão de parâmetros de usuário e parâmetros de sessão).

<body>
    ...
        <amp-analytics type="metrika">
            <script type="application/json">
                {
                    // Envio de parâmetros de sessão e parâmetros de usuário
                    "vars": {
                        "counterId": "XXXXXX",
                        "yaParams": "{\"key\":\"value\",\"__ymu\":{\"user_param_key\":\"user_param_value\"}}"
                    },
                    // Transmissão de gatilhos
                    "triggers": {
                        // Indicador preciso de rejeição
                        "notBounce": {
                            "on": "timer",
                            "timerSpec": {
                                "immediate": false,
                                "interval": 15,
                                "maxTimerLength": 14
                            },
                            "request": "notBounce"
                        },
                        // Rolagem de página
                        "halfScroll": {
                            "on": "scroll",
                            "scrollSpec": {
                                "verticalBoundaries": [
                                    50
                                ]
                            },
                            // Rastreamento de rolagem como objetivo
                            "request": "reachGoal",
                            "vars": {
                                "[goalId](*goalid)": "halfScrollGoal"
                            }
                        },
                        // Page scrolling
                        "partsScroll": {
                            "on": "scroll",
                            "scrollSpec": {
                                "verticalBoundaries": [
                                    25,
                                    90
                                ]
                            },
                            // Rastreamento de rolagem como objetivo 
                            "request": "reachGoal",
                            "vars": {
                                "[goalId](*goalid)": "partsScrollGoal"
                            }
                        },
                        // Rolagem de feed infinita
                        "trackScrollThrough": {
                            "on": "amp-next-page-scroll",
                            "request": "pageview"
                        }
                    }
                }
            </script>
        </amp-analytics>
    ...
</body>

Saiba mais

Fale conosco

Escrever um e-mail

Caso não tenha conseguido checar a tag de forma independente, siga as recomendações abaixo.

Isso pode acontecer pelos seguintes motivos:

  • A tag está instalada de maneira incorreta. Por exemplo, o CMS modificou o código da tag. Reinstale a tag ou entre em contato com o serviço de suporte do seu CMS.
  • Scripts inoperantes estão impedindo que a tag Yandex Metrica funcione no site. Isso pode ser verificado no console do navegador.
As recomendações não ajudaram

Isso significa que as informações estão sendo transmitidas para o Yandex Metrica. No entanto, os dados podem não estar sendo exibidos nos relatórios por algum dos seguintes motivos:

  • Os dados são enviados com um número diferente para uma tag.
  • A aba Filtros das configurações da tag está definida com filtros excessivamente restritivos. Remova filtros desnecessários.
  • A aba Filtros das configurações da tag está com o filtro Não contabilizar minhas sessões habilitado. Isso significa que a tag não registra as suas próprias sessões. Tente acessar o site com o navegador no modo "anônimo".
As recomendações não ajudaram

Carregamento de uma das páginas do site quando o usuário a acessa. Visualizações de página também incluem recarregamentos de página, atualizações de sites AJAX e envio de dados usando o método hit.

Tipo

String

Descrição

O identificador de objetivo definido durante a criação de um objetivo de evento JavaScript na interface do Yandex Metrica.