Skip to content
← Free tools

Firebase Dynamic Links converter

Migrate off Firebase Dynamic Links

Firebase Dynamic Links shut down on 25 August 2025. Paste your long-form FDL URLs below. This tool explains what every parameter did and produces a CSV you can upload straight into SwiftURL Bulk Link Import.

One FDL URL per line, up to 100. Everything runs in your browser, nothing is sent anywhere.

SwiftURL is a direct replacement for the core of Firebase Dynamic Links: deep links, deferred deep linking, and short links, on a branded domain you own, with analytics and governance included.

See the migration

From a page.link URL to a link you own

Google shut Firebase Dynamic Links down on 25 August 2025, and every link it served, on page.link, on app.goo.gl, and on custom domains, stopped resolving. If those links are sitting in old emails, push notifications, QR codes, and app invites, they now lead nowhere. Migrating them means understanding what each one was actually doing, and that information lives in the long-form FDL URL.

What the parameters meant

An FDL packs its behaviour into query parameters. The link is the destination your app opened. The apn, ibi, and isi named your Android package, iOS bundle, and App Store ID, so the link knew which app to open or which store to fall back to. The efr flag decided whether to show the app preview page, and st, sd, and si set the social preview title, description, and image. The converter above reads each one and tells you where it belongs in SwiftURL.

Where each piece goes in SwiftURL

The mapping is cleaner than it looks. Your app identifiers, the old apn, ibi, and isi, are configured once in your SwiftURL domain deep-link settings, not repeated on every link, and SwiftURL generates and serves the association files that make Universal Links and App Links resolve. Each link then only needs its destination, which is the old link value. That is why the CSV this tool produces has a destinationUrl column and an optional title from the social preview: those are the per-link fields. Set the app configuration once, upload the CSV, and every link is recreated on your own domain.

Ends inside the product

The output is shaped exactly for SwiftURL Bulk Link Import: a header row of destinationUrl, slug, title, tags, utmSource, utmMedium, utmCampaign, then one row per link, up to a hundred at a time. Every destination is safety-checked as it is created. If you are weighing the move, the Firebase Dynamic Links comparison covers what carries over and the deferred deep linking page covers the install-survival behaviour FDL was known for.

Frequently asked questions

Firebase Dynamic Links shut down. What now?
Firebase Dynamic Links stopped working on 25 August 2025, so existing page.link and app.goo.gl URLs no longer resolve. You need a replacement covering deep links, deferred deep linking, and short links on a domain you control. This tool reads your old FDL parameters and gives the equivalent SwiftURL setup.
What does each Firebase Dynamic Link parameter do?
link is the destination your app opens; apn, ibi, and isi identify your Android package, iOS bundle, and App Store ID; efr controls the app preview page; and st, sd, si set the social preview title, description, and image. The converter explains each parameter it finds.
Can I migrate many Firebase links at once?
Yes. Paste up to 100 long-form FDL URLs, one per line, and the tool produces a CSV shaped exactly for SwiftURL Bulk Link Import, with a destinationUrl column and optional title. Upload it and every link is created and safety-checked in one pass.
Why can it not expand a short page.link URL?
A short page.link URL carries no parameters in the address itself; they lived on Firebase servers, now shut down. Paste the long-form FDL URL, the one with link, apn and similar query parameters, and the converter reads them directly with no network call.
Where do apn, ibi, and isi go in SwiftURL?
They configure your domain once, not each link. In SwiftURL you set your Android package, iOS bundle, and App Store ID in the domain deep-link settings, and SwiftURL serves the association files. See deep linking.