Push, e-mail e in-app só funcionam com perfil unificado. Veja como instalar o SDK da CleverTap, enviar eventos, usar onUserLogin do jeito certo e subir dados pela API.

Índice do artigo
Para se aprofundar
Para se aprofundar, o time da Métricas Boss trata desse assunto em: Kit básico para analytics em apps (Analytics Talks) e em Métricas para aplicativo no Google Analytics 4.
- O que é a CleverTap?
- Instalando o Web SDK
- Eventos e propriedades
- profile.push x onUserLogin: a diferença que evita perfis duplicados
- Privacidade: optOut e useIP
- SDKs mobile
- Upload Events API: dados do servidor
- Os erros que mais aparecem
- Perguntas frequentes sobre CleverTap
Em plataforma de engajamento, perfil duplicado é dinheiro jogado fora: a mesma pessoa recebe dois pushes, a segmentação erra e o relatório de retenção mente. Na CleverTap, quase todo perfil duplicado nasce do uso errado de um único método.
O que é a CleverTap?
A CleverTap é uma plataforma de customer engagement e product analytics: coleta eventos e perfis de usuários em web e apps e usa esses dados para segmentação, campanhas (push, e-mail, in-app, web), relatórios e webhooks.
Em uma frase: a CleverTap junta o que o usuário faz com a mensagem que ele recebe.
Instalando o Web SDK
Há dois caminhos: o pacote npm clevertap-web-sdk ou o snippet no head. O snippet cria o objeto clevertap com filas (event, profile, account, onUserLogin, notifications, privacy), define o Account ID encontrado em Settings no dashboard e carrega o script de forma assíncrona.
<script>
var clevertap = {event:[], profile:[], account:[], onUserLogin:[], notifications:[], privacy:[]};
clevertap.account.push({ "id": "SEU_ACCOUNT_ID" }, "REGIAO", "DOMINIO_ALVO");
clevertap.privacy.push({ optOut: false });
clevertap.privacy.push({ useIP: false });
// + carregamento assíncrono do clevertap.min.js
</script>
O SDK também suporta múltiplas instâncias, útil quando um mesmo site precisa enviar dados para contas diferentes da CleverTap.
Eventos e propriedades
Eventos registram ações: visualizar produto, ouvir música, compartilhar, comprar.
clevertap.event.push("Produto Visualizado", {
"Nome do Produto": "Tênis Corrida X",
"Categoria": "Calçados",
"Preço": 399.90,
"Data": new Date()
});
Chaves de propriedade precisam ser texto, e valores devem ser escalares (texto, booleano, inteiro, decimal) ou objeto Date, que é registrado com precisão de segundos. Para compras, a CleverTap usa o evento Charged.
Boa prática: mantenha o dicionário de eventos alinhado ao GA4. Se o GA4 tem view_item, a CleverTap tem o equivalente com as mesmas propriedades.
profile.push x onUserLogin: a diferença que evita perfis duplicados
Aqui mora o erro mais caro da implementação.
- profile.push adiciona os dados ao perfil atual, seja ele qual for.
- onUserLogin é inteligente: se o perfil atual é anônimo, recebe os dados; se já é da mesma pessoa, os dados são somados; se pertence a outra pessoa, cria um novo perfil para o usuário que acabou de entrar.
clevertap.onUserLogin.push({
"Site": {
"Identity": 61026032,
"Email": "cliente@exemplo.com"
}
});
Regra prática: onUserLogin no login e no cadastro; profile.push para atualizar atributos (plano, idioma, preferência) de quem já está identificado.
Usar profile.push no login num aparelho compartilhado sobrescreve o perfil de outra pessoa. No Android, a documentação ainda alerta para não chamar onUserLogin diretamente no onCreate.
Privacidade: optOut e useIP
O snippet traz duas configurações de privacidade: optOut, que deve ser true quando o usuário recusa o compartilhamento de dados, e useIP, que deve ser true apenas quando o usuário aceita o uso do IP. Conecte as duas ao seu banner de consentimento ou CMP, preferencialmente via Google Tag Manager, e defina a base legal com o jurídico.
SDKs mobile
A CleverTap tem SDKs para Android, iOS e frameworks híbridos. No Android, eventos usam pushEvent e o perfil usa onUserLogin com um mapa de propriedades. Canais de notificação precisam ser criados para push funcionar em versões recentes do Android.
Upload Events API: dados do servidor
Nem todo evento acontece no app. Pedido faturado no ERP, cancelamento pelo atendimento e pagamento aprovado no gateway entram pela Upload Events API: um POST com JSON, associando o evento a um identificador do usuário.
Os limites que você precisa planejar: até 1.000 registros por chamada, até 512 tipos de evento por conta (alguns reservados ao sistema), até 256 propriedades por tipo de evento e até 15 requisições simultâneas por conta. O volume total de eventos é ilimitado. Há também uma Profile API para atualizar perfis pelo servidor.
Os 512 tipos de evento acabam rápido quando cada time cria o seu. Governança de nomenclatura não é opcional.
Os erros que mais aparecem
- profile.push usado no login, misturando perfis em aparelhos compartilhados.
- Nomes de evento criados sem padrão, consumindo o limite de tipos.
- Propriedades com objetos aninhados, que não são aceitos como valor.
- optOut e useIP fixos no código, sem ligação com o consentimento.
- Eventos de backend enviados um a um em vez de lotes de até 1.000.
Perguntas frequentes sobre CleverTap
O que é a CleverTap?
Uma plataforma de customer engagement e product analytics para web e apps, com eventos, perfis, segmentação e campanhas.
Qual a diferença entre profile.push e onUserLogin?
O profile.push sempre atualiza o perfil atual; o onUserLogin decide entre atualizar, somar ou criar novo perfil conforme a identidade de quem entrou.
Como enviar eventos para a CleverTap?
No web, com clevertap.event.push(nome, propriedades); no Android, com pushEvent.
Quantos eventos cabem por chamada na Upload Events API?
Até 1.000 registros por chamada.
Qual o limite de tipos de evento na CleverTap?
Até 512 por conta, com parte reservada a eventos de sistema.
A CleverTap tem configuração de privacidade?
Sim, as flags optOut e useIP no SDK, que devem refletir o consentimento do usuário.
