Analyses. Every click, mapped in real time.
Flux de clics en temps réel vers ClickHouse. Géolocalisation, appareil, référent, UTM. Vues de funnel et de cohorte sur Business. Exportations planifiées vers S3, BigQuery ou 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
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.
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 breakdownISO 3166-1 alpha-2 with click share %
- City-level precisionWhere IP resolution goes below region
- Device + OS splitMobile, tablet, desktop; iOS, Android, Windows
- UTM attributionsource, medium, campaign, term, content
- Hour × day heatmapIdentify peak windows and bot patterns
- Germany3,241
- Poland2,108
- France1,879
- United States1,432
- United Kingdom1,219
- Netherlands887
- Czech Republic641
- Sweden512
- Click from Berlin, DEnewsletter.acme.comMobile2s ago
- QR scan from Tokyo, JPdirectMobile5s ago
- Click from Warsaw, PLtwitter.comDesktop11s ago
- Click from Paris, FRlinkedin.comDesktop18s ago
- Click from New York, USgoogle.comMobile27s ago
- Click from Amsterdam, NLdirectDesktop41s ago
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
- Événements de clics en temps réel
- Détails par pays / appareil / référent
- Rétention de funnel + cohorte (Business)
- Carte de chaleur heure par jour × jour par semaine
- Exportations planifiées vers S3 / BQ / Snowflake
- Attribution des conversions depuis Stripe / Shopify
Ce que fait réellement la pile analytique
Le comptage des clics et les répartitions géographiques sont présents dans tous les réducteurs de liens. Les capacités ci-dessous sont celles où l'architecture basée sur ClickHouse fait une réelle différence.
Événements de clics bruts dans ClickHouse — chaque événement, pas d'agrégation à l'ingestion
Les événements de clics sont ingérés via Redpanda et écrits dans ClickHouse par le service click-ingester. Il n'y a pas de couche d'échantillonnage — un lien avec 10 clics et un lien avec 10 millions de clics utilisent le même pipeline. La rétention est de 90 jours sur Free, 12 mois sur Pro, 24 mois sur Business. Les champs du schéma d'événement incluent : 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, et referer (URL complète, nullable). Le schéma est public et versionné ; les changements font l'objet d'un guide de migration. Le délai d'ingestion des événements est généralement inférieur à 5 secondes entre le clic et la disponibilité dans ClickHouse. Si vous utilisiez Bitly ou Rebrandly et que vous vous fiiez au 'nombre total de clics' comme KPI, vous obtiendrez les mêmes chiffres d'Elido — plus la possibilité de requêter les événements bruts au lieu d'un simple compteur.
Répartitions géographiques, par appareil, référent et UTM au niveau du lien
Chaque lien du tableau de bord a sa propre vue analytique : graphique temporel des clics (horaire, quotidien, hebdomadaire), répartition géographique (pays → région → ville, où la résolution IP descend jusqu'à la ville), type d'appareil (mobile, tablette, bureau), OS, navigateur, domaine référent et distribution des paramètres UTM. La carte de chaleur heure-du-jour × jour-de-la-semaine montre quand le trafic d'un lien culmine — utile pour planifier des campagnes, confirmer qu'un événement en direct a généré du trafic à l'heure prévue et détecter les comportements de bots (les bots frappent souvent les liens à des heures creuses constantes sans répartition géographique). Pour les liens avec des règles de smart-link, les analyses par variante sont visibles dans la même vue — nombres de clics et séries temporelles par variante.
Attribution des conversions côté serveur depuis Stripe, Shopify et webhooks personnalisés
L'attribution des conversions côté serveur comble le fossé créé par les pixels côté client. À chaque clic, Elido enregistre un click_id et le transmet en tant que paramètre de requête à l'URL de destination. Lorsqu'un événement de conversion se déclenche sur votre backend (Stripe checkout.session.completed, Shopify orders/paid ou votre propre POST vers l'endpoint de conversion d'Elido), Elido le fait correspondre au clic d'origine, attribue la valeur du revenu et diffuse la conversion vers GA4 Measurement Protocol, Meta CAPI ou Mixpanel — selon ce que vous avez configuré. La conversion apparaît dans la vue analytique du lien attribuée au clic (et son contexte UTM). Cela fonctionne à travers les sessions de navigation et les limites des bloqueurs de publicités car c'est du serveur à serveur. Cas particulier : si votre flux de paiement supprime le paramètre de requête click_id avant la conversion (ex : paiement en plusieurs étapes qui ne conserve pas les paramètres de requête), l'attribution échoue. Testez l'intégralité du flux de paiement avec le click_id avant de passer en production.
Exports programmés vers S3, BigQuery et Snowflake, plus firehose Kafka en temps réel
L'export programmé envoie les événements de clics vers S3 (Parquet ou JSON), BigQuery ou Snowflake selon une cadence configurable (horaire ou quotidienne). Les exports incrémentiels ajoutent uniquement les nouveaux événements depuis la dernière exécution, indexés sur occurred_at. La première exécution remonte jusqu'à votre fenêtre de rétention. Pour les équipes qui ont besoin de données en moins d'une minute dans leur entrepôt : le firehose Kafka/Redpanda (Business) offre un groupe de consommateurs direct avec un délai de bout en bout inférieur à 5 secondes. Les deux chemins utilisent le même schéma d'événement — passer de l'export programmé au firehose est un changement de consommateur, pas de schéma. Pour les équipes qui préfèrent le SQL direct à l'ETL d'export : le DSN ClickHouse en lecture seule (Business) vous permet de connecter Metabase, Hex, Grafana ou tout client compatible ClickHouse directement à la table d'événements de votre espace de travail.
Carte de chaleur de rétention et vues de cohortes pour l'analyse de l'engagement au niveau du clic
Les espaces de travail Business bénéficient de vues de cohortes et de rétention dans le tableau de bord analytique. Choisissez un lien ou une campagne, choisissez une dimension de cohorte (pays, type d'appareil, source UTM) et obtenez une carte de chaleur de rétention par jour ou par semaine. Cela répond à des questions comme 'les utilisateurs qui cliquent depuis la recherche organique reviennent-ils plus sur ce lien que les utilisateurs payants ?' — pas au niveau de la session (Elido ne suit pas les sessions), mais au niveau de la cohorte de clics. C'est un instrument différent d'un outil d'analyse de produit comme Mixpanel ou PostHog : il mesure le réengagement avec le lien, pas le comportement dans le produit. Pour les équipes qui utilisent des liens courts dans des campagnes d'e-mailing, les cohortes de rétention permettent de voir si un lien est revisité (newsletters transférées, pages mises en favoris) ou s'il s'agit d'un clic unique.
Équipes s'appuyant sur les analyses d'Elido
Les noms sont des espaces réservés pour le moment — les vrais noms de clients seront affichés ici au fur et à mesure de la publication des études de cas.
“Nous sommes passés à Meta CAPI côté serveur via Elido après qu'iOS 14.5 a tué notre attribution par pixel. La configuration a pris deux sprints ; nous avons récupéré l'attribution sur environ 25 % des conversions que le pixel perdait. La transmission du contexte UTM vers CAPI est ce qui a rendu l'attribution réellement utile.”
“Le DSN ClickHouse sur Business signifie que nos tableaux de bord Metabase interrogent directement les données d'événements de clics. Pas de job d'export à surveiller, pas de délai de synchronisation. Nous répondons à la question 'quel article a généré le plus de clics sur les liens monétisés aujourd'hui ?' sans ticket pour l'ingénierie.”
“Nous exportons vers BigQuery et joignons les événements de clics avec notre table de commandes Shopify. Le passage du click_id est la clé — nous pouvons tracer un clic sur un lien court jusqu'à l'achat avec un simple JOIN. Cela a comblé notre lacune d'attribution au dernier clic.”
Analyses Elido vs Bitly Analytics vs Heap
Deux options côté réducteur comparées à une plateforme d'analyse de produit. Honnête sur quel outil est adapté à quelle question.
| Feature | Elido | Bitly Analytics | Heap |
|---|---|---|---|
| Accès aux événements de clics bruts | Schéma ClickHouse complet, export, DSN | Compteurs agrégés ; données brutes inaccessibles | Accès complet aux événements — analyse de produit |
| Échantillonnage | 0 % — chaque événement stocké | Aucune info d'échantillonnage publiée | Dépend du plan sur le niveau gratuit |
| Horizon de rétention | Jusqu'à 24 mois (Business) | 90 jours (payant) | Dépend du plan |
| Conversion côté serveur | GA4 MP, Meta CAPI, Mixpanel | Non disponible | Ingestion côté serveur (événements produit) |
| Export vers entrepôt | S3, BigQuery, Snowflake programmé | Téléchargement CSV uniquement | Heap Data Lake (BigQuery) |
| Firehose Kafka en temps réel | Oui — Business | Non disponible | Non disponible |
| Suivi au niveau de l'utilisateur | Non — niveau clic uniquement | Non | Oui — fonctionnalité de base |
| Accès SQL direct | DSN ClickHouse en lecture seule (Business) | Non | Heap Data Lake (BigQuery) |
Questions sur les analyses
Quels champs sont présents dans l'événement de clic ?
click_id (UUID), link_id, workspace_id, occurred_at (horodatage UTC), country_iso2, region, city, device_type (mobile/tablette/bureau), os, browser, referrer_domain, utm_source, utm_medium, utm_campaign, utm_term, utm_content, referer (URL complète, nullable). Le schéma est disponible sur /docs/api-reference sous 'Click events'. Il est stable ; les ajouts sont rétrocompatibles ; les suppressions font l'objet d'un préavis de 90 jours.
Pourquoi la géolocalisation au niveau de la ville est-elle parfois manquante ?
La résolution géographique au niveau de la ville dépend de la plage IP. Le NAT de classe transporteur, les VPN et certains proxys d'entreprise ne permettent une résolution qu'au niveau de la région ou du pays — nous ne pouvons pas résoudre une ville à partir d'une IP NAT partagée. Nous utilisons MaxMind GeoIP2 City ; la précision est élevée pour les IP résidentielles mais plus faible pour les plages IP des opérateurs mobiles et des entreprises. Nous rapportons ce que nous pouvons résoudre ; nous ne devinons pas.
Comment l'attribution de conversion échoue-t-elle si le click_id est perdu ?
Si le paramètre de requête click_id est supprimé avant la conversion (paiement en plusieurs étapes, routeur SPA, redirections qui ne transmettent pas les paramètres de requête), le POST de conversion vers l'endpoint d'Elido n'a aucun clic auquel correspondre et l'attribution échoue silencieusement. Testez votre flux de paiement : cliquez sur un lien court, vérifiez que le click_id apparaît dans le POST de conversion final. S'il n'apparaît pas, ajoutez le transfert de paramètre de requête dans votre flux de paiement. C'est la lacune d'attribution la plus courante — pas le pixel, mais la perte du paramètre de requête dans la session de paiement.
Quel est le délai d'ingestion entre un clic et sa disponibilité dans ClickHouse ?
Généralement moins de 5 secondes. Le chemin est : le clic frappe l'edge → événement 'fire-and-forget' vers Redpanda → le consommateur click-ingester lit depuis Redpanda et écrit dans ClickHouse. Le consommateur tourne en continu avec auto-commit. Si le pipeline prend du retard (pic de trafic élevé, problème d'infrastructure), le sujet Redpanda conserve les événements pendant 7 jours. Nous surveillons le retard du consommateur ; l'alerte se déclenche à un retard de 60 secondes. Les mises à jour du tableau de bord en temps réel interrogent l'API d'analytics toutes les 30 secondes.
Puis-je filtrer le DSN ClickHouse pour ne voir que les clics d'un seul domaine ?
Le DSN se connecte à une vue ClickHouse par espace de travail qui affiche tous les clics pour tous les liens de votre espace de travail. Vous filtrez par domaine, link_id ou tag dans votre SQL. Si vous voulez des vues par domaine, créez-les dans votre propre outil de BI en utilisant une clause WHERE. Nous ne fournissons pas actuellement de sous-utilisateurs par domaine dans ClickHouse.
Les analyses sont-elles conformes au GDPR ?
Les événements de clics sont collectés sans cookies. Le type d'appareil, l'OS et le navigateur sont déduits du User-Agent. L'IP est utilisée pour la résolution géographique puis supprimée — nous ne stockons pas les IP brutes dans les événements de clics. La géolocalisation au niveau de la ville est stockée ; si cela compte comme une donnée personnelle selon votre interprétation du GDPR (localisation dérivée de l'IP), configurez votre espace de travail pour une résolution géographique au pays uniquement. La résolution par pays uniquement est un paramètre d'espace de travail sur Business.
Quelle est la différence entre les analyses sur Free, Pro et Business ?
Free : rétention de 90 jours, répartition par pays + appareil, nombre de clics par lien. Pro : rétention de 12 mois, répartition complète géo/appareil/référent/UTM, carte de chaleur heure-du-jour, attribution des conversions. Business : rétention de 24 mois, vues de cohorte + rétention, DSN ClickHouse, firehose Kafka, export programmé BigQuery/Snowflake/S3.
Puis-je voir les analyses pour une campagne ou un dossier spécifique, et pas seulement par lien ?
Oui — les analyses au niveau de la campagne s'agrègent sur tous les liens tagués dans une campagne. Les regroupements au niveau du dossier sont disponibles via l'API (somme des clics sur les liens d'un dossier par plage de dates). La vue de campagne du tableau de bord affiche le nombre total de clics, le taux de conversion, la distribution UTM et la répartition par lien pour la campagne. Il n'y a pas encore de 'tableau de bord analytique par dossier' dans l'interface utilisateur — c'est sur la feuille de route.
Keep reading
Comment les équipes axées sur les données utilisent Elido — DSN ClickHouse, firehose Kafka et attribution côté serveur.
Guides de configuration du transfert de conversion côté serveur pour chaque plateforme.
Analyses de split A/B — données de clics par variante et confiance z-test dans le même pipeline analytique.
Schéma ClickHouse, champs d'événement et référence de l'endpoint d'analytics.
Prêt à essayer ?
Commencez avec le forfait gratuit, passez à la version supérieure lorsque vous avez besoin d'un domaine personnalisé.