Migration GuideMost imports take minutes

Migrate from Branch to Flyn

Export your Branch links, preview them in Flyn for free, and move your branded domain, with no SDK needed for Flyn deep links

Last updated: September 2026

Previewing is free on every plan. Importing needs Pro, Lifetime or Team.

Already have a Flyn account? Open the importer

Pre-Migration Checklist

Complete these steps before starting the migration to ensure a smooth transition.

  • 1
    Export your links from Branch as CSV and verify the file downloaded correctly
  • 2
    Check that the export includes every link you still use; if links are missing, ask Branch support for a full export
  • 3
    Document your current custom domain DNS settings (screenshot recommended)
  • 4
    List any links that rely on Branch SDK deferred deep linking; Flyn does not do deferred deep linking, so keep Branch or another MMP for those
  • 5
    If your links use your own branded domain, add it in Flyn (Settings > Domains) before you import
  • 6
    Check your Flyn plan: previewing an import is free, creating the links needs Pro, Lifetime or Team
  • 7
    Notify your team about the upcoming migration window

Step 1: Export from Branch

First, get your existing links out of Branch so you can import them into Flyn.

1

Log in to your Branch dashboard

Log in to your Branch account at dashboard.branch.io.

2

Open the Quick Links page

Go to the Quick Links page to see your short links.

3

Export the link table as CSV

Branch's link management table can export a CSV of your links, and its bulk editor can export link attributes. The download icons on the Summary and analytics pages export traffic data, not a list of links, so they are not the file you need.

4

Check that nothing is missing

Make sure the file has every link you still use. We could not confirm whether the table export has a size or date limit, or which Branch plans include API access, so if links are missing, ask Branch support for a full export.

Step 2: Import into Flyn

Upload your export and Flyn detects the format, maps the columns (you can change any of them), and previews every link before anything is created. Previewing is free; importing needs Pro, Lifetime or Team.

Using your own branded domain? Add it in Settings > Domains before you import (Step 3 lists the DNS records), so the preview can match those links to it. Want to look first? Drop the file on the migration page: it is read in your browser and nothing is uploaded.

1

Create a Flyn account

Sign up at flyn.to/signup, no credit card required. Uploading and previewing an import is free on every plan; creating the links needs Pro, Lifetime or Team.

2

Open Links > Import links

In the Flyn dashboard, open the Links page and choose Import links, or go straight to flyn.to/links/import.

3

Upload your Branch CSV

Drag and drop the file onto the importer, click to browse, or paste the rows (CSV, TSV and plain text all work). Flyn has no fixed template for this export, so it finds the destination and short link columns from their contents, whatever the headers are called. You can change any column mapping in the Review step.

4

Preview, then import

The preview shows what will happen to every link before anything is created. Links on your own branded domain can keep their back-halves when that domain is added in Flyn first. Links on Branch's own link domains (bnc.lt, app.link) cannot move, so each gets a new Flyn link on flyn.co (or a domain you pick in the preview). Choose whether to reuse old back-halves on flyn.co where they are free, and whether a taken back-half is skipped or renamed; existing links are never overwritten. Then start the import and download the report that maps each old short link to its new one.

Step 3: Domain & DNS Migration

Only links on your own branded domain can keep working after the move. Add the domain in Flyn and import its links before you switch DNS, so the links are already there when traffic arrives. Links on domains Branch owns stay with Branch, and printed QR codes that encode those links keep pointing there.

1

Add your domain in Flyn first

In Flyn, go to Settings > Domains > Add Domain and enter your branded short domain (for example go.yourcompany.com). Custom domains are included on Pro, Lifetime and Team, up to 3 per account. Do this before you import, so the preview matches your links to the domain.

2

Add the TXT record and click Verify

At your DNS provider, add the TXT record Flyn shows: _flyn on your root domain (_flyn.yourcompany.com, even when the short domain is go.yourcompany.com; many DNS panels want just _flyn as the name) with the flyn-verify value. Click Verify. This proves you own the domain and does not change where your links point.

3

Point the domain at Flyn

After your links are imported, replace the CNAME that points to your Branch-provided target: use a CNAME to cname.flyn.to for a subdomain, or an A record to 76.76.21.21 for a root domain. Keep the hostname the same.

4

Verify again and test

DNS changes usually apply within minutes but can take up to 48 hours. Click Verify again: Flyn marks the domain Active once it finds the TXT record and the record pointing at Flyn. Then open a few old short links to confirm they redirect.

DNS Record Summary

FieldBeforeAfter
TypeCNAMECNAME (subdomain) or A (root domain)
Hostgo (or your subdomain)go (no change), or @ for a root domain
TargetYour Branch-provided targetcname.flyn.to or 76.76.21.21
Ownership (TXT)None_flyn.yourcompany.com with the flyn-verify= value from Settings > Domains

What Transfers

Here is what carries over from Branch to Flyn and what needs to be reconfigured. A back-half can be reused when it uses only letters, numbers, hyphens and underscores and is not reserved for Flyn's own pages; the preview flags the rest, and those links get a new random back-half.

ItemTransfersNotes
Destination URLsAll destination URLs are preserved exactly as-is
Custom slugsOn your domainKept on your own branded domain when it is added in Flyn before you import. Back-halves from bnc.lt and app.link can be reused on flyn.co (or a domain you pick in the preview) when they are free
Custom domainsAdd it in Flyn before importing, then switch the CNAME from your Branch target to cname.flyn.to (root domain: A record 76.76.21.21) and click Verify
Click & attribution analyticsHistorical Branch attribution stays in Branch, new clicks tracked in Flyn
QR codesRegeneratePrinted QR codes that encode your own domain follow it to Flyn; ones that encode a Branch domain keep pointing there. New QR codes are free in Flyn
Deferred deep links (SDK)Deferred deep linking is not a Flyn feature; keep Branch or another MMP for install attribution
bnc.lt / app.link short linksbnc.lt and app.link is owned by Branch, so those links stay there. Each gets a new Flyn link, and the import report maps old to new

Post-Migration Verification

After completing the migration, work through this checklist to verify everything is working.

  • Verify 5-10 sample short links resolve to correct destinations
  • Confirm custom domain shows a green checkmark in Flyn dashboard
  • Check that new clicks are appearing in Flyn analytics
  • Test deep links open in the correct native apps on iOS and Android
  • Test QR codes if you regenerated them in Flyn
  • Update any integrations or API calls to use Flyn endpoints
  • Keep your Branch account active for 30 days as a safety net

Troubleshooting

Common issues and how to resolve them.

Links returning 404 after migration

DNS changes can take up to 48 hours to reach everyone. Use a DNS checker (like whatsmydns.net) to confirm the record points to cname.flyn.to (or 76.76.21.21 for a root domain), and clear your browser cache. The domain should show Active under Settings > Domains; if it does not, click Verify there. If you imported before adding the domain in Flyn, those links were created on flyn.co: add the domain and run the import again.

Old bnc.lt or app.link links still go to Branch

Branch-owned link domains (bnc.lt, *.app.link) cannot be migrated, they are operated by Branch. Only links on your own custom branded domain (e.g., go.yourcompany.com) keep their URLs when you import them onto it, update the CNAME and verify the domain in Flyn. Existing Branch-domain links continue working through Branch.

Deep links not opening the app after switching

Branch deep links rely on its mobile SDK. Flyn deep links work without an SDK but are configured per platform, recreate the deep link in Flyn for each target app (Instagram, YouTube, TikTok, etc.) and test on a real device. No app code change is required.

Branch export is missing older links

We could not confirm whether Branch limits how many links, or how old, the link table shows or exports. If links are missing, ask Branch support for a full export of your links, then import that CSV into Flyn.

Analytics showing zero clicks after import

Historical analytics from Branch do not transfer. Flyn counts clicks from the moment traffic reaches Flyn, so new clicks appear once your links are live on Flyn and your domain points at it.

Frequently Asked Questions

How long does it take to migrate from Branch to Flyn?

Most of the time goes into the export and into checking which links still need Branch for deferred deep linking. In Flyn, the importer creates links in batches of 100 with a progress bar, so most imports take minutes. Accounts in their first week may have a daily limit on new links; if an import reaches it, the importer stops and lets you download the remaining rows as a file to import once 24 hours have passed. If you move a branded domain, DNS changes usually apply within minutes but can take up to 48 hours.

Will my existing short links break during migration?

Links on your own branded domain keep working if you import them onto that domain before you switch DNS: add the domain in Flyn, import, then change the record and click Verify. While DNS updates, some visitors still reach Branch and others reach Flyn, and requests can fail briefly while the SSL certificate is issued, so keep your Branch account active until the switch is done and lower the record's TTL a day ahead. Links on bnc.lt or app.link are not affected by the move and keep working through Branch.

Can I migrate my bnc.lt or app.link links to Flyn?

No. Branch-owned link domains (bnc.lt and *.app.link) cannot be transferred, so the importer creates a new Flyn link for each one. Only links on your own custom domain (like go.yourcompany.com) keep their URLs, once you import them onto it, update the CNAME record and verify the domain in Flyn.

Do I need to keep the Branch SDK in my app after switching?

No. Flyn deep links open content in 16+ native apps without any SDK. If Flyn covers your deep linking needs, you can remove the Branch SDK from your app once you have recreated and tested your links. If you still rely on Branch for install attribution, keep the SDK for that purpose.

Do my Branch analytics transfer to Flyn?

Historical click and attribution data stays in Branch. Once your domain points to Flyn, all new clicks are tracked in Flyn's analytics with real-time streams, city-level geo, device breakdowns, and period-over-period trends.

Is there a limit on how many links I can import?

Previewing an import is free on every plan, and on the free plan you can still create 25 links a month by hand. Importing needs Pro, Lifetime or Team, with no cap on how many links you import. Accounts less than 7 days old may have a daily limit on new links, an abuse safeguard; if an import reaches it, the importer stops cleanly and lets you download the rows that were not imported, to import once 24 hours have passed. The REST API takes one destination per request (Create Many only copies a single destination) and is rate limited, so the importer is the way to move a whole account.

What happens to my Branch API integrations?

You will need to update API calls to use Flyn's REST API. The endpoints and authentication differ; Flyn's API creates, lists, updates and deletes links and returns click stats, and API keys need a paid plan (Pro, Lifetime or Team). See the API docs at flyn.to/docs. Note that Flyn is a link platform, not an MMP, attribution-specific Branch API calls have no direct Flyn equivalent.

Ready to Migrate from Branch?

Create a free Flyn account and preview your Branch import at no cost. No credit card required to sign up. Importing needs Pro, Lifetime or Team, and most imports take minutes. Accounts in their first week may have a daily limit on new links; if an import reaches it, the importer stops and lets you download the remaining rows as a file to import once 24 hours have passed.

Already have a Flyn account? Open the importer

More Migration Guides