Acompanhamento de páginas

Com o acompanhamento de páginas, você pode contabilizar o número de visualizações de determinada página do seu website. As páginas frequentemente correspondem a um documento HTML inteiro, mas elas também podem representar conteúdos carregados de modo dinâmico. Isso é chamado de "exibições virtuais de página".

Este guia explica como implementar o acompanhamento de páginas com o analytics.js.

Visão geral

O snippet de acompanhamento JavaScript inclui um comando para criar um objeto de acompanhamento e, depois, outro comando para enviar uma exibição de página ao Google Analytics. Quando o rastreador é criado, vários campos são definidos com base no contexto de navegação. O campo title é definido como o valor de document.title, e o campo location é definido como o valor de document.location, ignorando a parte de âncora do URL.

Quando o comando send é executado, os campos title e location armazenados no rastreador são enviados, e o Google Analytics usa esses valores para mostrar a você quais páginas os usuários acessaram.

O rastreador padrão não define o campo page. Entretanto, se você o definir manualmente, esse valor será usado como o caminho da página nos relatórios, substituindo o valor do campo location.

Implementação

Os hits de exibição de página podem ser enviados por meio do comando send e da especificação de um hitType de pageview. O comando send tem a seguinte assinatura para o tipo de hit pageview:

ga('send', 'pageview', [page], [fieldsObject]);

Campos de exibição de página

A tabela a seguir resume os principais campos relevantes para o acompanhamento de exibições de página. Para ver mais detalhes (e alguns campos adicionais), consulte a seção Informações de conteúdo da referência de campo.

Nome do campo Tipo de valor Obrigatório Descrição
title texto não O título da página (por exemplo, página inicial)
location texto não * URL da página acompanhada.
page texto não * A parte do caminho de um URL. Esse valor deve começar com uma barra (/).

*  Embora os campos page e location não sejam obrigatórios, um deles precisa estar presente. Caso contrário, o hit será inválido.

Exemplos:

O comando a seguir envia um hit de exibição de página ao Google Analytics e inclui o caminho da página atual.

ga('send', 'pageview', location.pathname);

Assim como acontece com todos os comandos send, os campos transmitidos nos parâmetros de conveniência também são especificados no fieldsObject. O comando acima pode ser reescrito como:

ga('send', {
  hitType: 'pageview',
  page: location.pathname
});

Modificação de URLs de páginas

Em alguns casos, o URL que você deseja enviar ao Google Analytics é diferente do URL que aparece na barra de endereço do navegador do usuário. Por exemplo, considere um site com algumas páginas em que os usuários podem fazer login e visualizar/editar suas informações pessoais. Se esse site tem páginas diferentes para informações pessoais, informações da conta e configurações de notificação, os URLs dessas páginas podem ter esta aparência:

  • /user/USER_ID/profile
  • /user/USER_ID/account
  • /user/USER_ID/notifications

Se você quiser saber qual é o total de pessoas que acessam cada uma dessas páginas, a inclusão de um valor de User ID exclusivo nos URLs tornará isso muito mais difícil.

Para resolver esse problema, especifique um valor de page com o User ID removido:

// Checks to see if the current user's userID is
// found in the URL, if it is, remove it.
// (Note, this assume the user ID is stored
// in a variable called `userID`)

if (document.location.pathname.indexOf('user/' + userID) > -1) {
  var page = document.location.pathname.replace('user/' + userID, 'user');
  ga('send', 'pageview', page);
}

Assim, os seguintes valores de page serão enviados para todos os usuários:

  • /user/profile
  • /user/account
  • /user/notifications

Se a página atual estiver enviando outros hits (como eventos), convém verificar se todos os hits são enviados com o URL correto. Nesses casos, você deve atualizar o campo page no rastreador em vez de transmiti-lo no comando send.

A definição dele no rastreador garante que o novo valor de page seja usado para todos os hits subsequentes:

if (document.location.pathname.indexOf('user/' + userID) > -1) {
  var page = document.location.pathname.replace('user/' + userID, 'user');

  // Sets the page value on the tracker.
  ga('set', 'page', page);

  // Sending the pageview no longer requires passing the page
  // value since it's now stored on the tracker object.
  ga('send', 'pageview');
}

Acompanhamento de exibições virtuais de página

Atualmente, muitos websites carregam conteúdo de maneira dinâmica por meio do AJAX sem exigir um carregamento completo de cada "página". Tais sites são normalmente chamados de Aplicativos de página única (SPAs).

Se seu website carrega o conteúdo da página de maneira dinâmica e atualiza o URL do documento, geralmente convém enviar exibições de página adicionais para acompanhar essas "exibições virtuais de página". Para ver os detalhes completos da implementação, consulte o guia sobre Acompanhamento de aplicativos de página única com o analytics.js.