Migration guide / Firebase Dynamic Links
Replace the route,
not just the URL.
Google set August 25, 2025 as the shutdown date for Firebase Dynamic Links. Its links and short-link API were scheduled to stop serving traffic. A replacement needs a new URL, a configured route, and app-side handling—not just a new redirect.
What this page does
Map the parts you used, preview a replacement journey, inspect a real WilderLinks route, then create and integrate your first link.
No Firebase project is connected. Nothing here imports or tests a legacy Firebase link.
Google fact
Firebase-owned .page.link domains cannot be transferred.
WilderLinks capability
Create links on a verified domain and configure their destinations.
Your action
Recreate, integrate, test, and replace the link placements you control.
01 / Concept map
Six things to replace, not six claims of parity.
The left column describes the Firebase setup you may have used. The right column names an implemented WilderLinks surface. The last column is the work you still own.
Short Dynamic Link
A new WilderLinks link
Create a new URL for each destination. A Firebase-owned .page.link hostname cannot move with you.
Firebase URL prefix or custom domain
A verified WilderLinks link domain
Use a new hostname or verify a custom hostname you own. Review DNS, Hosting rewrites, and app association before switching traffic.
FDL platform parameters and fallbacks
Link destinations, app profile, and routing rules
Recreate the behavior you need; review iOS, Android, desktop, and fallback destinations separately.
Firebase SDK link handling
WilderLinks SDK plus native app association
Update your app to receive the new host and route the resolved payload. The SDK does not configure the OS for you.
Post-install continuation
Token-based deferred matching
Integrate and test the token path for each platform. iOS App Store token recovery is not automatic.
Firebase link statistics
New WilderLinks link analytics
Measure traffic on new links. Historical Firebase analytics are not imported.
Google documents the shutdown, domain limits, and historical metadata-export format in its deprecation FAQ and export guide. Export availability after retirement is not guaranteed; use any records you already retained.
What does not carry over automatically
There is no Firebase project import, retired short-link resolver, historical analytics transfer, or automatic iOS App Store token recovery. The dashboard can create replacement links from destinations you already know, and a trusted backend can create links with an API key; neither path discovers old Firebase configurations for you.
02 / Architecture preview
See the handoff before you build it.
Choose an example. The WilderLinks side is generated by the same routing-journey model used in the Playground.
Then / Firebase Dynamic Links
A historic route
- Person clicked a Firebase Dynamic Link.
- Firebase selected a configured app, store, or web path.
- The app handled the link through its Firebase integration.
Historical illustration only. This page does not resolve an old Firebase URL; Google said FDL-served links would stop working after shutdown.
Next / WilderLinks
A route you configure
- 01
Instagram link
A person follows the link from this source.
- 02
WilderLinks receives the click
The link enters its configured routing journey.
- 03
iPhone context
In this example, the visitor is using an iPhone.
- 04
Choose app or store path
Configured app and store destinations determine the handoff.
- 05
Attempt app open
Verified App Links or Universal Links can open the app; a configured scheme may also be attempted.
- 06
Open product screen
The integrated app handles this destination when the link is resolved.
Example: a Instagram link is clicked on iPhone. WilderLinks uses the configured mobile route; the installed app can open the product screen. The journey can be measured when events are reported.
Illustration only. These controls do not inspect your device, open an app, perform deferred matching, fetch a destination, or record analytics.
03 / Your inventory
Identify what your app used.
These choices create local guidance only. WilderLinks cannot read your Firebase project from this page.
Your likely migration work
- Choose a new WilderLinks link domain. Google says .page.link domains cannot be transferred.
- Recreate each important destination and route on a new WilderLinks link; there is no Firebase project import.
- Replace Firebase Dynamic Links receive handling with the matching WilderLinks SDK and configure iOS/Android association for the new host.
04 / Developer checklist
Make the cutover deliberate.
0 / 10 checked
This checklist lives only on this page and resets on refresh. It does not update your workspace or verify any production configuration.
05 / Real configuration check
Test the replacement link, not the old one.
After creating a WilderLinks link, paste its URL into the public tester. It calls the existing read-only configuration endpoint and reports the selected platform, route strategy, destination type, and deferred-payload status. It does not open the destination or test installed-app behavior.
Uses POST /api/v1/test/resolve. Bring a real WilderLinks URL; Firebase URLs are not accepted.
06 / App integration
Choose the SDK that receives your new URL.
These handling examples come from the current framework guides and were checked against SDK source. Replace the example domain with your verified host, configure native associations, and route the returned payload in your app. Keep organization API keys on a trusted backend when creating links from a distributed app.
If the new link stays in a browser or loses context after installation, use the developer troubleshooting guides to distinguish OS association from stored routing and token handoff.
Flutter / Incoming link
Use the URL your app receives
import 'package:wilderlinks_flutter_sdk/wilderlinks_flutter_sdk.dart';
Future<WilderlinksListener> startLinkListener() async {
final listener = WilderlinksListener();
listener.stream.listen((resolved) {
if (resolved.matched) {
print(resolved.deepLinkPayload);
print(resolved.destinationUrl);
}
});
await listener.start();
return listener;
}Integration excerpt, not a Firebase drop-in. The OS or host app must deliver the URL to this handler.
07 / Build the replacement
Create a real link in your own workspace.
Registration leads into the existing Getting Started flow: workspace, verified link domain, first saved link, safe route inspection, and framework guide. Return to the dashboard to manage traffic and links.
Common migration questions
Know the boundaries before switching traffic.
Can WilderLinks import my Firebase Dynamic Links project?
No. Inventory any links and metadata you retained, then create and validate replacement WilderLinks links in your workspace.
Can I keep a Firebase .page.link hostname?
No. Google says automatically provisioned .page.link domains cannot be transferred after the Dynamic Links shutdown. You need a different link domain.
Does WilderLinks test an installed app from the browser?
No. The public tester inspects saved routing configuration. Installed-app and deferred behavior still require testing on real devices.