Skip to main content
O tracker já está capturando comportamento, mas visitantes são anônimos por padrão. Nesta etapa, você conecta esses dados a pessoas reais: quando um visitante faz login ou se cadastra, a UserIn unifica todo o histórico anônimo com o perfil identificado automaticamente.

Identificar

Conecte visitantes a perfis reais quando fizerem login ou se cadastrarem.

Capturar

Colete dados de formulários automaticamente ou com controle total.

Rastrear

Envie eventos customizados para ações específicas do seu negócio.

1. Identificar usuários

Quando um visitante fizer login, se cadastrar ou preencher um formulário com dados de contato, identifique-o com:
__SmartTrack.setExternalUserContext('id_do_usuario', {
  email: 'maria@empresa.com',
  name: 'Maria Silva',
  plan: 'premium'
});

Parâmetros

userId
string
required
Identificador único do usuário no seu sistema (ID do banco, UUID, etc.)
properties
object
Objeto com propriedades do usuário. Campos comuns:
CampoTipoDescrição
emailstringEmail do usuário
namestringNome completo
phonestringTelefone
planstringPlano/assinatura
companystringNome da empresa
rolestringCargo ou função
Você pode enviar qualquer propriedade customizada. Elas serão salvas no perfil e podem ser usadas para segmentação.

Exemplos práticos

function onLoginSuccess(user) {
  __SmartTrack.setExternalUserContext(user.id, {
    email: user.email,
    name: user.name,
    plan: user.subscription?.plan,
    createdAt: user.createdAt
  });
}
Chame setExternalUserContext uma vez por sessão (após login ou cadastro). Chamadas repetidas atualizam o perfil, não criam duplicatas.
Quando identificar? O melhor momento é logo após a autenticação. Se o usuário já está logado ao entrar no site (sessão persistente), chame o método no carregamento da página.

2. Capturar formulários

O tracker captura envios de formulários automaticamente. Nenhum código extra é necessário para a captura padrão.

Configurar estratégia de captura

Se você precisa de controle sobre quais formulários são capturados:
__SmartTrack.forms({
  strategy: 'auto',
  trigger: 'submit',
  excludeFields: [
    'password',
    'credit-card',
    'cvv',
    'ssn'
  ]
});

Estratégias disponíveis

EstratégiaComportamento
autoCaptura todos os formulários automaticamente (padrão)
whitelistCaptura apenas formulários específicos
blacklistCaptura todos, exceto os especificados
disabledDesativa captura de formulários

Exemplo: apenas formulários específicos

__SmartTrack.forms({
  strategy: 'whitelist',
  include: ['#form-contato', '#form-newsletter', '.form-lead'],
  trigger: 'submit'
});
Privacidade primeiro: campos sensíveis como password, credit-card e cvv são excluídos automaticamente por padrão, independente da estratégia escolhida.

3. Rastrear eventos customizados

Envie eventos específicos do seu negócio para a UserIn:
__SmartTrack.customEvent('nome_do_evento', {
  // propriedades opcionais
});

Exemplos por vertical

// Produto visualizado
__SmartTrack.customEvent('product_viewed', {
  productId: 'SKU-123',
  productName: 'Camiseta Premium',
  category: 'Vestuário',
  price: 89.90
});

// Adicionou ao carrinho
__SmartTrack.customEvent('add_to_cart', {
  productId: 'SKU-123',
  quantity: 2,
  cartTotal: 179.80
});

// Compra finalizada
__SmartTrack.customEvent('purchase_completed', {
  orderId: 'ORD-456',
  total: 179.80,
  items: 2,
  paymentMethod: 'credit_card'
});

4. Eventos comportamentais avançados

Além dos eventos padrão, você pode ativar rastreamento comportamental avançado:
__SmartTrack.events({
  idle: true,
  rageClick: true,
  keyboardUsage: true,
  hoverFrequency: true,
  clipboardUsage: true
});
EventoO que detecta
idleVisitante ficou inativo na página
rageClickCliques frustrados (muitos cliques rápidos no mesmo elemento)
keyboardUsagePadrões de uso do teclado
hoverFrequencyFrequência de hover sobre elementos
clipboardUsageUso de copiar/colar
Para ativar todos os eventos de uma vez:
__SmartTrack.events('all');

Métodos úteis

Referência rápida de métodos disponíveis no objeto __SmartTrack:
MétodoRetornoDescrição
getLocalStorageId()stringID persistente do visitante
getSessionId()stringID da sessão atual
getExternalId()string | nullID externo (após identificação)
getCompanyId()stringID do projeto na UserIn

Próximo passo

Com os dados conectados, verifique se tudo está funcionando corretamente.

Verificar Integração

Confirme que os dados estão chegando e veja seus primeiros visitantes na plataforma.