Elido
Tutto ciò che Elido fa
Tutti i piani (la profondità varia)

Analytics. Every click, mapped in real time.

Flusso di clic in tempo reale su ClickHouse. Geo, dispositivo, referrer, UTM. Viste funnel e coorte su Business. Esportazioni programmate su S3, BigQuery o Snowflake.

  • ClickHouse-backed for sub-second queries
  • GDPR-compliant by default — no cookies needed
  • Geo, device, referrer, UTM — in one view
  • Export via API or scheduled CSV
elido.app/analytics · elido.me/launch · last 7 daysLive
33.4K
clicks this week
+12.4% vs last week
MonTueWedThuFri7.1KSatSun
Total clicks
12.4K
Countries
94
Avg load
3.2s
0%
Campionamento dei clic
<5s
Ritardo di inserimento eventi
24 mesi
Conservazione su Business
S3 / BQ / Snowflake
Destinazioni di esportazione

How it works

From impression to revenue — every step measured

Click events fire into Redpanda the instant a redirect happens, with zero impact on redirect latency. The click-ingester service writes them to ClickHouse asynchronously — typically under 5 seconds. You see funnel drop-off, geo spread, and conversion attribution in the same view.

Conversion funnel — elido.me/launch · last 30 days
52,100 impressions
Impressions
52,100
100%
24% click-through
Clicks
12,504
24%
20% conversion rate
Conversions
2,500
4.8%
$0.84 per click
Revenue
$2,100
$2.1K
Overall CVR
4.8%
Revenue / impression
$0.040
Attribution
server-side

Geo analytics

Country → region → city, where the IP resolves

Geo resolution uses MaxMind GeoIP2 City. IP is used for lookup only and is not stored in click events — GDPR-compliant by default. For workspaces that need country-only resolution, that’s a single workspace setting on Business.

  • Country breakdown
    ISO 3166-1 alpha-2 with click share %
  • City-level precision
    Where IP resolution goes below region
  • Device + OS split
    Mobile, tablet, desktop; iOS, Android, Windows
  • UTM attribution
    source, medium, campaign, term, content
  • Hour × day heatmap
    Identify peak windows and bot patterns
Geo distribution — last 30 days
94 countries
DE
  • Germany
    3,241
  • Poland
    2,108
  • France
    1,879
  • United States
    1,432
  • United Kingdom
    1,219
  • Netherlands
    887
  • Czech Republic
    641
  • Sweden
    512
IP resolved via MaxMind GeoIP2 City · IP not stored in events
Live event stream
Streaming
elido.me/launch
  • Click from Berlin, DE
    newsletter.acme.comMobile
    2s ago
  • QR scan from Tokyo, JP
    directMobile
    5s ago
  • Click from Warsaw, PL
    twitter.comDesktop
    11s ago
  • Click from Paris, FR
    linkedin.comDesktop
    18s ago
  • Click from New York, US
    google.comMobile
    27s ago
  • Click from Amsterdam, NL
    directDesktop
    41s ago
Ingest lag
< 5s
Buffer retention
7 days
Firehose
Business

Live stream

Watch clicks arrive as they happen

The real-time view polls the analytics API every 30 seconds. Events are typically in ClickHouse within 5 seconds of the click. During traffic spikes, the Redpanda topic buffers events for up to 7 days — no events are lost, the ingester just catches up.

  • Sub-5s click-to-dashboard lag on average
  • Redpanda topic buffers 7 days of events
  • Consumer lag monitored; alert fires at 60s
  • Real-time Kafka firehose on Business
  • 30s dashboard poll; configurable via API

What you can do

  • Eventi di clic in tempo reale
  • Suddivisioni per paese / dispositivo / referrer
  • Ritenzione funnel + coorte (Business)
  • Heatmap ora del giorno × giorno della settimana
  • Esportazioni programmate su S3 / BQ / Snowflake
  • Attribuzione delle conversioni da Stripe / Shopify

Cosa fa effettivamente lo stack di analytics

Il conteggio dei clic e i breakdown geografici sono presenti in ogni shortener. Le funzionalità seguenti sono quelle in cui l'architettura basata su ClickHouse fa davvero la differenza.

Nessun campionamento
01

Eventi clic grezzi in ClickHouse — ogni evento, nessuna aggregazione all'inserimento

Gli eventi clic vengono inseriti tramite Redpanda e scritti in ClickHouse dal servizio click-ingester. Non c'è un livello di campionamento — un link con 10 clic e uno con 10 milioni di clic usano la stessa pipeline. La conservazione è di 90 giorni su Free, 12 mesi su Pro, 24 mesi su Business. I campi dello schema dell'evento includono: click_id, link_id, workspace_id, occurred_at (UTC), country_iso2, region, city, device_type, os, browser, referrer_domain, utm_source, utm_medium, utm_campaign, utm_term, utm_content e referer (URL completo, nullable). Lo schema è pubblico e versionato; le modifiche ricevono una guida alla migrazione. Il ritardo di inserimento degli eventi è solitamente inferiore a 5 secondi dalla disponibilità del clic a ClickHouse. Se hai utilizzato Bitly o Rebrandly e ti affidi al 'conteggio totale dei clic' come KPI, otterrai gli stessi numeri da Elido — con in più la possibilità di interrogare gli eventi grezzi invece di un semplice contatore.

Breakdown per link
02

Breakdown geografici, per dispositivo, referrer e UTM a livello di link

Ogni link nella dashboard ha la sua vista di analytics: grafico dei clic in serie temporale (orario, giornaliero, settimanale), breakdown geografico (paese → regione → città, dove la risoluzione IP arriva al livello della città), tipo di dispositivo (mobile, tablet, desktop), OS, browser, dominio referrer e distribuzione dei parametri UTM. La heatmap ora del giorno × giorno della settimana mostra quando il traffico di un link raggiunge il picco — utile per programmare campagne, confermare che un evento dal vivo ha generato traffico all'ora prevista e individuare pattern di bot (i bot spesso colpiscono i link in orari insoliti costanti senza diffusione geografica). Per i link con regole smart-link, gli analytics per variante sono visibili nella stessa vista — conteggio dei clic e serie temporale per variante.

Attribuzione delle conversioni
03

Attribuzione delle conversioni server-side da Stripe, Shopify e webhook personalizzati

L'attribuzione delle conversioni server-side colma il divario creato dai pixel client-side. Ad ogni clic, Elido registra un click_id e lo passa come parametro di query all'URL di destinazione. Quando scatta un evento di conversione sul tuo backend (Stripe checkout.session.completed, Shopify orders/paid o il tuo POST all'endpoint di conversione di Elido), Elido lo associa al clic di origine, attribuisce il valore del ricavo e invia la conversione a GA4 Measurement Protocol, Meta Conversions API (CAPI) o Mixpanel — a seconda di cosa hai configurato. La conversione appare nella vista di analytics del link attribuita al clic (e al suo contesto UTM). Questo funziona tra sessioni del browser e confini degli adblocker perché è server-to-server. Caso limite: se il tuo flusso di checkout rimuove il parametro di query click_id prima della conversione (ad esempio, checkout multi-step che non conserva i parametri di query), l'attribuzione si interrompe. Testa l'intero flusso di checkout con il click_id prima di andare live.

Esportazione in warehouse
04

Esportazioni pianificate S3, BigQuery e Snowflake, oltre al firehose Kafka in tempo reale

L'esportazione pianificata invia gli eventi clic a S3 (Parquet o JSON), BigQuery o Snowflake con una cadenza configurabile (oraria o giornaliera). Le esportazioni incrementali aggiungono solo i nuovi eventi dall'ultima esecuzione, con chiave occurred_at. La prima esecuzione esegue il backfill fino alla tua finestra di conservazione. Per i team che necessitano di dati sotto il minuto nel loro warehouse: il firehose Kafka/Redpanda (Business) fornisce un gruppo di consumatori diretto con un ritardo end-to-end inferiore a 5 secondi. Entrambi i percorsi utilizzano lo stesso schema di eventi — passare dall'esportazione pianificata al firehose è un cambiamento di consumatore, non di schema. Per i team che preferiscono SQL diretto rispetto all'ETL di esportazione: il DSN ClickHouse di sola lettura (Business) ti consente di connettere Metabase, Hex, Grafana o qualsiasi client compatibile con ClickHouse direttamente alla tabella degli eventi del tuo workspace.

Retention e coorti
05

Heatmap di retention e viste di coorte per l'analisi dell'engagement a livello di clic

I workspace Business ottengono viste di coorte e retention nella dashboard di analytics. Scegli un link o una campagna, scegli una dimensione di coorte (paese, tipo di dispositivo, sorgente UTM) e ottieni una heatmap di retention giornaliera o settimanale. Questo risponde a domande come 'gli utenti che cliccano dalla ricerca organica tornano a questo link più degli utenti a pagamento?' — non a livello di sessione (Elido non traccia le sessioni), ma a livello di coorte di clic. È uno strumento diverso da un tool di product analytics come Mixpanel o PostHog: misura il re-engagement con il link, non il comportamento all'interno del prodotto. Per i team che utilizzano link brevi nelle campagne email, le coorti di retention evidenziano se un link viene rivisitato (newsletter inoltrate, pagine salvate nei preferiti) o se è un'azione una tantum.

Team che si affidano agli analytics di Elido

I nomi sono segnaposto per ora — i nomi reali dei clienti verranno inseriti man mano che verranno pubblicati i casi studio.

Siamo passati a Meta CAPI server-side tramite Elido dopo che iOS 14.5 ha reso inefficace l'attribuzione del nostro pixel. La configurazione ha richiesto due sprint; abbiamo recuperato l'attribuzione su circa il 25% delle conversioni che il pixel stava perdendo. Il passaggio del contesto UTM a CAPI è ciò che ha reso l'attribuzione effettivamente utile.

T
Team Growth, SaaS B2B, Vienna
Ingegnere Growth

Il DSN ClickHouse su Business consente ai nostri dashboard Metabase di interrogare direttamente i dati degli eventi clic. Nessun lavoro di esportazione da sorvegliare, nessun ritardo di sincronizzazione. Rispondiamo a 'quale articolo ha generato più clic sui link monetizzati oggi?' senza aprire un ticket al team engineering.

T
Team Analytics, media company, Varsavia
Analista Senior

Esportiamo in BigQuery e uniamo gli eventi clic con la nostra tabella degli ordini Shopify. Il passaggio del click_id è la chiave — possiamo tracciare il clic di un link breve fino all'acquisto con un semplice JOIN. Questo ha colmato il nostro gap di attribuzione last-click.

T
Team dati marketing, e-commerce, Tallinn
Analista dati marketing

Elido analytics vs Bitly Analytics vs Heap

Due opzioni lato shortener confrontate con una piattaforma di product analytics. Onesti su quale strumento sia quello giusto per ogni domanda.

FeatureElidoBitly AnalyticsHeap
Accesso agli eventi clic grezziSchema ClickHouse completo, esportazione, DSNContatori aggregati; dati grezzi non accessibiliAccesso completo agli eventi — product analytics
Campionamento0% — ogni evento memorizzatoNessuna informazione sul campionamento pubblicataDipendente dal piano nel livello gratuito
Orizzonte di retentionFino a 24 mesi (Business)90 giorni (a pagamento)Dipende dal piano
Conversione server-sideGA4 MP, Meta CAPI, MixpanelNon disponibileInserimento server-side (eventi prodotto)
Esportazione in warehouseEsportazione pianificata S3, BigQuery, SnowflakeSolo download CSVHeap Data Lake (BigQuery)
Firehose Kafka in tempo realeSì — BusinessNon disponibileNon disponibile
Tracciamento a livello utenteNo — solo a livello di clicNoSì — funzionalità principale
Accesso SQL direttoDSN ClickHouse di sola lettura (Business)NoHeap Data Lake (BigQuery)

Domande sugli analytics

Cosa contengono i campi dell'evento clic?

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, referer (URL completo, nullable). Lo schema è disponibile su /docs/api-reference sotto 'Click events'. È stabile; le aggiunte sono retrocompatibili; le rimozioni ricevono un avviso di deprecazione di 90 giorni.

Perché a volte manca la geolocalizzazione a livello di città?

La risoluzione geografica a livello di città dipende dall'intervallo IP. NAT di classe carrier, VPN e alcuni proxy aziendali risolvono solo a livello di regione o paese — non possiamo risalire a una città da un IP NAT condiviso. Utilizziamo MaxMind GeoIP2 City; l'accuratezza è elevata per gli IP residenziali ma inferiore per gli intervalli IP degli operatori mobili e aziendali. Riportiamo ciò che riusciamo a risolvere; non tiriamo a indovinare.

In che modo l'attribuzione della conversione si interrompe se il click_id viene perso?

Se il parametro di query click_id viene rimosso prima della conversione (checkout multi-step, router SPA, reindirizzamenti che non inoltrano i parametri di query), il POST di conversione all'endpoint di Elido non ha alcun clic da associare e l'attribuzione fallisce silenziosamente. Testa il tuo flusso di checkout: clicca su un link breve, verifica che il click_id appaia nel POST di conversione finale. Se non appare, aggiungi l'inoltro dei parametri di query nel tuo flusso di checkout. Questo è il gap di attribuzione più comune — non il pixel, ma la perdita dei parametri di query nella sessione di checkout.

Qual è il ritardo di inserimento tra un clic e la disponibilità in ClickHouse?

Solitamente inferiore a 5 secondi. Il percorso è: il clic colpisce l'edge → evento fire-and-forget a Redpanda → il consumatore click-ingester legge da Redpanda e scrive in ClickHouse. Il consumatore gira continuamente con auto-commit. Se la pipeline rimane indietro (picco di traffico elevato, problema infrastrutturale), il topic Redpanda conserva gli eventi per 7 giorni. Monitoriamo il ritardo del consumatore; l'allerta scatta a 60 secondi di ritardo. Gli aggiornamenti della dashboard in tempo reale interrogano l'API di analytics ogni 30 secondi.

Posso filtrare il DSN ClickHouse per vedere solo i clic di un dominio?

Il DSN si connette a una vista ClickHouse per workspace che mostra tutti i clic per tutti i link nel tuo workspace. Filtri per dominio, link_id o tag nel tuo SQL. Se desideri viste per dominio, creale nel tuo strumento di BI utilizzando una clausola WHERE. Al momento non forniamo sub-utenti per dominio in ClickHouse.

Gli analytics sono conformi al GDPR?

Gli eventi clic vengono raccolti senza cookie. Il tipo di dispositivo, l'OS e il browser vengono dedotti dallo User-Agent. L'IP viene utilizzato per la risoluzione geografica e poi scartato — non memorizziamo IP grezzi negli eventi clic. La geolocalizzazione a livello di città viene memorizzata; se ciò conta come dato personale secondo la tua interpretazione del GDPR (posizione derivata dall'IP), configura il tuo workspace per la risoluzione geografica solo a livello di paese. La risoluzione solo per paese è un'impostazione del workspace su Business.

Qual è la differenza tra analytics su Free, Pro e Business?

Free: conservazione di 90 giorni, breakdown per paese + dispositivo, conteggio clic per link. Pro: conservazione di 12 mesi, breakdown completo geo/dispositivo/referrer/UTM, heatmap ora del giorno, attribuzione conversione. Business: conservazione di 24 mesi, viste coorte + retention, DSN ClickHouse, firehose Kafka, esportazione pianificata BigQuery/Snowflake/S3.

Posso vedere gli analytics per una campagna o cartella specifica, non solo per link?

Sì — gli analytics a livello di campagna aggregano tutti i link taggati per una campagna. I rollup a livello di cartella sono disponibili tramite API (somma dei clic sui link in una cartella per intervallo di date). La vista campagna della dashboard mostra i clic totali, il tasso di conversione, la distribuzione UTM e il breakdown per link per la campagna. Non esiste ancora una 'dashboard analytics cartelle' nell'interfaccia utente — è in tabella di marcia.

Pronto a provarlo?

Inizia con il piano gratuito, effettua l'upgrade quando hai bisogno di un dominio personalizzato.

Analytics — Basato su ClickHouse, conforme al GDPR. · Elido