One link. iOS, Android, and the web fallback.
Vous mesurez l'activation, la rétention et l'adoption des fonctionnalités. Elido achemine un seul lien court là où l'utilisateur devrait aller maintenant.
- Deferred deep-link parity across iOS Universal Links and Android App Links
- A/B variants per link with weighted or round-robin rotation
- In-app share with branded short URL preview
- QR codes for offline-to-app: print, scan, install, attribute
elido.me/p123yourapp://product/123intent://product/123shop.example.com/product/123app installed → deep link · App/Play Store → install · desktop → webDeferred deep-linking
Click → install → land on the right screen.
Most app installs lose context — the user clicked a link about product X, the App Store opens, and your onboarding starts at the welcome screen instead of product X. Deferred deep-linking preserves intent across the install boundary using clipboard fingerprint matching.
- Step 1
Click
elido.me/p123 (no app)Click hash + UTM landed in ClickHouse with a 24h match window.
- Step 2
Install
App Store / Play StoreUser redirects to the store, downloads, opens the app for the first time.
- Step 3
First launch
clipboard fingerprint matchYour SDK reads the click hash; the API joins it to the original click row.
- Step 4
Deep-route
/product/123 · attributedApp opens at the right screen with UTM context, not the welcome screen.
A/B variants
Soft-launch on 5%. Roll out on 100%. Same short link.
A single short link can carry up to five destinations. Split by weight or round-robin; each variant tracks its own click time-series and z-test confidence. Useful for feature-flag-style rollouts where you want a small percentage of users on a new onboarding path without a client-side SDK.
- Weighted splitConfigurable per variant — 5/95 for soft launches
- z-test confidenceTwo-proportion z-test at the click level
- Round-robinEqual distribution for low-volume creative tests
- Per-variant time-seriesSee dayparting and device-type drift between arms
elido.me/launchshare.acme.app/r/u-9h2x- Embed in newsletterBranded short URL preview
- Generate QR codeSVG · for print or screen
- Add to campaignInherits UTM template
In-app share
Share buttons that mint short links on tap.
The share API takes a destination URL, a campaign tag, and an optional click cap. It returns a branded short link and an Open Graph preview ready for the share sheet. The link's UTM template inherits from the campaign so analytics arrive pre-tagged. Click cap means a referral code can be capped at N uses without touching your backend.
- POST /v1/links with campaign_id + max_clicks
- Branded short URL on your custom domain
- Auto-generated OG image with link metadata
- Click cap fires expired_destination_url at threshold
- Per-share analytics: who shared, who clicked, when
What you can ship
- Deferred deep-link parity across iOS Universal Links and Android App Links
- A/B variants per link with weighted or round-robin rotation
- In-app share with branded short URL preview
- QR codes for offline-to-app: print, scan, install, attribute
- Server-side conversion attribution from app install events
- Post-install attribution via clipboard + fingerprint match
Ce que Elido apporte aux équipes produit
Les liens d'onboarding, le routage par feature-flag et les liens profonds présentent souvent des difficultés dans la plupart des réducteurs de liens. Voici les lacunes spécifiques que nous comblons.
Redirigez vers la bonne destination sans service de redirection personnalisé
Les smart-links évaluent les règles au niveau du edge pour chaque requête : géolocalisation (pays ISO), type d'appareil (mobile/tablette/ordinateur), système d'exploitation, en-tête de langue, domaine référent et créneaux horaires avec filtres par jour de la semaine. Les règles sont évaluées dans l'ordre ; la première correspondance l'emporte. La limite est de cinq règles par lien sur le forfait Pro ; le forfait Business supprime ce plafond. Un repli vers une destination par défaut est toujours requis. Pour les équipes produit, les modèles courants sont : diriger les utilisateurs iOS vers l'App Store et Android vers le Play Store à partir d'un seul lien partagé ; diriger les utilisateurs d'un marché spécifique vers une page de destination localisée ; envoyer les utilisateurs vers une page d'événement en direct pendant un créneau spécifique et vers un enregistrement en dehors de celui-ci. Les règles sont configurées dans le tableau de bord ou via l'API — aucun service de redirection à déployer, aucune fonction Lambda à maintenir. Les modifications se propagent au edge en moins de 60 secondes sans déploiement.
Répartition du trafic pour les lancements progressifs et les tests créatifs
Un seul lien court peut comporter jusqu'à 5 variantes de destination. Le trafic est réparti par poids (configurable par variante ; répartition égale par défaut) ou en mode round-robin. Chaque variante suit ses propres séries temporelles de clics afin que vous puissiez voir si l'engagement d'une variante diffère selon l'heure de la journée ou le type d'appareil — utile pour les tests spécifiques à une interface. Le modèle de confiance statistique est un z-test de comparaison de deux proportions au niveau du clic ; le tableau de bord affiche 'la variante A l'emporte avec une confiance de X %' une fois que les deux variantes ont dépassé l'échantillon minimal (par défaut 200 clics chacune). Pour le routage de type feature-flag — où vous souhaitez qu'un petit pourcentage d'utilisateurs accède à un nouveau flux d'onboarding — utilisez une répartition pondérée avec 5 % sur la nouvelle destination. Contrairement à un outil de feature-flag dédié, cela ne nécessite pas de SDK côté client ; il s'agit d'une redirection côté serveur. Le compromis : vous ne pouvez pas cibler des utilisateurs ou des segments d'utilisateurs spécifiques, seulement des segments statistiques basés sur les attributs de la requête.
Universal Links et App Links sans service de deep-linking tiers
Les liens profonds ouvrent l'écran approprié dans une application native lorsqu'elle est installée. Sur iOS, il s'agit des Universal Links (domaines HTTPS interceptés par l'OS si l'application les a revendiqués). Sur Android, il s'agit des App Links (vérifiés via assetlinks.json). Elido sert automatiquement les fichiers apple-app-site-association et assetlinks.json à partir des chemins well-known de votre domaine personnalisé — vous configurez une seule fois l'ID du bundle et l'ID de l'équipe de votre application dans les paramètres du domaine, et les fichiers sont maintenus à jour. Chaîne de repli : application installée → cible du lien profond ; application non installée → URL App Store / Play Store spécifiée ; ordinateur → URL Web. Les paramètres UTM sont préservés tout au long du repli. Aucun SDK de deep-linking tiers n'est requis dans l'application — l'OS gère l'interception, pas le JavaScript. Testé avec adb shell et xcrun simctl à chaque version.
Share links with built-in caps and rotation for time-bounded campaigns
Le plafond max_clicks est défini par lien : lorsque le nombre de clics atteint le seuil, le lien redirige vers une URL de destination expirée configurable au lieu de la cible normale. C'est utile pour les liens de parrainage in-app (N utilisations par code), les liens d'invitation à une version bêta à accès limité et les aperçus de fonctionnalités limités dans le temps. Combinez avec rotation_mode : 'round-robin' pour distribuer le trafic sur un groupe de destinations pour les flux de listes d'attente ou les versions de fonctionnalités par cohortes. Côté produit, la logique de création de lien + plafond + rotation réside entièrement sur le serveur — aucun état côté client à synchroniser. Le compteur de clics est dans ClickHouse et se met à jour en moins de 5 secondes. Les analyses par lien détaillent la répartition des clics entre les variantes, afin que vous puissiez voir quel emplacement de rotation a été utilisé et à quelle fréquence.
Cohort and retention views without a separate analytics product
Le niveau d'analyse d'Elido sur le forfait Business inclut des vues de cohortes et de rétention dans ClickHouse : choisissez un lien ou une campagne, choisissez une dimension de cohorte (canal d'acquisition, pays, type d'appareil), et obtenez une carte de chaleur de rétention par jour ou par semaine. Ceci ne remplace pas un outil complet d'analyse produit — il n'y a pas de suivi des événements au niveau de l'utilisateur, pas de relecture de session, et pas de constructeur de tunnel sur des types d'événements arbitraires. Ce qu'il remplace, c'est la question : 'combien de personnes ayant cliqué sur l'e-mail d'onboarding sont revenues le lendemain ?' — cela se trouve dans les données d'événements de clic et Elido les affiche directement. Pour une analyse de tunnel plus approfondie, exportez le flux de clics bruts vers BigQuery ou Snowflake et joignez-le à la table des événements utilisateurs de votre produit. Le DSN ClickHouse (Business) permet un accès SQL direct si votre équipe BI préfère cela aux exports.
Stack you'll touch
- Liens intelligents
- Liens profonds
- Variantes A/B
- Analyses de funnel + cohorte
- Campagnes
Ce que vous allez instrumenter
- Amélioration de l'activation
- Acheminement par liens intelligents
- Cohortes de rétention
- Quotidiennes / hebdomadaires / mensuelles
- Fenêtre d'échantillonnage A/B
- Contrôlée par heure de la journée
Équipes produit qui construisent sur cette base
Les noms sont des espaces réservés pour le moment — les vrais noms de clients apparaîtront ici au fur et à mesure de la publication des études de cas.
“Les liens profonds sans Branch étaient une exigence absolue après l'arrêt de Firebase Dynamic Links. La configuration des Universal Links d'Elido a pris un après-midi — pas de SDK dans l'application, pas de service supplémentaire à surveiller. Le taux de repli vers l'App Store a révélé que 40 % de nos liens de partage sont cliqués avant que l'utilisateur n'installe l'application.”
“Nous utilisons les règles smart-link pour le routage géographique vers des pages de destination régionales. La gestion via un réducteur de liens plutôt que via notre propre service de redirection a supprimé deux fonctions Lambda de notre infrastructure et la charge d'astreinte qui allait avec.”
“Le plafond de clics sur les liens de parrainage est la fonctionnalité que personne ne présente mais dont tout le monde a besoin. Nous avons défini un max_clicks par code d'invitation et avons arrêté de sur-provisionner les accès bêta.”
Elido vs Branch.io vs deep-linking personnalisé pour les équipes produit
Branch est le leader du marché du deep-linking. Le deep-linking personnalisé est possible mais coûteux à maintenir. Les différences ci-dessous sont pertinentes lorsque votre besoin principal est le deep-linking plus le routage — et non une plateforme complète d'attribution mobile.
| Capability | Elido | Branch.io | Deep-linking personnalisé |
|---|---|---|---|
| Universal Links (iOS) | apple-app-site-association auto-hébergé depuis votre domaine | Entièrement géré, éprouvé à grande échelle | Vous hébergez le JSON, gérez l'hébergement |
| App Links (Android) | assetlinks.json auto-hébergé depuis votre domaine | Entièrement géré | Vous servez et maintenez à jour |
| SDK tiers tiers requis dans l'application | Non — interception au niveau de l'OS | Oui — SDK Branch | Non — mais vous écrivez la logique de repli |
| Règles de routage smart-link | Géo, appareil, OS, langue, référent, heure | Parcours ciblés par audience (plus puissant) | Tout ce que vous codez |
| A/B testing sur les destinations | Oui — répartition pondérée, confiance par z-test | A/B au niveau du parcours (outil CRO complet) | Vous le construisez |
| Attribution mobile (MMP) | Passage de l'ID de clic ; intégration MMP manuelle | MMP natif — Appsflyer, Adjust, Kochava | Vous intégrez |
| Prix | Inclus dans Pro et Business | Basé sur le volume ; les contrats mid-market commencent plus haut | Coût d'ingénierie uniquement |
| Analyses de clics | ClickHouse, par lien, cohortes sur Business | Analyses approfondies d'attribution mobile | Tout ce que vous construisez |
Questions des équipes produit
Ai-je besoin d'un SDK de type Branch dans mon application pour utiliser les liens profonds Elido ?
Non. Les liens profonds Elido utilisent les Universal Links iOS et les App Links Android — des mécanismes au niveau de l'OS qui ne nécessitent aucun SDK tiers dans votre application. Vous configurez les fichiers apple-app-site-association et assetlinks.json via les paramètres de domaine d'Elido ; Elido les sert sur les chemins well-known de votre domaine personnalisé. Votre application doit gérer l'URL du lien universel — c'est du code de routage d'URL standard iOS/Android, pas une nouvelle dépendance SDK.
Qu'est-il arrivé à Firebase Dynamic Links — Elido peut-il les remplacer ?
Firebase Dynamic Links a été arrêté en août 2025. Elido peut remplacer le modèle de base : un lien HTTPS unique qui ouvre l'application si elle est installée, se replie sur le store si ce n'est pas le cas, et se replie sur le web sur ordinateur. Nous ne reproduisons pas le deep-linking différé de Firebase (passage de contexte après une installation) — cela nécessite un SDK dans l'application. Pour le deep-linking différé, vous aurez toujours besoin d'Appsflyer, d'Adjust ou d'un MMP similaire.
Comment les variantes A/B fonctionnent-elles avec les règles smart-link ?
Les règles smart-link sont évaluées en premier. Si une règle correspond, elle utilise la destination définie par la règle — les variantes ne sont pas appliquées. Si aucune règle ne correspond, le trafic passe au repli, et si le repli comporte des variantes, la répartition par variante s'applique. Vous pouvez donc avoir un lien qui dirige inconditionnellement les utilisateurs iOS vers l'App Store, dirige les utilisateurs d'ordinateur aux États-Unis vers une page de destination spécifique, et effectue un test A/B pour tous les autres entre deux destinations.
Quel est le cas d'usage du plafond de clics pour le produit ?
Programmes de parrainage (N utilisations par code d'invitation), accès bêta limité (plafonnement des invitations sans toucher à votre backend), aperçus limités dans le temps (maximum 500 clics sur un lien de démonstration avant qu'il n'expire vers une page de liste d'attente). max_clicks est défini par lien au moment de la création ou via PATCH. Lorsque le plafond est atteint, le lien redirige vers l'expired_destination_url que vous avez configurée.
Le suivi au niveau de la session ou de l'utilisateur est-il disponible ?
Non. Les événements de clic sont au niveau de la requête : pays, appareil, OS, référent, UTM et horodatage. Il n'y a pas d'identité utilisateur dans les événements de clic, à moins que vous ne passiez un user_id en tant que paramètre de requête personnalisé et qu'il ne parvienne à votre destination. Elido n'est pas un outil d'analyse produit — il ne fait pas de relecture de session, de profils d'utilisateurs ou de suivi de tunnel sur des événements arbitraires. Pour cela, utilisez Mixpanel, PostHog ou Amplitude et joignez les données de clics sur l'UTM ou l'ID de clic.
À quelle vitesse les modifications des règles smart-link se propagent-elles ?
Les modifications de règles sont écrites dans api-core et poussées vers le cache L2 Redis en moins de 60 secondes. Le cache LRU interne du service edge-redirect a une durée de vie (TTL) de 30 secondes pour les liens porteurs de règles. En pratique : une modification de règle est active au edge dans les 90 secondes suivant son enregistrement dans le tableau de bord ou via l'API.
Puis-je utiliser Elido pour le partage in-app sans domaine personnalisé ?
Oui. Les domaines partagés d'Elido (s.elido.me pour les forfaits payants, b.elido.me pour Business) fonctionnent parfaitement pour les liens de partage in-app où la cohérence de la marque est moins importante que le plafond de clics et les fonctionnalités de routage. Les domaines personnalisés vous permettent d'avoir des URL à votre image (share.votreapp.com), ce qui est important pour les programmes de parrainage où le lien apparaît dans l'interface utilisateur.
Où puis-je exporter les données de cohortes de rétention si j'en ai besoin dans mon entrepôt de données ?
Exportation planifiée vers S3, BigQuery ou Snowflake — disponible avec le forfait Business. Exportez le flux de clics bruts ; le calcul des cohortes s'exécute dans votre entrepôt où vous pouvez le joindre à la table des événements utilisateurs de votre produit. Le DSN ClickHouse (Business) permet un accès SQL direct si vous préférez calculer les cohortes dans ClickHouse et extraire les résultats vers votre outil BI.
Product team's reading list
iOS Universal Links + Android App Links setup, fallback chain, and tested configurations.
Edge rule engine for routing by device, OS, language, geo, and time.
One landing surface for the link in your bio — useful for app-store + web fallbacks.
Branded SVG/PNG generation with click-through analytics on every scan.
Server-side attribution for app installs and post-install events.
Pas sûr de l'angle qui convient ?
La plupart des équipes commencent par un et évoluent vers les quatre. Notre équipe commerciale peut examiner votre pile spécifique en 20 minutes.