Migrate from Short.io to Elido
Per-domain import from Short.io with every slug preserved. Paste your API key, pick the source domain, run.
Short.io's Personal plan starts at $20/mo and the Team plan at $60/mo (accessed 2026-05-22); both meter on monthly clicks and add a per-link surcharge above 50,000 redirects. Elido imports every Short.io link on a chosen source domain into a workspace and target domain you control. Each link keeps its slug where possible; collisions are handled by your choice of suffix / skip / fail strategy. The worker paginates Short.io's REST API per-domain at 150 links per call and the entire run is bounded by a 30-minute budget.
- Every active Short.io link on the source domain you select
- Slug mapped 1:1 to Elido when free (suffix walk on collision)
- Destination URL, title, and Short.io tags (we add an `imported:shortio` tag automatically)
- Public/private state — private Short.io links import as link-level deactivated and you flip them on selectively
- Per-click history. Short.io's analytics export is Team-plan-only and gives aggregate counters; new clicks land in Elido analytics from the cutover moment forward.
- Short.io's branded domain DNS. The slug imports; you point the same hostname at Elido (CNAME or A record per /docs/guides/custom-domains).
- A/B split-test configurations. Short.io's split-test feature has no clean export; rebuild them in Elido as smart-link rules (/features/smart-links).
- Custom Short.io click attribution rules. Re-create them as Elido campaigns post-import using the `imported:shortio` tag for bulk reassignment.
How the migration runs
Five steps, end-to-end. The interactive panel lives at /dashboard/integrations/shortio-migration.
- 1
Generate a Short.io API key
Short.io → Integrations & API → API keys → Generate. Copy the key. It only needs read scope; we never write to your Short.io account.
- 2
Pick the source domain in Short.io
Note the Short.io domain you want to import from (e.g. example.short.gy). Short.io paginates per-domain; you import one Short.io domain per Elido job, but multiple jobs can run sequentially.
- 3
Open the Elido import flow
Sign in to Elido, then go to Integrations → Short.io → Elido. Paste the API key and the source domain hostname. The dashboard validates both before kicking off the job.
- 4
Pick a target domain and conflict strategy
Pair the Short.io domain with an Elido domain. Pick a conflict strategy: suffix appends -2, -3 on collision; skip leaves the existing Elido link alone and logs the source row; fail aborts the whole job on first conflict.
- 5
Run the import
We paginate Short.io at 150 links per call — the fastest of our five sources. A 5,000-link domain finishes in roughly 3–6 minutes. The dashboard polls progress every two seconds. The token is in memory only.
FAQ
I have multiple Short.io domains — can I import them all in one go?
Not in a single job. Short.io paginates per-domain so we run one job per source domain. You can queue multiple jobs back to back; the dashboard lists every recent run.
What about private Short.io links?
They import as deactivated Elido links so a leaked slug doesn't resolve. Flip them on selectively from the dashboard once you've verified the import.
Where does my Short.io API key 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 source domain — never the key. (See /trust.)
How is this different from running a CSV export?
Short.io's CSV export is Team-plan-only and ships without tags or A/B configuration. The API path here preserves more metadata and gives us a deterministic conflict-resolution UX instead of a one-shot file upload.
Is there a maximum job size?
50,000 links per job per domain. Above that, email [email protected] for a chunked migration.
Ready to leave Short.io?
Start in the dashboard. Read the engineering write-up first if you want to see how the worker is built.