Ir para o conteúdo
Privatus Analytics

Privacidade

Como as análises sem cookies medem sem rastrear pessoas

Cada afirmação de privacidade que fazemos tem uma explicação técnica. Esta página descreve exatamente o que acontece com uma visualização de página, o que armazenamos, o que nunca armazenamos e como você mesmo pode conferir.

Não acredite só na nossa palavra

Estas ferramentas são operadas por outras organizações. Cada link analisa este site na hora, então você vê o resultado de hoje, não uma captura de tela que escolhemos.

O caminho dos dados

Toda requisição de visitante, incluindo as da UE, do EEE, do Reino Unido e da Suíça, é processada na nossa região dos EUA. O endereço IP e o user agent são usados em memória enquanto a requisição é tratada e descartados antes de o evento minimizado ser armazenado.

  1. Etapa 1 · Qualquer lugar
    Navegador do visitante
    • URL da página e referenciador
    • Parâmetros UTM
    • Largura da tela e idioma
    • Suas propriedades de eventos personalizados
    • Sem cookies nem armazenamento local, exceto a escolha de opt-out do próprio visitante
    • Sem APIs de fingerprinting
    • Sem requisições a terceiros
  2. Etapa 2 · Estados Unidos
    Ingestão, em memória
    • País a partir do cabeçalho da Cloudflare
    • User agent → navegador, sistema operacional, dispositivo
    • Verificações de bots e as suas regras de tráfego
    • Chave de visita em memória
    • Endereço IP descartado após a requisição
    • User agent completo descartado após a requisição
    • PII removida, query strings reduzidas
  3. Etapa 3 · Em fila na região dos EUA
    Evento minimizado
    • Apenas o evento minimizado
    • Sem endereço IP
    • Sem user agent bruto
    • Sem chave de visita nem salt
  4. Etapa 4 · Estados Unidos
    Armazenamento e painel
    • Páginas, origens, campanhas
    • País e categorias de dispositivo
    • ID de visita aleatório (no máximo um dia)
    • Propriedades de eventos
    • Nada que identifique uma pessoa
    • Nada que conecte dias, sites ou dispositivos

O que coletamos e o que nunca coletamos

Coletado (após a minimização)

  • Página. Hostname e caminho. Query strings removidas, exceto parâmetros de campanha e a sua lista de permissões. Fragmento removido, a menos que você use roteamento por hash.
  • Referenciador. Domínio e caminho da página de origem. Query removida, referenciadores internos apagados.
  • Campanha. Parâmetros UTM e ref. IDs de clique em anúncios (gclid, msclkid, fbclid) são reduzidos a um indicador de sim/não.
  • Localização. Apenas o país, a partir do cabeçalho de país que o nosso provedor de rede (Cloudflare) adiciona a cada requisição. Sem região, cidade ou coordenadas.
  • Tecnologia. Navegador, sistema operacional (família e versão principal), tipo de dispositivo, faixa de tamanho de tela, idioma.
  • Engajamento. Tempo visível na página e profundidade de rolagem em faixas de 10%.
  • Fuso horário. O nome do fuso horário do navegador, como America/Denver. Um navegador executado em um servidor raramente está configurado com o fuso horário do país de onde vem a sua requisição, então comparamos os dois para ajudar a distinguir bots de pessoas. Isso acontece em memória e depois o fuso horário é descartado. Ele nunca é usado como localização e nunca é armazenado com uma visita ou um evento. É mantido por 12 meses apenas nos registros de treinamento de bots da Detecção Avançada de Bots (hits de honeypot e amostras dos nossos próprios sites).
  • Eventos. Nomes e até 30 propriedades tipadas que você escolhe enviar, depois da remoção de PII.

Nunca coletado nem armazenado

  • Endereços IP. Usados em memória para verificações de bots e para a chave diária de visita, depois descartados. Nunca gravados em disco, logs, filas ou bancos de dados, nem mesmo para bots.
  • User agents completos. Convertidos em categorias em memória, depois descartados.
  • Cookies e armazenamento no dispositivo. Sem cookies, localStorage, sessionStorage ou IndexedDB (exceto a escolha de opt-out do próprio visitante).
  • Fingerprints. Sem APIs de canvas, WebGL, fontes, áudio ou bateria, e sem client hints extras.
  • Identificadores persistentes. Nada que dure mais de um dia ou que conecte sites ou dispositivos. Sem perfis de usuário.
  • Localização precisa. Sem coordenadas.
  • Requisições a terceiros. O rastreador só se comunica com o Privatus Analytics.

Removedor de PII. Antes de qualquer coisa ser armazenada, caminhos, referenciadores, títulos e propriedades de eventos são verificados em busca de endereços de e-mail, identificadores longos, strings parecidas com tokens e sequências longas de dígitos, como números de telefone ou de cartão. As ocorrências são substituídas por marcadores como [redacted-email], e cada site vê quantas remoções ocorreram, para que os vazamentos sejam corrigidos na origem.

Como as visitas são contadas

  1. A cada dia UTC geramos um salt aleatório de 256 bits. Ele existe apenas em memória e é destruído no fim do dia, mais uma tolerância de 30 minutos.
  2. Para cada hit calculamos HMAC(daily salt, site, IP, user agent) em memória e procuramos o resultado em um armazenamento somente em memória, com tempo limite de inatividade de 30 minutos e teto à meia-noite UTC.
  3. Uma nova visita recebe um ID de visita aleatório, que não é derivado dessa chave. Apenas o ID aleatório é armazenado.
  4. Quando o salt é destruído, nada consegue ligar as visitas armazenadas a um dispositivo, nem umas às outras entre dias diferentes.

Estes são dados pseudonimizados: fortemente minimizados e impossíveis de vincular além de um dia. Não os descrevemos como anônimos.

Todos os campos que armazenamos

Adicionar um campo armazenado exige uma análise por escrito da sua finalidade, minimização e retenção. Esta é a lista atual.

CampoFinalidadeMinimizaçãoRetenção
Hostname, caminhoPáginasQuery removida exceto a lista de permissões, PII removida, máscaras de caminhoPlano
Host e caminho do referenciadorOrigenswww. e m. removidos, query descartada, internos apagadosPlano
Parâmetros UTM, ref, clique pagoCampanhasIDs de clique reduzidos a um indicador de sim/nãoPlano
PaísLocalizaçãoA partir do cabeçalho de país da Cloudflare, IP descartadoPlano
Dispositivo, navegador, sistema operacional (com versões principais), faixa de telaTecnologiaUser agent bruto descartado, tela agrupada em faixasPlano
ID de visitaVisitasUUID aleatório, no máximo um dia UTCPlano
Propriedades de eventosEventosAté 30 chaves, tipadas, PII removidaPlano
Nome do fuso horárioTreinar a pontuação de botNunca armazenado com uma visita ou um evento. Mantido apenas com um hit de honeypot ou uma amostra dos nossos próprios sites12 meses
Contadores de filtrosBots, regras, remoçõesApenas agregados, sem IP13 meses
Chave de visita (armazenamento em memória)Continuidade da visitaChave HMAC, tempo limite de 30 minutosNo máximo um dia
Salt diário (armazenamento em memória)Chave de visitaNunca persistido1 dia + 30 minutos

Retenção “Plano”: 3 meses no Free, ilimitada enquanto durar a assinatura nos planos pagos, com ajustes por site.

Verifique você mesmo

  1. Abra as ferramentas de desenvolvedor desta página e vá para a aba Application (ou Storage). Você não vai encontrar cookies nem nada no armazenamento local vindo do rastreador. A única coisa que o rastreador armazena é a escolha de opt-out do próprio visitante. Este site também guarda ali o seu tema claro ou escuro, se você o alterar.
  2. Mude para a aba Network, filtre por /api/event e recarregue. Você vai ver uma pequena requisição por visualização de página.
  3. Abra o payload da requisição. Ele contém apenas os campos listados abaixo: sem identificadores, sem fingerprint.
  4. Adicione data-debug="true" à tag script do seu próprio site e acompanhe o Console. Cada hit é registrado com o prefixo [privatus], exatamente como seria enviado, e nada sai do navegador. Um hit que é ignorado registra o motivo, e isso funciona em localhost. Veja Teste sem enviar nada.
  5. Leia o código-fonte do rastreador. Ele tem licença MIT e é curto o bastante para ler de uma vez. Veja código aberto.

Experimente também o scanner de cookies e rastreadores no seu próprio site.

O que uma requisição contém

Estes exemplos mostram todos os campos que podem aparecer em cada tipo de hit. A maioria dos hits carrega muito menos. A tabela abaixo diz quando cada campo é enviado.

Uma visualização de página
{
  "s": "pa_7Q2K9XH3AB",
  "t": "pageview",
  "u": "https://example.com/app?utm_source=newsletter#/pricing",
  "l": "en-US",
  "w": 1440,
  "i": 0,
  "r": "https://news.example.org/",
  "h": 1,
  "d": 1,
  "g": 1,
  "hp": 1,
  "a": "webdriver",
  "tz": "America/Denver",
  "xp": "var_4M8T2KQ9ZD",
  "p": { "plan": "pro" }
}
Um hit de engajamento
{
  "s": "pa_7Q2K9XH3AB",
  "t": "engagement",
  "u": "https://example.com/app?utm_source=newsletter#/pricing",
  "l": "en-US",
  "w": 1440,
  "i": 1,
  "r": "https://news.example.org/",
  "h": 1,
  "d": 1,
  "g": 1,
  "hp": 1,
  "a": "webdriver",
  "tz": "America/Denver",
  "e": 48210,
  "sd": 80
}
Um evento personalizado
{
  "s": "pa_7Q2K9XH3AB",
  "t": "event",
  "u": "https://example.com/app?utm_source=newsletter#/pricing",
  "l": "en-US",
  "w": 1440,
  "i": 1,
  "r": "https://news.example.org/",
  "h": 1,
  "d": 1,
  "g": 1,
  "hp": 1,
  "a": "webdriver",
  "tz": "America/Denver",
  "n": "signup",
  "p": { "plan": "pro" }
}
CampoSignificadoQuando é enviadoO que acontece com ele do nosso lado
sID do siteTodo hitUsado para encontrar o site. Armazenado como o site ao qual o evento pertence.
tTipo de hit: pageview, engagement ou event. Os módulos opcionais de Web Vitals e de mapa de cliques acrescentam vital e click.Todo hitArmazenado como o tipo de evento.
uURL da página, com os parâmetros de query que não são de campanha já removidos no navegadorTodo hitO hostname e o caminho são armazenados depois das máscaras de caminho e do limpador de dados pessoais. Os parâmetros de campanha são armazenados, os IDs de clique de anúncio viram um indicador de sim ou não e o resto da query é descartado.
lIdioma do navegadorTodo hitArmazenado, cortado em 16 caracteres.
wLargura da tela em pixelsTodo hitArmazenada apenas como uma faixa de tamanho. Lida em memória para a pontuação de bot. A largura exata é descartada.
i1 após a primeira interação real na página (ponteiro, tecla, toque ou roda do mouse), caso contrário 0Todo hitArmazenado como sim ou não na visita. Nada sobre a interação em si é enviado.
rReferenciadorSomente quando existe umO host e o caminho são armazenados depois do limpador de dados pessoais. A query é descartada e um referenciador do seu próprio site é apagado.
h1 quando o roteamento por hash é usadoSomente quando o fragmento faz parte do endereço da páginaUsado em memória para manter o fragmento como parte do caminho. Não armazenado.
d1 quando o navegador envia Do Not TrackSomente quando está ativadoSe o site respeita o Do Not Track (desativado por padrão), o hit é descartado e nada é armazenado. Caso contrário, é ignorado. O indicador nunca é armazenado.
g1 quando o navegador envia Global Privacy ControlSomente quando está ativadoSe o site respeita o Global Privacy Control (ativado por padrão), o hit é descartado e nada é armazenado. Caso contrário, é ignorado. O indicador nunca é armazenado.
hp1 em uma página que o dono do site marcou como honeypot, 0 em uma página marcada como alcançada somente por pessoasSomente em páginas marcadas para a Detecção Avançada de BotsUm hit com 1 nunca se torna uma visita nem um evento. Ele é contado como bot e, nos planos com Detecção Avançada de Bots, mantido como um hit de honeypot. Um hit com 0 é contado normalmente, e somente os nossos próprios sites guardam uma cópia como amostra de treinamento.
ch1 em uma página de "confirme que você é humano" que um site mostra a alguns visitantes sorteados, pessoas e botsSomente em páginas marcadas com data-hp="ch"Um hit com 1 nunca se torna uma visita nem um evento e não é contado como bot. Nos planos com Detecção Avançada de Bots, ele é mantido junto dos hits de honeypot, marcado como um desafio.
aNome da automação: webdriver, phantom, nightmare ou cypressSomente em uma página honeypot ou de desafio, quando um navegador automatizado é detectadoMantido com o hit de honeypot. Ignorado em todos os outros lugares.
tzNome do fuso horário, como America/DenverTodo hit, quando o navegador informa umComparado em memória com o país da requisição para a pontuação de bot e depois descartado. Nunca armazenado com uma visita ou um evento e nunca usado como localização. Mantido somente com um hit de honeypot ou uma amostra de treinamento.
xpValor de pré-visualização do experimento, de pa_preview no endereçoSomente visualizações de página, quando o endereço tem pa_previewUsado em memória para mostrar a versão pré-visualizada. A visualização de página não é contada para o experimento. Não armazenado.
pPropriedades personalizadasVisualizações de página e eventos personalizadosAté 30 são armazenadas depois do limpador de dados pessoais. Receita e moeda são armazenadas como campos próprios.
eTempo visível na página, em milissegundosHits de engajamentoArmazenado, limitado a 4 horas.
sdProfundidade de rolagem, em porcentagemHits de engajamentoArmazenada em faixas de 10%.
nNome do eventoEventos personalizadosArmazenado, cortado em 120 caracteres.
vValor do Web VitalHits de vital (módulo Web Vitals)Armazenado com o nome do vital, para uma amostra de hits.
cSeletor CSS curto do elemento clicado, ou o nome que o site deu a eleHits de clique (módulo de mapa de cliques)Armazenado, cortado em 512 caracteres. Sem coordenadas nem texto.

O módulo opcional de pesquisas envia suas próprias requisições pequenas. Elas estão listadas na referência completa na documentação. O que um hit de honeypot mantém é descrito em Detecção Avançada de Bots.

Onde seus dados ficam

Armazenamento e processamento nos EUA, e salvaguardas de transferência.

Central de conformidade

GDPR, ePrivacy, leis estaduais dos EUA e mais.

Acordo de Processamento de Dados

Incluído nos nossos termos.

Comece a medir sem cookies

Sem cookies, sem fingerprinting e sem precisar de banner de consentimento para a medição.

Seu primeiro espaço de trabalho começa com 14 dias de Pro, grátis. Depois disso, ele passa para o plano gratuito, com 10k eventos por mês, 3 sites e 3 meses de histórico. Sem exigir cartão.