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 migrationFrom 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.