Cookies e identificação do usuário com gtag.js

A gtag.js utiliza cookies para identificar usuários únicos nas sessões de navegação. Nesta página, explicamos como personalizar as configurações de cookies.

.

A tabela a seguir mostra os valores padrão de campos de cookies usados pelo gtag.js:

Nome do campo Tipo de valor Valor padrão
cookie_domain string auto
cookie_expires integer 63072000 (dois anos, em segundos)
cookie_prefix string _ga
cookie_update boolean true
cookie_flags string

Se você quiser mudar esses valores, atualize a config da sua propriedade para especificá-la na lista de parâmetros. Por exemplo:

gtag('config', 'GA_MEASUREMENT_ID', {
  'cookie_prefix': 'MyCookie',
  'cookie_domain': 'blog.example.com',
  'cookie_expires': 28 * 24 * 60 * 60  // 28 days, in seconds
});

A configuração automática de domínio de cookies da gtag.js fica ativada por padrão. Nesse caso, a gtag.js define os cookies no domínio de nível mais alto possível. Por exemplo, se o endereço do seu site for blog.example.com, eles serão adicionados no domínio example.com. Se a biblioteca detectar que um servidor está sendo executado no local (por exemplo, localhost), ela vai definir cookie_domain automaticamente como 'none'. Assim, os cookies serão definidos usando o domínio completo do local do documento.

Para desativar a configuração automática de domínio de cookies, atualize a config da sua propriedade especificando um valor no parâmetro cookie_domain:

gtag('config', 'GA_MEASUREMENT_ID', {
  'cookie_domain': 'blog.example.com'
});

Para evitar conflitos com outros cookies, altere o prefixo que será adicionado antes dos cookies definidos pela gtag.js. Por exemplo, o nome padrão do cookie de código usado pelo Google Analytics é _ga. O código abaixo fará com que o cookie receba o nome example_ga.

gtag('config', 'GA_MEASUREMENT_ID', {
  'cookie_prefix': 'example'
});

O tempo de validade do cookie é atualizado em cada carregamento de página para a hora atual mais o valor do campo cookie_expires. Isso significa que, se cookie_expires expirar em 1 semana e um usuário acessar a página com o mesmo navegador em 5 dias, o cookie vai ficar disponível por mais 1 semana. Dessa forma, esse usuário vai aparecer como o mesmo visitante no Google Analytics. No entanto, se ele acessar a página depois da expiração do cookie original, um novo cookie será criado, e as visitas serão consideradas acessos de pessoas diferentes.

Ao definir o valor de cookie_expires como 0 (zero) segundos, você criará um cookie com base na sessão, que vai expirar quando a sessão atual do navegador terminar.

gtag('config', 'GA_MEASUREMENT_ID', {
  'cookie_expires': 0
});

Quando cookie_update for definido como true (o valor padrão), a gtag.js vai atualizar os cookies em cada carregamento de página. Dessa forma, a expiração é definida em relação à visita mais recente ao site. Por exemplo, se o cookie expirar em uma semana e o usuário acessar a página com o mesmo navegador a cada 5 dias, a validade será atualizada em cada visita e, portanto, nunca vai expirar.

Quando ele for definido como false, os cookies não serão atualizados em cada carregamento de página. Dessa forma, a expiração vai ter como base a primeira visita do usuário.

gtag('config', 'GA_MEASUREMENT_ID', {
  'cookie_update': false
});

Quando definidas, anexam sinalizações adicionais ao cookie. Elas devem ser separadas por ponto e vírgula.

gtag('set', {
  'cookie_flags': 'SameSite=None;Secure'
});

Definir o User ID

Um User ID é uma string de ID exclusiva, persistente e sem identificação pessoal que representa um usuário. Com ele, você faz a análise de grupos de sessões em dispositivos diferentes. Para saber por que você deve implementar o ID do usuário, consulte o artigo Vantagens do User ID.

Se você quiser fazer a implementação com a gtag.js, atualize a config da sua propriedade:

gtag('config', 'GA_MEASUREMENT_ID', {
  'user_id': 'USER_ID'
});

Você pode configurar a gtag.js para não ler ou gravar cookies antes de ter o consentimento do usuário. Para saber mais, consulte Ajustar o comportamento da tag com base no consentimento.