Elido
Wszystko, co robi Elido
Pro i Business

Inteligentne linki. One link, many destinations.

Kierowanie według urządzenia, geolokalizacji, języka, pory dnia. Zasady oceniane na krawędzi POP — pierwsze dopasowanie wygrywa, powrót do domyślnego miejsca docelowego. Nie kosztuje nic ponad normalne przekierowanie z pamięci podręcznej.

  • First-match rule engine at the edge
  • Sub-millisecond rule evaluation
  • A/B variants with z-test confidence
  • Time-windowed campaigns in UTC
elido.me/launch
elido.me/xDE · mobileFR · anyiOS · anyfallback/de/preise/fr/tarifsApp Store/en/pricing
Edge eval < 1 msfirst-match
5
Reguły na link (Pro)
<90s
Propagacja reguł do edge
z-test
Model ufności A/B
6
Wymiary reguł

How it works

The redirect path, end to end

Smart-link rules are evaluated inside the same edge process that answers the redirect — there is no separate rules service to call. A cache-hit redirect with rules is indistinguishable from a plain one in latency.

  1. Step 1

    User clicks

    elido.me/x

    From email, QR, social, anywhere.

  2. Step 2

    Nearest edge POP

    Frankfurt · 4 ms

    Anycast routes to Hetzner FRA / OVH SGP / Hetzner ASH.

  3. Step 3

    Rule eval

    L1 cache · 0.2 ms

    First-match wins, no origin round-trip.

  4. Step 4

    302 → destination

    elido.me/x → /de/preise

    Click event fired async to Redpanda.

Rule builder

Rules that read like English

Every rule combines up to six dimensions — geo, device, OS, language, referrer, and time — joined with AND. Drag to reorder; first match wins. The fallback is always required, so a rule set never produces a 404.

  • Country
    ISO 3166-1 alpha-2 lists, e.g. DE, AT, CH
  • Device & OS
    iOS, Android, Windows, macOS, Linux
  • Language
    Accept-Language with BCP-47 fallbacks
  • Time window
    UTC range with day-of-week filter
  • Referrer
    Exact or wildcard host match
Routing rules
elido.me/launch
  • 1
    ifCountry: DE, AT, CHANDDevice: Mobile
    /de/preise
    ⋮⋮
  • 2
    ifCountry: FR, BEANDLanguage: fr-*
    /fr/tarifs
    ⋮⋮
  • 3
    ifOS: iOS
    App Store · apps.apple.com/...
    ⋮⋮
  • 4
    ifTime: Mon–Fri 09–17 UTCANDReferrer: newsletter.*
    /promo/q2
    ⋮⋮
  • else
    /en/pricing— fallback (required)
4 active rules · evaluated in orderLive · propagating to edge

Real-world routing

Same short link. Different landing per visitor.

The two patterns we see most: device-fork to native app stores with a desktop fallback, and country-fork for localised pricing pages. Both compose with A/B splits on the fallback path.

iPhoneiOS · Safari
elido.me/launch
Open in App Store
apps.apple.com/app/elido
Get the app
PixelAndroid · Chrome
elido.me/launch
Open in Play
play.google.com/store/apps/elido
Install
DesktopmacOS · any browser
elido.me/launch
elido.app/launch
Web onboarding, no install.
Continue

Country routing in production

An EU SaaS routing brand.app/pricing by visitor country. The fallback (everyone else) lands on the English page.

  • DE · Germany
    /de/preise
  • FR · France
    /fr/tarifs
  • ES · Spain
    /es/precios
  • IT · Italy
    /it/prezzi
  • PL · Poland
    /pl/cennik
  • NL · Netherlands
    /nl/prijzen
  • SE · Sweden
    /sv/priser
  • UA · Ukraine
    /uk/tsiny
  • · Everyone else
    /en/pricing
A/B split — elido.me/launch
7 days · 4,009 clicks
AA · /pricing-v1
1,842 clicks · CTR 4.1%
weight 50%45.9% of traffic
BB · /pricing-v2
Leading
2,167 clicks · CTR 4.8%
weight 50%54.1% of traffic
Z-test confidence
94%
Sample floor
200 / variant
Lift over A
+17.1%

A/B testing

Split traffic. Watch confidence climb.

Up to 5 variants per link with weighted or round-robin splits. Each variant tracks its own click time-series. The dashboard surfaces a two-proportion z-test as a directional indicator — we don’t hide the math.

  • Weighted (sums to 100) or round-robin
  • Per-variant click time-series
  • Z-test confidence over a configurable sample floor
  • Winner-picks-all locks the link to the leading variant
  • Composes with rules — A/B applies to the fallback path

What you can do

  • Dopasowanie kraju ISO i strefy czasowej IANA
  • Targetowanie mobilne / tablet / desktop
  • Okna czasowe z filtrami dni tygodnia
  • Wyrażenia regularne User-Agent dla zaawansowanych użytkowników
  • Limit kliknięć na link (max_clicks)
  • Warianty A/B z ważonym lub rotacyjnym rozkładem

Co tak naprawdę robi silnik reguł smart-link

Kierowanie geograficzne i na urządzenia to standard. Poniższe szczegóły wyjaśniają przypadki brzegowe, które utrudniają podstawowe wdrożenia.

Model ewaluacji reguł
01

Zasada pierwszeństwa (first-match), ewaluacja na brzegu sieci (edge POP) — bez odpytywania serwera źródłowego

Reguły są przechowywane w Redis (warstwa L2 cache) i oceniane przez usługę edge-redirect przy każdym żądaniu, w ramach tego samego procesu, który wykonuje przekierowanie — nie ma oddzielnego silnika reguł do wywołania. Ewaluacja reguły dodaje mniej niż 1 ms do przekierowania z cache. Kolejność ewaluacji jest zgodna z kolejnością ustawioną w panelu lub API; przeciągnij, aby zmienić kolejność, lub użyj pola order w API. Semantyka pierwszego dopasowania oznacza, że najbardziej szczegółowe reguły umieszczasz na początku (np. 'mobile + Niemcy + poniedziałek rano → strona promocyjna'), a reguły ogólne (catch-all) na końcu. Jeśli żadna reguła nie pasuje, serwowana jest lokalizacja zapasowa — fallback jest wymagany i nie może być pusty. Zmiany w regułach propagują się z api-core do Redis w mniej niż 30 sekund; czas TTL pamięci podręcznej LRU na krawędzi dla linków z regułami wynosi 60 sekund, więc pełne okno propagacji wynosi poniżej 90 sekund.

Wymiary reguł
02

Sześć wymiarów: lokalizacja, urządzenie, system operacyjny, język, referrer i czas

Każda reguła może łączyć do sześciu wymiarów w jednym warunku. Lokalizacja: lista kodów krajów ISO 3166-1 alpha-2 (jeden lub więcej krajów). Typ urządzenia: telefon, tablet, komputer — pochodzące z User-Agent. System operacyjny: iOS, Android, Windows, macOS, Linux — również z User-Agent. Język: dopasowanie nagłówka Accept-Language (tagi językowe BCP 47; 'fr' pasuje do 'fr-FR', 'fr-CA' itp.). Domena referrer: dokładne lub wieloznaczne dopasowanie do domeny nagłówka Referer (przydatne do kierowania ruchu z mediów społecznościowych vs e-mail vs wejścia bezpośrednie). Czas: okno czasowe UTC z opcjonalnym filtrem dni tygodnia (np. 'Pon–Pt 09:00–17:00 UTC'). Wyrażenie regularne User-Agent jest dostępne dla zaawansowanych użytkowników, którzy muszą celować w konkretną wersję przeglądarki lub robota; nie jest ono domyślnie widoczne w panelu, a jedynie przez API. Wiele wymiarów w pojedynczej regule jest łączonych operatorem AND; link może mieć do 5 reguł (Pro) lub nieograniczoną liczbę (Business).

Testy A/B
03

Ważone podziały A/B z ufnością z-test — do 5 wariantów na link

Link może mieć do 5 wariantów docelowych. Ruch jest dzielony według wagi (konfigurowalnej dla każdego wariantu; suma wag musi wynosić 100) lub metodą round-robin. Każdy wariant śledzi własny szereg czasowy kliknięć, dzięki czemu można sprawdzić, czy efekt jest spójny w różnych porach dnia. Model ufności to test z dla dwóch frakcji (two-proportion z-test) na poziomie kliknięć: panel pokazuje 'wariant A prowadzi z ufnością X%', gdy oba warianty przekroczą minimalną próbę (domyślnie 200 kliknięć każdy, konfigurowalne do 1 000). Raportujemy surową ufność z-test; nie stosujemy korekt testowania sekwencyjnego. Warianty A/B i reguły smart-link mogą współistnieć w tym samym linku: najpierw oceniane są reguły, a podział A/B dotyczy tylko ścieżki fallback. Możesz więc bezwarunkowo kierować użytkowników iOS, testując jednocześnie dwa miejsca docelowe dla całej reszty. Przycisk 'zwycięzca bierze wszystko' blokuje link do wiodącego wariantu i usuwa pozostałe — jest to nieodwracalne.

Reguły zaplanowane
04

Reguły ograniczone czasowo dla kampanii sezonowych i wydarzeń

Reguły czasowe pozwalają ustawić regułę, która aktywuje się i dezaktywuje zgodnie z harmonogramem bez ręcznej interwencji. Typowe zastosowanie: reguła strony promocyjnej aktywna od Czarnego Piątku 00:00 UTC do Cyber Poniedziałku 23:59 UTC, która następnie automatycznie powraca do stałego miejsca docelowego. Reguły są oceniane w czasie UTC; jeśli Twoja kampania jest wrażliwa na strefy czasowe, dokonaj konwersji na UTC w momencie konfiguracji. Zaplanowane reguły są oceniane w ten sam sposób co reguły statyczne — na krawędzi, bez odpytywania serwera źródłowego. Panel sterowania pokazuje widok osi czasu zaplanowanych reguł, dzięki czemu nakładające się okna są widoczne. Przypadek brzegowy: jeśli dwie reguły czasowe nakładają się na siebie i obie pasują, wygrywa ta z niższym indeksem kolejności (pierwsze dopasowanie). Brak wykrywania konfliktów — za przegląd nakładających się reguł odpowiada użytkownik.

Łańcuchy fallback
05

Wymagana docelowa lokalizacja zapasowa (fallback) — brak błędów 404, gdy reguły nie pasują

Każdy smart-link musi mieć miejsce docelowe fallback. Nie ma opcji 'pokaż stronę błędu, jeśli żadna reguła nie pasuje' — fallback jest siatką bezpieczeństwa. Lokalizacja zapasowa może być dowolnym adresem URL; jest również używana jako kanoniczne miejsce docelowe dla Google Bot i innych robotów (reguły smart-link nie są stosowane do znanych User-Agent robotów, aby uniknąć zamieszania w indeksowaniu). Poza głównym fallbackiem, wygaśnięcie na poziomie linku (expires_at) i limit kliknięć (max_clicks) mają własne, konfigurowalne adresy URL dla wygasłych linków — oddzielne od reguł fallback. Link może więc posiadać: do 5 reguł routingu, fallback dla braku dopasowania reguły, miejsce docelowe po dacie wygaśnięcia i miejsce docelowe po przekroczeniu limitu kliknięć. Elementy te łączą się w przejrzysty sposób; przypadki brzegowe są opisane w przewodnikach.

Zespoły używające smart-linków w środowisku produkcyjnym

Nazwy są obecnie symboliczne — prawdziwe nazwy klientów pojawią się wraz z publikacją studiów przypadków.

Zrezygnowaliśmy z usługi przekierowań w Node.js, która kosztowała nas 40 ms opóźnienia. Smart-linki w Elido oceniają reguły na krawędzi; przekierowanie jest tak szybkie, jak zwykły krótki link. Usługa reguł to 600 linii kodu, których już nie musimy utrzymywać.

Z
Zespół Growth, aplikacja B2C, Madryt
Lead Engineer

Reguły czasowe dla treści sezonowych pozwalają nam ustawić kampanie z wyprzedzeniem i iść spać. Wcześniej była to ręczna zmiana przekierowania o 2 w nocy. Teraz to zaplanowana reguła i przypomnienie w kalendarzu, by sprawdzić wynik.

Z
Zespół kampanii, grupa medialna, Warszawa
Digital Campaign Manager

Wyświetlanie ufności A/B w panelu zakończyło dyskusje typu 'czy to jest istotne statystycznie?' na naszych spotkaniach. Patrzymy na wynik testu z, uzgadniamy próg i idziemy dalej.

Z
Zespół produktu, platforma SaaS, Lizbona
Product Manager

Smart-linki Elido vs Bitly geo + Rebrandly geo

Zarówno Bitly, jak i Rebrandly oferują kierowanie geograficzne. Różnice tkwią w głębokości reguł, opóźnieniu ewaluacji i możliwościach A/B.

FeatureElidoBitlyRebrandly
Wymiary regułLokalizacja, urządzenie, system operacyjny, język, referrer, czasLokalizacja + urządzenie (limitowane)Lokalizacja + urządzenie
Warianty A/B na linkDo 5 — ważone + ufność z-testNiedostępneNiedostępne
Reguły oceniane na krawędziTak — brak odpytywania serwera źródłowegoPrzekierowania serwowane na krawędzi; ewaluacja reguł różnaZależnie od planu
Czas propagacji regułPoniżej 90 sekundBrak dokumentacjiBrak dokumentacji
Reguły zaplanowane / okna czasoweTak — okno UTC, filtr dni tygodniaNiedostępneNiedostępne
Maksymalna liczba reguł na link5 w Pro, nieograniczona w BusinessLokalizacja: 1 na linkZależnie od planu
Miejsce docelowe fallbackWymagane, konfigurowalneDomyślne miejsce doceloweDomyślne miejsce docelowe
Limit kliknięćTak — na link, na wariantNiedostępneNiedostępne

Pytania o smart-linki

Jak szybko propagują się zmiany w regułach?

api-core wypycha zmiany reguł do Redis w ciągu 30 sekund od zapisu. Usługa edge-redirect posiada wewnątrzprocesową pamięć podręczną LRU z czasem TTL wynoszącym 60 sekund dla linków z regułami. Pełna propagacja: w najgorszym przypadku poniżej 90 sekund. Jeśli potrzebujesz szybszej propagacji (np. przełączenie podczas wydarzenia na żywo), API posiada punkt końcowy czyszczenia cache, który wymusza natychmiastową inwalidację w Redis — wówczas edge LRU pobierze nowe dane z Redis w ciągu kilku sekund.

Co się stanie, jeśli dwie reguły pasują do tego samego zapytania?

Wygrywa pierwsze dopasowanie — stosowana jest reguła o najniższym indeksie kolejności. Nie ma wykrywania konfliktów ani łączenia reguł. Twoim obowiązkiem jest poprawne uporządkowanie reguł oraz unikanie nakładających się okien czasowych lub list krajów. Narzędzie podglądu reguł w panelu pozwala symulować testowe żądanie względem aktualnego zestawu reguł, aby zweryfikować, która z nich zostanie uruchomiona.

Czy reguły dotyczą Google Bot i innych robotów (crawlers)?

Nie. Znane wzorce User-Agent robotów są wyłączone z ewaluacji reguł; roboty zawsze trafiają do miejsca docelowego fallback. Jest to zamierzone — nie chcesz, aby routing smart-link wpływał na indeksowanie lub nieumyślnie serwował robotom treści specyficzne dla regionu. Lista wykluczeń dla robotów jest taka sama, jak ta używana przez krawędź do klasyfikacji ruchu organicznego vs roboty w analityce.

Jak obliczana jest ufność testu z-test?

Test z dla dwóch frakcji na poziomie kliknięć. Hipoteza zerowa zakłada, że oba warianty mają taki sam współczynnik klikalności. Ufność to 1 - p-value, wyrażona w procentach. Nie stosujemy poprawki Bonferroniego dla wielu wariantów; uruchomienie więcej niż 2 wariantów zwiększa odsetek wyników fałszywie dodatnich. W przypadku formalnych eksperymentów wyeksportuj surowy strumień kliknięć i przeprowadź test istotności w swojej hurtowni danych. Liczbę w panelu prezentujemy jako wskaźnik kierunkowy, a nie ostateczny wniosek przyczynowy.

Czy mogę ustawić regułę kierującą tylko na podstawie konkretnego źródła (referrer)?

Tak — dopasowanie domeny referrer jest jednym z sześciu wymiarów reguł. Możesz dopasować dokładną domenę (np. 'newsletter.example.com') lub użyć symbolu wieloznacznego ('*.example.com'). Używany jest nagłówek Referer; usuwanie referrera w protokole HTTPS oznacza, że nie zawsze otrzymasz informację o źródle z zewnętrznych witryn HTTPS. W przypadku linków udostępnianych w wiadomościach e-mail (gdzie Referer zazwyczaj jest nieobecny), reguły oparte na źródle są mniej niezawodne niż reguły lokalizacji czy urządzenia.

Czy mogę używać smart-linków w planie darmowym?

Nie. Smart-linki są funkcją dostępną w planach Pro i Business. Linki w planie darmowym prowadzą do jednego miejsca docelowego bez żadnych reguł routingu. Możesz podejrzeć interfejs reguł w wersji darmowej, ale reguły nie będą oceniane na krawędzi do momentu przejścia na wyższy plan.

Czy dostępne są statystyki dla poszczególnych wariantów?

Tak. Każdy wariant w podziale A/B ma własny szereg czasowy kliknięć widoczny w widoku analityki linku. Podziały według lokalizacji, urządzenia i źródła są agregowane na poziomie linku, a nie poszczególnych wariantów — szczegółowe statystyki wymiarów dla wariantów znajdują się w planach rozwojowych dla Business.

Jaka jest różnica między smart-linkiem a podziałem A/B kampanii?

Podział A/B smart-link dotyczy pojedynczego linku: dzielisz ruch na różne miejsca docelowe dla tego samego krótkiego adresu URL. Podział A/B kampanii odbywa się na poziomie kampanii: uruchamiasz dwa warianty krótkich linków (różne slugi) kierujące do tego samego miejsca docelowego i używasz analityki kampanii, aby porównać, który slug uzyskał więcej kliknięć. Różne zastosowania: A/B na poziomie linku służy do testowania miejsc docelowych; A/B kampanii służy do testowania kreacji i slugów.

Gotowy, aby wypróbować?

Zacznij od planu darmowego, uaktualnij, gdy będziesz potrzebować niestandardowej domeny.

Inteligentne linki — Jeden krótki link, wiele miejsc docelowych. · Elido