Firebase Dynamic Links retired Aug 25, 2025. Here’s what to switch to.
FDL was Google’s free deep-link service. It’s gone. Linkfor renders /.well-known/apple-app-site-association and assetlinks.json per tenant the moment you add iOS / Android bundle IDs — your existing FDL URLs map to a /go/* redirect with deepLinks: { ios, android, web }.
Firebase Dynamic Links shut down on August 25, 2025. If your app still has FDL URLs in production, those URLs no longer resolve and the user gets a generic Google error page.
If all you needed from FDL was "open the app when installed, otherwise web fallback," Linkfor is a drop-in: same primitives (AASA + assetlinks.json), your own domain, no SDK. If you were using FDL for install attribution, you'll want a Branch-class MMP — Linkfor doesn't replace that piece.
Linkfor vs Firebase Dynamic Links, feature by feature
| Feature | Linkfor | Firebase Dynamic Links |
|---|---|---|
| Status (as of 2026) | Active | Retired Aug 25, 2025 |
| Entry paid tier | $1/mo | N/A — retired |
| Custom domain | page.link subdomain | |
| Notion content rendering | ||
| Branded short links + UTM | Native /go/* redirects | Limited |
| Deep linking (iOS / Android) | AASA + assetlinks.json | Was Universal Links + App Links |
| SDK required for deep linking | No | Was iOS + Android |
| Deferred deep linking | Was supported | |
| File hosting (raw endpoints) | ads.txt, /.well-known/* | |
| Analytics | Pageviews + redirect counts | N/A — retired |
| SEO control (meta, OG, sitemap) | Limited | |
| SSL | Auto, on every mount | Was managed |
| White-label (drop "Powered by") | Business plan | N/A |
| Scheduled publishing | ||
| Multi-site / org | 3 sites on Pro, 10 on Business | N/A |
The bundled subscription you're already paying for
FDL was free, which is part of why so many apps adopted it and why so many were scrambling to migrate. Linkfor Pro at $1/mo is the cheapest deep-link primitive we know of that lives on your own domain, ships AASA + assetlinks.json automatically, and includes branded short links and a Notion site in the same plan.
If your existing FDL setup needed install attribution as well, plan for a Branch-class MMP alongside Linkfor — Linkfor handles the URL layer, the MMP handles the attribution layer.
Why Firebase Dynamic Links is no longer an option
- FDL was officially deprecated in late 2023 and shut down on August 25, 2025. Existing
page.linkURLs no longer resolve. - Google's migration guidance pointed teams at three categories of replacement: Universal Links / App Links (which is just the OS primitive, not a service), a third-party deep-link vendor (Branch, AppsFlyer, Adjust), or a self-hosted solution.
- Self-hosting requires generating
AASAandassetlinks.json, hosting them at the right paths under HTTPS on your own domain, and writing UA-based redirect routing. That's exactly what Linkfor does. - If you specifically used FDL for install attribution (knowing which ad placement drove an install), you need a full MMP (Branch, AppsFlyer, Adjust). Linkfor does not replace that piece — it replaces the URL layer.
- If you only used FDL for "open the app when installed, otherwise web," Linkfor is a drop-in.
When Linkfor is the right FDL replacement
- You used FDL for the URL layer — open in app, fall back to web — and never wired install attribution into the backend.
- You want the deep-link domain to be yours, not a third-party redirect host. Linkfor renders AASA + assetlinks.json from your config under your own HTTPS domain.
- You don't want to integrate a third-party SDK. iOS Universal Links and Android App Links are OS-level primitives — Linkfor sets them up, the OS does the work.
- You also want branded short links and a Notion site on the same domain — typical setup for an app that has a marketing page, install links, and in-product deep linking.
- You're budget-sensitive: $1/moon Linkfor Pro replaces FDL's URL layer and folds in adjacent primitives that would otherwise stack as Bitly + Super.
How to migrate from FDL to Linkfor
FDL URL: https://yourapp.page.link/promo. Linkfor equivalent: https://yourapp.com/go/promo with deepLinks: { ios, android, web } configured on the route. The OS does the rest via Universal Links / App Links.
- Inventory every FDL
page.linkURL still referenced in marketing copy, push notifications, emails, and onboarding flows. Note the iOS / Android fallback for each. - Sign up for Linkfor and create a site against the domain you want deep links on (typically the same domain as your marketing site).
- Add iOS bundle ID + Apple team ID and Android package + SHA-256 fingerprints to the site config. Linkfor serves
/.well-known/apple-app-site-associationand/.well-known/assetlinks.jsonautomatically. - Recreate each FDL URL as a redirect under
/go/*withdeepLinks: { ios, android, web }. The ios/android values use your app's URL scheme; the web fallback can be a Notion page on the same domain. - Test on real iOS and Android devices. Ship an app update that points new install / share flows at the Linkfor URLs. Existing FDL URLs in old emails are already dead — there's nothing to "switch off" on Google's end.
Also see deep links short links Notion sites pricing.