Product Analytics

Melhores práticas para identificar usuários

Floresta
Business Development Representative

Melhores práticas para identificar usuários

As chamadas mais importantes que você faz com a Segment são as chamadas de rastreamento e identificação. Com a chamada de rastreamento, você pode atribuir ações em seu site ou aplicativo a indivíduos e obter uma melhor compreensão de suas atividades, identidade e padrões de uso ao longo do tempo.

Ao usar a chamada de Identificação com a chamada de rastreamento, você pode começar a criar uma imagem completa das interações de um usuário com seus sistemas e ajudar a reduzir o número de Monthly Tracked Users pelos quais você é cobrado.

Geração de AnonymousId

As bibliotecas da Segment geram um anonymousId para cada usuário, mesmo antes de identificá-los.

anonymousId é uma sequência de 36 caracteres, gerada aleatoriamente e atribuída automaticamente a um usuário em sua primeira visita ao seu site ou aplicativo móvel. Você pode usar o anonymousId para linkar eventos executados pelo usuário enquanto ele navega pelo seu site. Ao acompanhar o anonymousId, você pode atribuir atividades ao longo de vários dias ao mesmo usuário coletando todas as atividades com esse ID. Se um usuário optar por se registrar em seu site ou fazer login em seu aplicativo, você poderá identificá-lo e ainda incluir o  anonymousId no payload do evento com o novo userId.

Dica! Somente as bibliotecas de dispositivos mobile e de sites da Segment geram automaticamente um arquivo anonymousId. Se você usa as bibliotecas do Segment's Server, deve gerar um anonymousId manualmente. Pode ser qualquer identificador pseudo-exclusivo, por exemplo, você pode usar um sessionId de um servidor de back-end.

Identificando usuários

O método da Segment para Identificar permite vincular um usuário às suas ações e registrar características sobre ele. Ele inclui um ID de usuário exclusivo e registra todas as características que você conhece sobre eles, como endereço de e-mail e nome.

A Segment recomenda que você use um identificador de usuário exclusivo que não será alterado para seu userId, por exemplo, um ID de banco de dados dos sistemas internos de sua organização. (Ver abaixo)

Quando você faz uma chamada de Identificação usando o Analytics.js, a Segment salva o userId do cookie no navegador e grava todas as características do usuário no armazenamento local. Se você estiver usando uma das bibliotecas móveis da Segment, as características do  userId serão armazenadas na memória do dispositivo. Isso possibilita anexar os dados do usuário a todas as chamadas de página ou de rastreamento subsequentes  para o usuário, para você poder atribuir adequadamente essas ações.

Se um usuário retornar ao seu site depois que o cookie expirar, o Analytics.js procurará um ID antigo no usuário localStorage e, se for encontrado, o definirá como o ID do usuário novamente em um novo cookie. Se o usuário limpar seus cookies e localStorage , todos os IDs serão removidos. O usuário recebe um completamente novo anonymousId na próxima vez que visitar a página.

Melhores opções para userIds

Um ID de usuário deve ser um identificador robusto, estático e exclusivo pelo qual você reconhece um usuário em seus próprios sistemas. Como esses IDs são consistentes ao longo da vida do cliente, você deve incluir um ID de usuário nas chamadas de identificação com a maior frequência possível.

Idealmente, o ID do usuário pode ser um ID do banco de dados. Por exemplo, se você estiver usando o MongoDB, pode ser um identificador de linha e se parecer com 507f191e810c19729de860ea. Eles também podem ser UUIDs que você gera em algum lugar em seu aplicativo. Você também pode usar identificadores obtidos de outras ferramentas - como Shopify ou Braze - no entanto, essa abordagem pode levar a uma complexidade extra em seus sistemas.

A Segment não recomenda o uso de endereços de e-mail simples ou nomes de usuário como ID de usuário, pois eles podem mudar com o tempo. A Segment recomenda que você use IDs estáticos para que os IDs nunca mudem. Ao usar um ID estático, você ainda pode reconhecer o usuário em suas ferramentas de análise, mesmo que o usuário altere o endereço de e-mail. E ainda melhor, você pode vincular seus dados analíticos com seu próprio banco de dados interno.

Dica! Mesmo que você não use um endereço de e-mail ou um nome de usuário como ID de usuário, você ainda deve enviá-los na carga de análise como traits.

Quando fazer chamada de Identificação?

Você deve fazer uma chamada de Identificação nas seguintes situações:

  • Quando você cria um usuário (e assim é atribuído um userId)
  • Quando um usuário altera informações em seu perfil.
  • Quando um usuário faz login.
  • Opcionalmente, quando você chama Identificar ao carregar qualquer página Acessível por um usuário conectado.

Mesclando perfis de usuários identificados e anônimos

A ilustração abaixo mostra uma linha do tempo com as interações de um usuário em um site, incluindo exemplos de chamadas de API acima que mostram chamadas de segmento e o usuário anonymousId e userId.

Quando o usuário visita uma página pela primeira vez, o Analytics.js atribui automaticamente ao usuário um anonymousId e o salva no armazenamento local do usuário. À medida que o usuário interage com o site, por exemplo, clicando em páginas diferentes, o Analytics.js inclui isso anonymousId e algumas informações contextuais em cada chamada de página e acompanhamento. As informações contextuais podem ser o endereço IP do usuário, navegador e muito mais.

Quando um usuário se inscreve para criar uma conta no site, os eventos .identify(UID) são acionados, nessa ordem. .track(“Signed Up”) você extrai o userId exclusivo para o usuário de seus sistemas e o envia para a biblioteca de segmentos para poder rotular os eventos posteriores desse usuário com seu ID. A chamada de rastreamento posterior ("Inscrito") contém o userId e o coletado automaticamente anonymousId para o usuário e qualquer outra informação que você capturar sobre ele - como nome, sobrenome e endereço de e-mail.

O exemplo abaixo mostra uma chamada de Identificação incluindo características do usuário. Ele usa um ID de banco de dados (97980cfea0067) como o userId.

analytics.identify("97980cfea0067", {

name: "Peter Gibbons", //user trait

  email: "peter@example.com", //user trait

  plan: "premium" //user trait

});

Para uma chamada Track, as informações sobre esse evento são armazenadas no context campo ou nas propriedades do evento. O exemplo abaixo mostra uma chamada Track incluindo propriedades que informam sobre o usuário.

analytics.track("Signed Up", {

  userId: "97980cfea0067", //event property

  name: "Peter Gibbons", //event property

  email: "peter@example.com", //event property

  plan: "premium" //event property

});

Além disso, o Analytics.js adiciona um message_id e quatro carimbos de data/hora à chamada.

Agora, à medida que o usuário interage com seu site e diferentes botões ou links que você rastreia usando o Segment, eles userId e anonymousId são enviados com cada chamada de API de rastreamento.

Exemplos de mesclagem de UserID

Vamos passar por mais alguns cenários para explicar como um anonymousId é atribuído e como ele pode ser mesclado com um UID.

Cenário nº 1 - Dispositivo único de vários dias

Se um usuário clicar em um anúncio e for direcionado para uma página da web, ele receberá um anonymousId. Enquanto este usuário é anônimo, eles navegam para diferentes páginas e clicam no site. Digamos que eles voltem dois dias depois do mesmo dispositivo, se inscrevam e recebam um userId.

Para simplificar, estamos assumindo que o usuário não limpou seus cookies ou localStorage, onde o original anonymousId está armazenado. Se tivessem, eles receberiam um novo anonymousId quando visitassem o site, e o userId que eles obtivessem ao se registrarem no site não seriam anexados às atividades rastreadas com o antigo anonymousId.

Cenário nº 2 - Vários dias, vários dispositivos, login único

Nesse cenário, a pessoa usa um navegador da Web e um aplicativo móvel para interagir com seu site. Em cada caso, eles são atribuídos a um anonymousId. Nesse cenário, o usuário se inscreve no navegador da Web, portanto, o Segment atribui à sessão da Web userId um arquivo. No entanto, como eles não efetuam login no aplicativo móvel, o Segment não pode vincular a atividade móvel a esse usuário específico. A atividade do aplicativo móvel permanece anônima, a menos que eles façam login no aplicativo móvel.

Cenário nº 3 - Vários dias, vários dispositivos, vários logins

Semelhante ao cenário anterior, o usuário acessou seu site e aplicativo móvel e também fez login em ambos. Nesse caso, ambas as sessões na Web e no aplicativo para dispositivos móveis recebem o userId, para que o Segmento possa vincular a atividade anônima na Web e em dispositivos móveis a esse usuário.

Perfis de usuários em armazéns

Seu data warehouse tem um esquema para cada uma de suas origens da Segment. As informações do usuário são armazenadas em duas tabelas em seus esquemas de origem - a tabela identifies e users.

A tabela  identifies  contém todos os seus eventos de identificação e os carimbos de data/hora desses eventos. Toda vez que você faz uma chamada de Identificação, a Segment adiciona o userId, anonymousId, quaisquer características de usuário atualizadas ou adicionadas da chamada, bem como o carimbo de data/hora de quando a chamada foi feita. Sua identifies  é sua primeira parada quando você tem dúvidas sobre usuários e suas características.

A tabela users contém apenas chamadas de método Identify exclusivas e é um agrupamento da tabela identifies. A tabela  users é a única fonte de verdade para as características mais atualizadas de um usuário.

Essas tabelas só contêm informações sobre um usuário depois de identificadas. No entanto, você ainda pode encontrar informações sobre um usuário anônimo nas tabelas.

Expiração e substituição de ID

O cookie de ID da Segment é definido com uma expiração de um ano. No entanto, existem algumas maneiras de um ID ser redefinido ou substituído:

  • Se você ligar reset durante a sessão do navegador de um usuário, ele removerá seu userId e anonymousId, o que significa que o usuário gera um novo anonymousId na próxima visita.
  • Se o usuário limpar manualmente seus cookies e armazenamento local, ele gerará um novo anonymousId na próxima visita.
  • Se você invocar qualquer chamada antes de definir um anonymousId, a Segment definirá automaticamente a anonymousId. Isso significa que se você definir explicitamente um anonymousId, poderá fornecer ao usuário dois anonymousIds ou substituir um existente.
  • Se você buscar o anonymousId usando analytics.user().anonymousId() antes que um seja definido, Segment gera e define um anonymousId em vez de retornar null.
  • Se você chamar analytics.identify() com um userId diferente do armazenado em cache no momento userId, isso poderá substituir o existente e causar problemas de atribuição.
  • Se você gerar um novo anonymousId em uma biblioteca de servidor e passá-lo do servidor para o navegador, isso poderá substituir o arquivo anonymousId.

Lembre-se, se um usuário tiver vários dispositivos, ele poderá ter anonymousIds diferentes em cada dispositivo diferente.

Vinculando IDs gerados pelo servidor e pelo cliente

Existem algumas vantagens em enviar detalhes sobre seus usuários diretamente de seu servidor, uma vez que o usuário se registre. Na Biblioteca do servidor, as chamadas de identificação são invisíveis para o usuário final, tornando-as mais seguras e muito mais confiáveis.

Se você deseja enviar dados do usuário que são confidenciais ou que não deseja expor ao cliente, você pode fazer uma chamada de Identificação do servidor com todas as características que você conhece sobre o usuário.

Aliasing ​​de uma biblioteca de servidor

Se você planeja rastrear visitantes anônimos do navegador e apenas fazer chamadas de identificação de suas bibliotecas de servidor, Kissmetrics e Mixpanel podem exigir que você faça uma chamada de Aliasing  para vincular os registros. A chamada de Aliasing ​​vincula visitantes anônimos do lado do cliente com usuários identificados pelo servidor. Isso não é recomendado, mas se você fizer isso, leia os  documentos de alias  específicos  do Kissmetrics e do Mixpanel.

Perguntas comuns

Existem algumas coisas que podem fazer com que seus números fiquem desativados.

Inscrições ausentes

O problema mais comum que as pessoas enfrentam ao rastrear novas inscrições de usuários do lado do cliente é que apenas uma parte de seus novos usuários está aparecendo nos relatórios.

Isso geralmente é causado pelo redirecionamento ou recarregamento da página antes que as chamadas de rastreamento tenham a chance de serem executadas. A Segment recomenda que você faça essas chamadas a partir de uma página de boas-vindas após o registro do usuário, em vez de tentar trackear as chamadas de rastreamento na própria página de inscrição.

A história anônima está perdida

Isso geralmente é um problema apenas no Mixpanel, pois é o único destino que requer uma chamada para  o aliasing  no navegador para vincular o histórico de navegação anônimo a um novo usuário identificado.

Lembre-se de que para destinos que exigem aliaings, você deve fazer a chamada de Aliasing antes de fazer a chamada de Identificação para esse usuário. Mesmo se você fizer uma chamada de Identificação de uma biblioteca de servidor, isso não poderá acontecer antes do aliasing do lado do cliente.

//Facebook Pixel