One link. iOS, Android, and the web fallback.
Medes ativação, retenção e adoção de funcionalidades. O Elido encaminha um único link curto para onde o utilizador deve ir agora.
- 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
O que o Elido oferece às equipes de produto
Links de onboarding, roteamento por feature-flag e deep links costumam ser complicados na maioria dos encurtadores. Estes são os problemas específicos que resolvemos.
Direcione para o destino correto sem um serviço de redirecionamento customizado
Os smart links avaliam regras na edge em cada requisição: geolocalização (país ISO), tipo de dispositivo (mobile/tablet/desktop), sistema operacional, cabeçalho de idioma, domínio de referência e horário com filtros de dia da semana. As regras são avaliadas em ordem; a primeira correspondência vence. O limite é de cinco regras por link no plano Pro; o Business remove esse limite. Um fallback para um destino padrão é sempre obrigatório. Para equipes de produto, os padrões comuns são: direcionar usuários de iOS para a App Store e de Android para a Play Store a partir de um único link compartilhado; direcionar usuários de um mercado específico para uma landing page localizada; enviar usuários em uma janela de tempo específica para uma página de evento ao vivo e, caso contrário, para uma gravação. As regras são definidas no painel ou via API — sem serviço de redirecionamento para implantar, sem Lambda para manter. As alterações se propagam para a edge em menos de 60 segundos sem necessidade de deploy.
Divisão de tráfego para lançamentos graduais e testes criativos
Um único link curto pode ter até 5 variantes de destino. O tráfego é dividido por peso (configurável por variante; divisão igual por padrão) ou round-robin. Cada variante rastreia sua própria série temporal de cliques para que você possa ver se o engajamento de uma variante divergiu por hora do dia ou por tipo de dispositivo — útil para testes específicos de interface. O modelo de confiança estatística é um teste-z de duas proporções no nível do clique; o painel mostra 'variante A lidera com X% de confiança' assim que ambas as variantes superam a amostra mínima (padrão de 200 cliques cada). Para roteamento estilo feature-flag — onde você deseja uma pequena porcentagem de usuários em um novo fluxo de onboarding — use uma divisão ponderada com 5% no novo destino. Diferente de uma ferramenta de feature-flag dedicada, isso não exige um SDK no lado do cliente; é um redirecionamento no lado do servidor. O contraponto: você não pode segmentar usuários específicos, apenas segmentos estatísticos por atributos da requisição.
Universal Links e App Links sem um serviço de deep-link de terceiros
Deep links abrem a tela certa em um app nativo quando o app está instalado. No iOS, são os Universal Links (domínios HTTPS que o sistema operacional intercepta se o app os reivindicar). No Android, são os App Links (verificados via assetlinks.json). O Elido serve automaticamente os arquivos apple-app-site-association e assetlinks.json a partir dos caminhos well-known do seu domínio customizado — você configura o ID do bundle do seu app e o ID da equipe uma vez nas configurações de domínio, e os arquivos são mantidos atualizados. Cadeia de fallback: app instalado → destino do deep-link; app não instalado → URL da App Store / Play Store que você especificar; desktop → URL web. Parâmetros UTM são preservados através do fallback. Não é necessário SDK de deep-link de terceiros no app — o sistema operacional cuida da interceptação, não o JavaScript. Testado com adb shell e xcrun simctl em cada release.
Compartilhe links com limites integrados e rotação para campanhas temporais
O limite de max_clicks é definido por link: quando a contagem de cliques atinge o limite, o link redireciona para uma URL de destino expirado configurável em vez do destino normal. Isso é útil para links de indicação no app (N usos por código), links de convite para beta com acesso limitado e prévias de features com tempo limitado. Combine com rotation_mode: 'round-robin' para distribuir o tráfego entre um pool de destinos para fluxos de lista de espera ou lançamentos de features por coorte. Do lado do produto, a lógica de criação de link + limite + rotação vive totalmente no servidor — sem estado no lado do cliente para sincronizar. A contagem de cliques está no ClickHouse e é atualizada em menos de 5 segundos. As análises por link detalham a distribuição de cliques entre as variantes, para que você possa ver qual slot de rotação foi usado e com que frequência.
Visualizações de coorte e retenção sem um produto de analytics separado
O nível de analytics do Elido no plano Business inclui visualizações de coorte e retenção no ClickHouse: escolha um link ou campanha, escolha uma dimensão de coorte (canal de aquisição, país, tipo de dispositivo) e obtenha um mapa de calor de retenção por dia ou semana. Isso não substitui uma ferramenta completa de product analytics — não há rastreamento de eventos por usuário, nem replay de sessão ou construtor de funil para tipos de eventos arbitrários. O que ele substitui é a pergunta 'quantas pessoas que clicaram no e-mail de onboarding voltaram no dia seguinte?' — isso vive nos dados de eventos de clique e o Elido expõe isso diretamente. Para análises de funil mais profundas, exporte o fluxo bruto de cliques para o BigQuery ou Snowflake e cruze-o com a tabela de eventos de usuários do seu produto. O DSN do ClickHouse (Business) permite acesso SQL direto se sua equipe de BI preferir isso em vez de exportações.
Stack you'll touch
- Smart links
- Deep links
- Variantes A/B
- Analytics de funil + coorte
- Campanhas
O que vais instrumentar
- Aumento de ativação
- Encaminhado por smart-link
- Coortes de retenção
- Diária / semanal / mensal
- Janela de amostragem A/B
- Controlada por hora do dia
Equipes de produto construindo com isto
Nomes são temporários por enquanto — nomes reais de clientes serão inseridos conforme estudos de caso forem publicados.
“Deep links sem o Branch eram um requisito inegociável após o encerramento do Firebase Dynamic Links. A configuração de Universal Link do Elido levou uma tarde — sem SDK no app, sem serviço extra para monitorar. A taxa de fallback da App Store revelou que 40% dos nossos links de compartilhamento são clicados antes do usuário instalar o app.”
“Usamos regras de smart-link para roteamento geográfico para landing pages regionais. Gerenciar isso através de um encurtador em vez do nosso próprio serviço de redirecionamento removeu duas funções Lambda da nossa infraestrutura e a carga de sobreaviso que vinha com elas.”
“O limite de cliques em links de indicação é o recurso que ninguém demonstra, mas todo mundo precisa. Definimos um max_clicks por código de convite e paramos de superprovisionar vagas no beta.”
Elido vs Branch.io vs Deep-linking customizado para equipes de produto
O Branch é o líder de mercado em deep-link. O deep-linking customizado é possível, mas caro de manter. As diferenças abaixo são relevantes quando sua necessidade principal é deep links mais roteamento — e não uma plataforma completa de atribuição mobile.
| Capability | Elido | Branch.io | Deep-linking customizado |
|---|---|---|---|
| Universal Links (iOS) | Servido automaticamente via apple-app-site-association do seu domínio | Totalmente gerenciado, comprovado em escala | Você serve o JSON e gerencia a hospedagem |
| App Links (Android) | Servido automaticamente via assetlinks.json do seu domínio | Totalmente gerenciado | Você serve e mantém atualizado |
| SDK de terceiros necessário no app | Não — interceptação em nível de sistema operacional | Sim — SDK do Branch | Não — mas você escreve a lógica de fallback |
| Regras de roteamento smart-link | Geo, dispositivo, sistema operacional, idioma, referência, horário | Jornadas segmentadas por audiência (mais poderoso) | O que você programar |
| Variantes A/B nos destinos | Sim — divisão ponderada, confiança com teste-z | A/B em nível de jornada (ferramenta completa de CRO) | Você constrói |
| Atribuição Mobile (MMP) | Passagem de ID de clique; integração com MMP manual | MMP Nativo — Appsflyer, Adjust, Kochava | Você integra |
| Preço | Incluso nos planos Pro e Business | Baseado em volume; contratos mid-market começam mais alto | Apenas custo de engenharia |
| Analytics de cliques | ClickHouse, por link, coorte no plano Business | Analytics profundo de atribuição mobile | O que você construir |
Dúvidas das equipes de produto
Preciso de um SDK estilo Branch no meu app para usar os deep links do Elido?
Não. Os deep links do Elido usam os Universal Links do iOS e App Links do Android — mecanismos do sistema operacional que não exigem SDK de terceiros no seu app. Você configura os arquivos apple-app-site-association e assetlinks.json através das configurações de domínio do Elido; o Elido os serve nos caminhos well-known no seu domínio customizado. Seu app precisa apenas lidar com a URL do universal link — esse é um código de roteamento de URL padrão de iOS/Android, não uma nova dependência de SDK.
O que aconteceu com o Firebase Dynamic Links — o Elido pode substituí-lo?
O Firebase Dynamic Links foi encerrado em agosto de 2025. O Elido pode substituir o padrão básico: um único link HTTPS que abre o app se estiver instalado, faz o fallback para a loja se não estiver e para a web no desktop. Não replicamos o deep-linking diferido do Firebase (passar contexto através de uma instalação) — isso exige um SDK no app. Para deep-linking diferido, você ainda precisaria do Appsflyer, Adjust ou um MMP similar.
Como funcionam as variantes A/B junto com as regras de smart-link?
As regras de smart-link são avaliadas primeiro. Se uma regra corresponder, ela assume o destino da regra — as variantes não são aplicadas. Se nenhuma regra corresponder, o tráfego cai para o fallback e, se o fallback tiver variantes configuradas, a divisão de variantes se aplica. Assim, você pode ter um link que direciona usuários de iOS para a App Store incondicionalmente, usuários de desktop dos EUA para uma landing page específica e divide o restante via teste A/B entre dois destinos.
Qual é o caso de uso do limite de cliques para produto?
Programas de indicação (N usos por código de convite), acesso beta limitado (limite convites sem tocar no seu backend), prévias temporais (máximo de 500 cliques em um link de demonstração antes de expirar para uma página de lista de espera). O max_clicks é definido por link na criação ou via PATCH. Quando o limite é atingido, o link redireciona para a expired_destination_url que você configurou.
Existe rastreamento em nível de sessão ou de usuário?
Não. Os eventos de clique são em nível de requisição: país, dispositivo, sistema operacional, referência, UTM e timestamp. Não há identidade de usuário nos eventos de clique, a menos que você passe um user_id como parâmetro de consulta customizado e ele flua para o seu destino. O Elido não é uma ferramenta de product analytics — ele não faz replay de sessão, perfis de usuário ou rastreamento de funil em eventos arbitrários. Para isso, use Mixpanel, PostHog ou Amplitude e cruze os dados de clique via UTM ou ID de clique.
Com que rapidez as alterações nas regras de smart-link se propagam?
As alterações nas regras são gravadas no api-core e enviadas para o cache Redis L2 em menos de 60 segundos. O cache LRU em processo do serviço edge-redirect tem um TTL de 30 segundos para links com regras. Na prática: uma alteração de regra está ativa na edge em até 90 segundos após ser salva no painel ou API.
Posso usar o Elido para compartilhamento in-app sem um domínio customizado?
Sim. Os domínios compartilhados do Elido (s.elido.me para planos pagos, b.elido.me para Business) funcionam bem para links de compartilhamento in-app onde a consistência da marca é menos importante que os recursos de limite de cliques e roteamento. Domínios customizados oferecem URLs com sua marca (share.seuapp.com), o que importa para programas de indicação onde o link aparece na interface.
Onde posso exportar dados de coorte de retenção se precisar deles no meu warehouse?
Exportação agendada para S3, BigQuery ou Snowflake — disponível no plano Business. Exporte o fluxo bruto de cliques; a computação de coorte roda no seu warehouse, onde você pode cruzá-la com a tabela de eventos de usuários do seu produto. O DSN do ClickHouse (Business) fornece acesso SQL direto se você preferir computar coortes no ClickHouse e puxar os resultados para sua ferramenta de 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.
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.