Blog

Migrating from Bitly: what moves, what cannot, and the safe order

Existing bit.ly links can never be transferred — only a custom domain moves cleanly. The export, the bulk import, and the sequence that keeps every printed code working.

By Wasim Idrishi · Updated · 5 min read

Start with the sentence that decides the whole plan: a bit.ly link can only ever be redirected by Bitly. There is no export format, no transfer request and no technical trick that changes this. Anyone who tells you otherwise is describing recreation, not migration.

That leaves two genuinely different situations, and they need opposite plans.

Every printed code, every posted link and every QR pointing at bit.ly/something stays dependent on Bitly for as long as you need it to work. Cancelling the account is what kills them, whenever you do it.

So the plan is not a migration. It is a cutover with a long tail:

  1. Export everything before you touch anything

    Links with their destinations, and click history. Both live only in your account until you take a copy, and the history is not recoverable afterwards at any price.

  2. Sort by clicks in the last 90 days

    Almost every list has a short head and a long dead tail. The head is what you will recreate carefully; the tail is mostly links nobody has followed in a year.

  3. Recreate the head as new links with the same destinations

    New short links, new codes. Use the same aliases where they are free, so anything you republish reads the same as before.

  4. Change what you control, and only that

    Website, email templates, social bios, signatures, new print runs. Anything already in the world stays on the old link.

  5. Keep the old account alive while the old links still get traffic

    Watch the click numbers on the Bitly side monthly. Cancel when they reach a level you are willing to lose, not on the day you finish rebuilding.

This one is clean, and it is the reason to have a custom domain in the first place.

go.yourbrand.com/spring resolves through whichever provider your DNS points at. Recreate every code here first, then repoint the CNAME. The same URLs keep working, every printed code stays valid, and the switch is a DNS change rather than a rebuild.

The order is not negotiable. Recreate, verify, then repoint. Repointing first gives you a window where every link on the domain returns a 404.

  1. Add the domain here and verify it while it is still live there

    A CNAME and a TXT record. Verification checks both. Your existing links keep resolving through the old provider throughout, because the CNAME has not moved yet.

  2. Import every code with its destination

    Post to the bulk endpoint with the batch domain set once, up to 1,000 rows per request, each row carrying the URL and the alias that must be preserved.

  3. Read the per-row results

    Rows fail independently and each says why. Reserved words and brand-protected aliases are the two you will hit; both are refused by name rather than silently altered.

  4. Spot-check, then repoint the CNAME

    Open twenty of the recreated codes against the new host directly before the DNS change. Then move the CNAME and watch traffic arrive.

Bulk URL Shortener

Open the full tool

Reshaping the export

A Bitly export is not the shape the bulk endpoint takes, and the reshaping is where mistakes hide.

FieldFrom the exportNotes
urlLong URL columnMust be http or https; anything else is rejected
aliasThe code after the slashOnly for a custom domain migration; on gc.mw it is a Pro feature
titleTitle columnOptional, for your own organisation
tagsTags columnLowercased on import; up to 20 per link
What each import row needs

Two things to check before sending. Duplicate aliases inside one batch are refused with a message naming the earlier row, so deduplicate first. And destinations that are themselves shortened links — a bit.ly pointing at a t.co pointing at your page — should be flattened to the real destination now, while you can see them.

What you will not be able to compare

Click totals. Not because either system is wrong, but because they count different things. We do not record link-preview crawlers at all, and we separate identified bots out of every audience breakdown. A number that drops on the day you switch is usually the preview traffic disappearing, not your audience.

Give it a month and compare shapes rather than totals: the hour-of-day curve, the referrer-type mix, the country split. Those transfer meaningfully. A single number does not.

What changes afterwards

Codes get shorter — four random characters on a paid plan against seven, which matters most in a QR code, where fewer characters means fewer modules and bigger squares at the same printed size. Analytics retention runs 30 days on Free, a year on Pro and three years on Business and Team.

And the domain itself is the part worth keeping regardless of provider: with a custom domain, the next migration after this one is a DNS change rather than a rebuild.

Questions people ask

Can my existing bit.ly links be moved?

No. A bit.ly link is served by Bitly's servers; only Bitly can decide where it redirects. Nobody can transfer one. What you can do is recreate the destinations under new short links and, separately, move a custom domain so its links keep resolving.

What about links on my own domain hosted at Bitly?

Those move cleanly, and this is the one true migration. Recreate every code on the same domain here, then repoint the CNAME. The same URLs resolve through us and nothing printed breaks. Do it in that order, never the reverse.

Will my click history come with me?

No. Export it before you cancel — a CSV kept in your own storage is the only version you will have. New links start at zero, and the two sets of numbers are not comparable anyway because different systems count bots and previews differently.

How do I move a large list?

Export from Bitly, reshape to one row per link with url, alias, title and tags, then post up to 1,000 rows per request to the bulk endpoint. Every row reports its own result, so a rejected alias does not stop the batch.

Is there a rush?

Only if you are on a plan that expires. Bitly's paid tiers carry monthly link allowances and analytics retention windows that vary by plan as of September 2026, so check what happens to your links and your history at cancellation before you set a date.

Sources

  1. Bitly pricing — checked 5 September 2026

Try it with your own link

Paste a long link and get a 10-character gc.mw link with a QR code. No account needed for 30 days; free forever with one.