Migrate from Dub.co to Elido
REST-API import from Dub.co with folders and tags preserved. Paste a token, pick a project, run.
Dub.co is the closest open-source equivalent to Elido in feature surface — a strong product with a clean REST API. The migration path here is for teams that pick Elido for EU-residency, our edge POP footprint (Hetzner FRA + ASH, OVH SGP), or our analytics depth on ClickHouse. Dub's REST API exposes every link, folder, and tag in your project; the worker paginates at 100 links per call, resolves slug collisions, and preserves the Dub folder/tag structure as Elido tags. If you've been running Dub self-hosted, the side-grade is even simpler because there's no vendor lock-in to escape.
- Every active Dub.co link in your selected project
- Slug mapped 1:1 to Elido when free (suffix walk on collision)
- Destination URL, title, and Dub.co tags (preserved verbatim)
- Dub folder structure flattened into tags so you can group via Elido's tag filter
- Per-click history. Dub's analytics export is plan-tier-bound and the per-click event endpoint isn't structured for migration; new clicks land in Elido analytics from cutover.
- Dub's geo-targeting and device-targeting rules. Rebuild them as Elido smart-link rules (/features/smart-links) — the syntax is more expressive but the mental model is the same.
- Custom Dub QR styling. Default Elido QR is created for every imported link; restyle in bulk after import.
- Dub workspace ACLs. Re-grant access in Elido using SCIM (/features/scim-sso) or workspace member invites.
How the migration runs
Five steps, end-to-end. The interactive panel lives at /dashboard/integrations/dub-migration.
- 1
Generate a Dub.co API token
Dub.co → Settings → Tokens → Create token. Pick a project-scoped token rather than a workspace-wide one if you want to import a single project. Only read scope is needed; we never write to your Dub account.
- 2
Open the Elido import flow
Sign in to Elido, then go to Integrations → Dub.co → Elido. Paste the token. If you want to filter by a Dub workspace/project slug, paste it into the optional filter field; leave blank to import everything the token can see.
- 3
Pick a target domain and conflict strategy
Pair your Dub project with an Elido domain. Choose a conflict strategy: suffix walks mylink-2 / mylink-3; skip leaves the existing Elido link alone; fail aborts the whole job on first conflict.
- 4
Run the import
We paginate Dub's API at 100 links per page. The dashboard polls progress every two seconds. A 4,000-link project usually finishes in 3–5 minutes. Token stays in memory only.
- 5
Verify and switch DNS
Spot-check a sample of imported slugs in Elido's link list (filter by tag `imported:dub`). When you're ready, point your Dub custom domain's DNS at Elido per /docs/guides/custom-domains.
FAQ
I'm self-hosting Dub. Does this migration still apply?
Yes — the migration uses the same REST API that the Dub Cloud product exposes. Point Elido at your self-hosted Dub instance by overriding DUB_API_BASE via the [email protected] concierge path (we don't expose that as a self-serve setting in v1).
How are Dub folders preserved?
Flattened into tags. A Dub link in folder `campaigns/q3-launch` imports with tags `campaigns` and `q3-launch`, plus the standard `imported:dub` tag. Elido's tag filter handles the same retrieval patterns as folders.
Where does my Dub token go?
Into the api-core process memory for the duration of the worker run, then it's dropped. The import_jobs row records the source vendor and project slug — never the token. (See /trust.)
How is the migration different from a Dub-to-Bitly migration?
Dub's API is the cleanest of our five migration sources — better-documented than Bitly's and more permissive on free plans than Rebrandly's. The worker is mechanically identical; the per-vendor scaffolding is just the pagination shape.
Is there a maximum job size?
50,000 links per job. Above that, email [email protected] for a chunked migration.
Ready to leave Dub.co?
Start in the dashboard. Read the engineering write-up first if you want to see how the worker is built.