One link. iOS, Android, and the web fallback.
Mierzysz aktywację, retencję i adopcję funkcji. Elido kieruje jeden krótki link tam, gdzie użytkownik powinien iść w danym momencie.
- 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
Co Elido daje zespołom produktowym
Linki onboardingowe, flagi funkcji i deep linki w większości skracaczy mają słabe punkty. Oto konkretne luki, które wypełniamy.
Kieruj do właściwego celu bez dedykowanej usługi przekierowań
Smart linki oceniają reguły na brzegu sieci (edge) przy każdym żądaniu: geolokalizacja (kraj ISO), typ urządzenia (mobile/tablet/desktop), system operacyjny, nagłówek języka, domena odsyłająca oraz filtry pory dnia i dnia tygodnia. Reguły są oceniane po kolei; wygrywa pierwsze dopasowanie. Limit w planie Pro to pięć reguł na link; plan Business usuwa to ograniczenie. Zawsze wymagane jest domyślne przekierowanie awaryjne (fallback). Dla zespołów produktowych typowe schematy to: kierowanie użytkowników iOS do App Store, a Androida do Play Store z jednego wspólnego linku; kierowanie użytkowników z konkretnego rynku na lokalną stronę docelową; wysyłanie użytkowników w określonym oknie czasowym na stronę wydarzenia na żywo, a poza nim do nagrania. Reguły ustawia się w panelu lub przez API — bez konieczności wdrażania usługi przekierowań czy utrzymywania funkcji Lambda. Zmiany propagują się na edge w mniej niż 60 sekund bez restartu systemu.
Podział ruchu dla stopniowych wdrożeń i testów kreacji
Pojedynczy krótki link może mieć do 5 wariantów docelowych. Ruch jest dzielony według wag (konfigurowalnych dla każdego wariantu; domyślnie równy podział) lub metodą round-robin. Każdy wariant śledzi własne szeregi czasowe kliknięć, dzięki czemu widać, czy zaangażowanie w danym wariancie różniło się w zależności od godziny lub typu urządzenia — przydatne przy testach specyficznych dla interfejsu. Model ufności statystycznej to z-test dla dwóch proporcji na poziomie kliknięć; panel pokazuje, że „wariant A prowadzi z ufnością X%”, gdy oba warianty przekroczą minimalną próbkę (domyślnie po 200 kliknięć każdy). W przypadku routingu typu feature-flag — gdzie chcesz skierować mały procent użytkowników na nowy proces onboardingu — użyj podziału ważonego z 5% na nową stronę docelową. W przeciwieństwie do dedykowanych narzędzi feature-flag, nie wymaga to SDK po stronie klienta; jest to przekierowanie po stronie serwera. Kompromis: nie można celować w konkretnych użytkowników lub segmenty, a jedynie w segmenty statystyczne oparte na atrybutach żądania.
Universal Links i App Links bez usług zewnętrznych firm
Deep linki otwierają odpowiedni ekran w natywnej aplikacji, jeśli jest zainstalowana. Na iOS są to Universal Links (domeny HTTPS, które system operacyjny przechwytuje, jeśli aplikacja je zgłosiła). Na Androidzie są to App Links (weryfikowane przez assetlinks.json). Elido automatycznie serwuje pliki apple-app-site-association i assetlinks.json z dobrze znanych ścieżek Twojej własnej domeny — konfigurujesz ID pakietu aplikacji i ID zespołu raz w ustawieniach domeny, a pliki są aktualizowane na bieżąco. Łańcuch fallbacku: aplikacja zainstalowana → cel deep-link; aplikacja nie zainstalowana → określony przez Ciebie URL App Store / Play Store; desktop → URL strony www. Parametry UTM są zachowywane przez cały proces. Nie jest wymagane żadne SDK firm trzecich w aplikacji — system operacyjny zajmuje się przechwytywaniem, a nie JavaScript. Testowane za pomocą adb shell i xcrun simctl przy każdym wydaniu.
Linki do udostępniania z wbudowanymi limitami i rotacją dla kampanii czasowych
Limit max_clicks jest ustawiany na link: gdy liczba kliknięć osiągnie próg, link przekierowuje na konfigurowalny adres wygasłego celu zamiast normalnego. Jest to przydatne w przypadku linków polecających w aplikacji (N użyć na kod), linków z ograniczonym dostępem do wersji beta oraz prezentacji funkcji ograniczonych czasowo. Połącz to z rotation_mode: 'round-robin', aby rozdzielić ruch między pulę celów dla list oczekujących lub kohortowych wydań funkcji. Od strony produktu, logika tworzenia linków + limity + rotacja żyje w pełni na serwerze — bez synchronizacji stanu po stronie klienta. Liczba kliknięć znajduje się w ClickHouse i aktualizuje się w mniej niż 5 sekund. Analityka na poziomie linku pokazuje rozkład kliknięć między warianty, dzięki czemu widać, który slot rotacji był używany najczęściej.
Widoki kohortowe i retencji bez osobnego produktu analitycznego
Warstwa analityczna Elido w planie Business obejmuje widoki kohortowe i retencji w ClickHouse: wybierz link lub kampanię, wybierz wymiar kohorty (kanał pozyskania, kraj, typ urządzenia) i otrzymaj mapę cieplną retencji według dni lub tygodni. Nie jest to zamiennik pełnego narzędzia do analityki produktowej — nie ma śledzenia zdarzeń na poziomie użytkownika, nagrywania sesji ani kreatora lejków dla dowolnych typów zdarzeń. Zastępuje to jednak pytanie: „ilu ludzi, którzy kliknęli w e-mail onboardingowy, wróciło następnego dnia?” — te dane znajdują się w kliknięciach i Elido wyświetla je bezpośrednio. Do głębszej analizy lejka wyeksportuj surowy strumień kliknięć do BigQuery lub Snowflake i połącz go z tabelą zdarzeń użytkowników Twojego produktu. DSN ClickHouse (w planie Business) daje bezpośredni dostęp SQL, jeśli Twój zespół BI preferuje to zamiast eksportów.
Stack you'll touch
- Inteligentne linki
- Głębokie linki
- Warianty A/B
- Analityka lejków + kohort
- Kampanie
Co będziesz instrumentować
- Wzrost aktywacji
- Kierowany inteligentnym linkiem
- Kohorty retencji
- Dzienne / tygodniowe / miesięczne
- Okno próbkowania A/B
- Kontrolowane godziną dnia
Zespoły produktowe budujące na tym rozwiązaniu
Nazwy są na razie tymczasowe — prawdziwe nazwy klientów pojawią się tutaj wraz z publikacją studiów przypadku.
“Deep linki bez Branch były twardym wymaganiem po wygaszeniu Firebase Dynamic Links. Konfiguracja Universal Link w Elido zajęła jedno popołudnie — żadnego SDK w aplikacji, żadnej dodatkowej usługi do pilnowania. Współczynnik fallbacku do App Store pokazał nam, że 40% naszych linków do udostępniania jest klikanych, zanim użytkownik zainstaluje aplikację.”
“Używamy reguł smart-link do routingu geograficznego na regionalne strony docelowe. Zarządzanie tym przez skracacz zamiast własnej usługi przekierowań usunęło dwie funkcje Lambda z naszej infrastruktury i odciążyło dyżury techniczne.”
“Limit kliknięć w linkach polecających to funkcja, której nikt nie pokazuje na prezentacjach, a każdy potrzebuje. Ustawiamy max_clicks na kod zaproszenia i przestaliśmy nadmiarowo przydzielać miejsca w becie.”
Elido vs Branch.io vs własne rozwiązanie dla zespołów produktowych
Branch jest liderem rynku deep-linków. Własne rozwiązanie jest możliwe, ale drogie w utrzymaniu. Poniższe różnice są istotne, gdy Twoją główną potrzebą są deep linki plus routing — a nie pełna platforma atrybucji mobilnej.
| Capability | Elido | Branch.io | Własne rozwiązanie |
|---|---|---|---|
| Universal Links (iOS) | Automatycznie serwowane apple-app-site-association z Twojej domeny | W pełni zarządzane, sprawdzone w skali | Sam serwujesz JSON, zarządzasz hostingiem |
| App Links (Android) | Automatycznie serwowane assetlinks.json z Twojej domeny | W pełni zarządzane | Sam serwujesz i aktualizujesz |
| Wymagane SDK firmy trzeciej w aplikacji | Nie — przechwytywanie na poziomie systemu | Tak — Branch SDK | Nie — ale sam piszesz logikę fallbacku |
| Reguły routingu smart-link | Lokalizacja, urządzenie, system, język, odsyłacz, czas | Ścieżki kierowane do konkretnych odbiorców (większa moc) | Cokolwiek zaprogramujesz |
| Warianty A/B dla celów | Tak — podział ważony, ufność z-test | A/B na poziomie ścieżki (pełne narzędzie CRO) | Sam to budujesz |
| Atrybucja mobilna (MMP) | Przekazywanie Click ID; ręczna integracja MMP | Natywne MMP — Appsflyer, Adjust, Kochava | Sam integrujesz |
| Cena | Zawarte w planach Pro i Business | Oparta na wolumenie; kontrakty enterprise zaczynają się wyżej | Tylko koszt inżynierów |
| Analityka kliknięć | ClickHouse, na poziomie linku, kohorty w Business | Głęboka analityka atrybucji mobilnej | Cokolwiek zbudujesz |
Pytania zespołów produktowych
Czy potrzebuję SDK typu Branch w mojej aplikacji, aby korzystać z deep linków Elido?
Nie. Deep linki Elido wykorzystują iOS Universal Links i Android App Links — mechanizmy na poziomie systemu operacyjnego, które nie wymagają zewnętrznego SDK w aplikacji. Konfigurujesz pliki apple-app-site-association i assetlinks.json w ustawieniach domeny Elido; Elido serwuje je na Twojej własnej domenie. Twoja aplikacja musi obsługiwać URL universal link — to standardowy kod routingu URL w iOS/Android, a nie nowa zależność od SDK.
Co się stało z Firebase Dynamic Links — czy Elido może je zastąpić?
Firebase Dynamic Links zostało wygaszone w sierpniu 2025 roku. Elido może zastąpić podstawowy wzorzec: pojedynczy link HTTPS, który otwiera aplikację, jeśli jest zainstalowana, odsyła do sklepu, jeśli nie jest, i odsyła do strony www na desktopie. Nie replikujemy odroczonego deep-linkingu (deferred deep-linking) Firebase (przekazywanie kontekstu przez instalację) — to wymaga SDK w aplikacji. Do tego celu nadal potrzebujesz Appsflyer, Adjust lub podobnego MMP.
Jak działają warianty A/B wraz z regułami smart-link?
Reguły smart-link są oceniane jako pierwsze. Jeśli reguła zostanie dopasowana, wybierany jest cel z tej reguły — warianty nie są stosowane. Jeśli żadna reguła nie pasuje, ruch trafia do domyślnego przekierowania (fallback), a jeśli tam skonfigurowano warianty, stosowany jest ich podział. Możesz więc mieć link, który bezwarunkowo kieruje użytkowników iOS do App Store, użytkowników desktopowych z USA na konkretną stronę, a wszystkich pozostałych dzieli testem A/B między dwa cele.
Jakie jest zastosowanie limitu kliknięć dla produktu?
Programy poleceń (N użyć na kod zaproszenia), ograniczony dostęp do bety (limitowanie zaproszeń bez ingerencji w backend), prezentacje ograniczone czasowo (maksymalnie 500 kliknięć w link demo, zanim wygaśnie i zacznie kierować na stronę listy oczekujących). max_clicks ustawia się przy tworzeniu linku lub przez PATCH. Po osiągnięciu limitu link przekierowuje na skonfigurowany expired_destination_url.
Czy dostępne jest śledzenie na poziomie sesji lub użytkownika?
Nie. Zdarzenia kliknięć są na poziomie żądania: kraj, urządzenie, system, odsyłacz, UTM i znacznik czasu. W zdarzeniach kliknięć nie ma tożsamości użytkownika, chyba że przekażesz user_id jako własny parametr zapytania i przepłynie on do celu. Elido nie jest narzędziem do analityki produktowej — nie nagrywa sesji, nie tworzy profili użytkowników ani nie śledzi lejków przez dowolne zdarzenia. Do tego celu użyj Mixpanel, PostHog lub Amplitude i połącz dane kliknięć po parametrze UTM lub Click ID.
Jak szybko propagują się zmiany reguł smart-link?
Zmiany reguł są zapisywane w api-core i przesyłane do pamięci podręcznej Redis L2 w mniej niż 60 sekund. Usługa edge-redirect posiada własną pamięć LRU z czasem TTL 30 sekund dla linków z regułami. W praktyce: zmiana reguły jest widoczna na edge w ciągu 90 sekund od zapisania jej w panelu lub przez API.
Czy mogę używać Elido do udostępniania w aplikacji bez własnej domeny?
Tak. Współdzielone domeny Elido (s.elido.me dla płatnych, b.elido.me dla Business) działają poprawnie w przypadku linków udostępnianych w aplikacji, gdzie spójność marki jest mniej istotna niż limity kliknięć i funkcje routingu. Własne domeny dają markowe adresy URL (np. polecam.twojaapka.pl), co ma znaczenie w programach poleceń, gdzie link pojawia się w interfejsie użytkownika.
Gdzie mogę wyeksportować dane kohortowe retencji, jeśli potrzebuję ich w hurtowni danych?
Planowy eksport do S3, BigQuery lub Snowflake jest dostępny w planie Business. Wyeksportuj surowy strumień kliknięć; obliczenia kohortowe uruchom w swojej hurtowni, gdzie możesz połączyć je z tabelą zdarzeń użytkowników swojego produktu. DSN ClickHouse (plan Business) daje bezpośredni dostęp SQL, jeśli wolisz obliczać kohorty w ClickHouse i pobierać wyniki do narzędzia 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.
Nie wiesz, która perspektywa pasuje?
Większość zespołów zaczyna od jednej, a potem rozszerza się na wszystkie cztery. Nasz zespół sprzedaży może omówić Twój konkretny stos w 20 minut.