Dados de cliques que pode realmente consultar.
Você mede atribuição, quebras no funil e lift incremental. O Elido armazena todos os cliques num armazenamento de análise colunar com acesso raw - sem amostragem, sem lag de agregação.
- Sem amostragem de cliques em qualquer nível - cada evento armazenado
- Exportação de cliques para o seu bucket S3 (NDJSON com gzip)
- Exportação agendada para S3 + BigQuery (Parquet por padrão)
- Eventos de clique brutos via firehose de webhooks / consumidor Kafka
Como os dados de cliques chegam
Clique → fluxo de eventos → armazenamento de análise, sem agregação no meio.
A maioria dos encurtadores dá um contador. Nós damos uma linha por clique, ingerida em menos de cinco segundos, consultável a partir do seu próprio cliente SQL. O pipeline é um único tópico compatível com Kafka que um único consumidor drena para o armazenamento de análise - sem serviço de agregação, sem resumos diários, sem nota de rodapé 'amostrado após 10K'.
- Step 1
Click
elido.me/x → 302Edge POP returns the destination + emits an event to our event stream.
- Step 2
Event stream
topic: clicks.<workspace>12 partitions, at-least-once delivery, 7-day topic retention.
- Step 3
Analytics store
<5s p99 ingest lagOur ingestion service drains the topic into the per-workspace events table.
- Step 4
Your tools
S3 export · Analytics APIScheduled or on-demand S3 export (gzip NDJSON), or the analytics REST API. A direct read-only DSN is planned.
Exportação de analytics e API
Eventos de clique no seu bucket; um DSN direto somente leitura está planejado.
Workspaces Business podem exportar eventos de clique como gzip NDJSON para o próprio bucket S3, de forma agendada ou sob demanda, e carregá-los no data warehouse de onde Metabase, Hex, Apache Superset, Grafana ou Looker leem. Os agregados também estão disponíveis pela API REST de analytics. Um DSN de analytics direto e somente leitura está planejado e ainda não está disponível.
- Esquema estávelVersionado em /docs/api-reference; guias de migração em /changelog
- Armazenamento próprioArquivos gzip NDJSON no seu bucket S3, restritos ao seu workspace
- Compatível com BICarregue no warehouse por trás de Metabase, Hex, Superset, Grafana, Looker
- API de analyticsAgregados por país, dispositivo, referenciador e período via REST
SELECT country, COUNT(*) AS clicks
FROM events
WHERE link_id = 'lnk_8a2fc1...'
AND occurred_at >= now() - INTERVAL 7 DAY
GROUP BY country
ORDER BY clicks DESC
LIMIT 5;Geografia que sobrevive à exportação
Densidade no nível do país em cada clique - não um bucket com hash.
Cada evento de clique inclui país, região e cidade ISO 3166-1 alpha-2, resolvidos a partir de um conjunto geo-IP offline. O endereço IP do visitante é salvo com o evento de clique, por isso trate estes dados como pessoais ao abrigo do RGPD. Abaixo, os mesmos dados na interface que chegam ao seu armazém, sem camada de agregação pelo meio.
Source of truth. 0% sampling, 24-month retention on Business.
Hourly buckets, snappy-compressed Parquet (or JSON if you prefer).
Native BigQuery Transfer service or Snowflake external table loads from S3.
Exportação para armazém
Parquet horário para S3 e depois transferência nativa para o seu armazém.
A exportação agendada envia eventos de clique como Parquet para o seu bucket S3 numa cadência horária ou diária; o BigQuery Transfer nativo ou a tabela externa do Snowflake o carrega a partir daí. A primeira execução é um preenchimento completo até à sua janela de retenção; as execuções seguintes acrescentam apenas novos eventos com chave no timestamp do evento. As falhas são reexperimentadas; uma notificação de dead-letter é enviada se um lote não chegar dentro de 2 horas.
- Parquet (por padrão) ou JSON; um objecto por bucket horário
- Filtre a exportação por domínio, campanha ou etiqueta de link
- BigQuery Transfer nativo + tabela externa do Snowflake
- Alerta de dead-letter em falha de lote >2h
- Firehose Kafka para entrega abaixo de um segundo (Business)
O que você pode fazer
- Sem amostragem de cliques em qualquer nível - cada evento armazenado
- Exportação de cliques para o seu bucket S3 (NDJSON com gzip)
- Exportação agendada para S3 + BigQuery (Parquet por padrão)
- Eventos de clique brutos via firehose de webhooks / consumidor Kafka
- Latência de consulta abaixo de um segundo em tabelas com mais de 1B de linhas
- Atribuição de cliques server-side com deduplicação de click-ID
O que 'analytics em primeiro lugar' significa no modelo de dados do Elido
A maioria dos analytics de encurtadores são totais agregados. As funcionalidades abaixo explicam o que muda quando o fluxo bruto de cliques é o artefato primário, não um resumo.
Cada clique armazenado - sem asterisco de 'após N eventos fazemos amostragem'
Os eventos de clique são ingeridos via um tópico compatível com Kafka e escritos no armazenamento de análise pelo nosso serviço de ingestão. Não há camada de amostragem. Um link com 10 cliques e um link com 10 milhões de cliques têm todos os eventos na mesma tabela - o schema não muda, nenhuma agregação é aplicada no momento da ingestão. A retenção é de 90 dias no Free, 12 meses no Pro e 24 meses no Business. Após a janela de retenção, os eventos são excluídos definitivamente; a contagem de eventos excluídos é registrada. O schema de eventos é público - você pode ver exatamente quais campos são armazenados, o que significa que pode planejar seu modelo de dados no seu data warehouse antes de começar a exportar. A latência de eventos do clique até a disponibilidade na análise é tipicamente inferior a 5 segundos; o consumidor roda com auto-commit e registra métricas de lag para que você possa ver se o pipeline está atrasando.
GA4 MP, Meta CAPI e Mixpanel server-side - deduplicados contra o clique
Pixels client-side perdem uma fração significativa das conversões dependendo da penetração de bloqueadores de anúncios e ITP do iOS Safari. O encaminhamento server-side envia a conversão para GA4 Measurement Protocol, Meta Conversions API ou Mixpanel diretamente do backend do Elido - sem JS client-side necessário. A chave de deduplicação é o click ID: quando um evento de conversão chega via webhook do Stripe ou Shopify, o Elido o vincula ao clique de origem e o distribui para todos os endpoints server-side configurados. O click ID é passado como parâmetro de query para a URL de destino no momento do clique; seu fluxo de checkout deve preservá-lo até o evento de conversão. Cada evento encaminhado carrega os parâmetros UTM originais do clique para que a atribuição sobreviva ao funil completo. Isso é útil para recuperar conversões que pixels client-side perdem - não substitui um CDP completo, mas fecha a lacuna de atribuição por último clique mais comum.
Exportação de cliques para o S3 - carregue no data warehouse por trás do Metabase, Hex ou Grafana
Os workspaces Business podem exportar eventos de clique como NDJSON com gzip para o próprio bucket S3, de forma agendada ou sob demanda. Carregue os arquivos no data warehouse por trás do Metabase, Hex, Apache Superset, Grafana ou qualquer cliente SQL/BI compatível e escreva SQL sobre os seus dados de cliques lá. Os agregados também estão disponíveis pela API REST de analytics. Para equipes que querem juntar eventos de clique com os próprios dados de produto - 'quais links trouxeram usuários que depois ativaram?' - copie a exportação para o seu data warehouse e faça a junção lá. Um DSN de analytics somente leitura direto, para que uma ferramenta de BI se conecte sem job de exportação, está planejado e ainda não está disponível.
Exportações agendadas para S3, BigQuery e Snowflake
A exportação agendada roda em uma cadência configurável (por hora, diária) e envia o fluxo de eventos de clique - ou um subconjunto filtrado por domínio, campanha ou tag de link - para S3, BigQuery ou Snowflake. A exportação S3 usa Parquet por padrão (JSON disponível); BigQuery e Snowflake usam os conectores nativos com um schema que o Elido cria e mantém atualizado. Exportações incrementais são indexadas pelo timestamp do evento; a primeira exportação é um backfill completo até a sua janela de retenção; exportações subsequentes acrescentam apenas novos eventos. Se você precisar fazer um replay a partir de um timestamp específico, uma exportação completa avulsa está disponível via chamado de suporte. Falhas de exportação são registradas e repetidas; uma notificação de dead-letter vai para o e-mail do workspace se um lote falhar por mais de 2 horas.
Consumidor Kafka em tempo real para pipelines de eventos que não podem esperar exportações em lote
Workspaces Business podem consumir eventos de clique diretamente de um tópico compatível com Kafka como um grupo consumidor Kafka. Você recebe um ID de grupo consumidor, um bootstrap server e um certificado de cliente - configuração padrão de consumidor Kafka. Este é o caminho certo para alertas em tempo real (detecção de spike em um link, sinalizações de anomalia geográfica), dashboards em tempo real que precisam de dados com sub-segundo de latência, e pipelines onde a cadência de exportação agendada é muito lenta. O firehose entrega cada evento pelo menos uma vez; seu consumidor é responsável pela idempotência em replay. A retenção do tópico é de 7 dias; se o seu consumidor ficar mais de 7 dias atrasado, os eventos serão perdidos - configure monitoramento no lag do consumidor. Este não é um recurso de analytics para iniciantes; requer código de consumidor Kafka e experiência operacional com grupos consumidores. Se a exportação agendada para BigQuery atende ao que você precisa, comece por lá.
Stack com que vai interagir
- Eventos de clique raw
- Acesso SQL direto
- GA4 / Meta CAPI / Mixpanel
- Exportação S3 + BigQuery
- Exportação de cliques para o S3 (NDJSON com gzip)
- Firehose de webhooks
O que você vai medir
- Taxa de amostragem
- 0% - todos os cliques armazenados
- Lag de ingestão de eventos
- Menos de 5 segundos
- Horizonte de retenção
- Até 24 meses
Analytics do Elido vs Bitly Analytics vs Heap
O Bitly Analytics é adequado para contagem de cliques e geo básico. O Heap é uma plataforma completa de analytics de produto. A comparação abaixo é honesta sobre onde cada opção é a ferramenta certa.
Perguntas de equipes de analytics
Qual é o schema exato de eventos para eventos de clique?
O schema é público em /docs/api-reference sob 'Click events'. Campos principais: click_id (UUID), link_id, workspace_id, occurred_at (timestamp UTC), country_iso2, region, city, device_type (mobile/tablet/desktop), os, browser, referrer_domain, utm_source, utm_medium, utm_campaign, utm_term, utm_content. Campos nullable são nullable, não strings vazias. Mudanças de schema são anunciadas em /changelog com um guia de migração.
Existe um guia para consumidor Kafka?
Sim - /docs/guides/kafka-firehose cobre bootstrap server, configuração de grupo consumidor, rotação de certificado de cliente e exemplo de código consumidor em Go e Python. O tópico é um por workspace; a contagem de partições é fixa em 12. O reset de offset é earliest por padrão na primeira entrada do grupo consumidor. Se você estiver desenvolvendo sobre isso, reserve tempo para monitoramento de lag do consumidor - esse é o modo de falha que acomete equipes que não o configuram.
Posso fazer join de eventos de clique com minha própria tabela de usuários?
No seu data warehouse, sim. O padrão é: exportar eventos de clique para BigQuery ou Snowflake via exportação agendada, depois fazer join nos parâmetros UTM ou em um parâmetro user_id personalizado que você anexa aos destinos dos seus links encurtados. O Elido não armazena identidade de usuário em eventos de clique - o click_id é um UUID aleatório por clique, não vinculado a uma conta de usuário.
Como funciona a deduplicação de conversão server-side?
Quando você faz POST de um evento de conversão para o endpoint de conversão do Elido, você inclui o click_id que foi retornado na resposta de clique original (ele é passado como parâmetro de query para a URL de destino). O Elido busca o clique, verifica se ele ainda não foi atribuído e distribui a conversão para GA4 MP, Meta CAPI ou Mixpanel com o contexto UTM do clique original. Submissões duplicadas com o mesmo click_id são idempotentes - são reconhecidas, mas não contadas em duplicidade.
O que acontece se meu consumidor Kafka ficar atrasado?
Os eventos são retidos no tópico por 7 dias. Se o offset confirmado do seu grupo consumidor ficar mais de 7 dias atrasado, eventos mais antigos serão perdidos antes que o consumidor os leia. Monitore o lag do consumidor; configure um alerta com 6 horas de lag como aviso antecipado. Se você ficar atrasado em um evento não recuperável, a exportação agendada para S3/BigQuery cobre a lacuna - é um bom backup para o firehose.
A exportação de cliques inclui dados de outros workspaces?
Não. As exportações contêm apenas os eventos do seu workspace e são gravadas no seu próprio bucket S3. Um DSN de analytics somente leitura direto está planejado e ainda não está disponível; quando for lançado, será restrito ao seu workspace.
Existe um tamanho mínimo de amostra antes de as coortes de cliques serem significativas?
O armazenamento de análise executa a query de coorte com qualquer tamanho de dados existente - não há mínimo imposto. A significância estatística é julgamento seu. Uma coorte de 50 cliques dá um número, mas é ruidoso. Exibimos contagens brutas e porcentagens; não aplicamos suavização Bayesiana ou intervalos de confiança às visualizações de coorte. Para análise formal, exporte e execute seu modelo no seu data warehouse.
Posso filtrar a exportação agendada para um subconjunto de links?
Sim - os filtros de exportação suportam: domínio específico, ID de campanha específico, tag específica ou intervalo de datas. Uma exportação filtrada ainda é incremental; execuções subsequentes acrescentam apenas novos eventos que correspondem ao filtro. Se você adicionar uma nova condição de filtro a um job de exportação existente, precisará criar um novo job ou fazer uma re-exportação completa avulsa para recuperar o histórico do novo filtro.
Lista de leitura do analista
Repartição por link, atribuição de conversão, retenção por coorte.
Encaminhamento server-side para GA4, Meta CAPI, Mixpanel.
Especificação OpenAPI 3.1, esquema de evento de clique, SDKs com tipos em TS / Py / Go.
Eventos assinados com HMAC, política de retry, firehose Kafka para alto volume.
Configuração da exportação, esquema, padrões de carga no BigQuery + Snowflake.
Não tem certeza de qual abordagem se encaixa melhor?
A maioria das equipes começa com uma e evolui para todas as quatro. Nossa equipe de vendas pode analisar sua stack específica em 20 minutos.