Dynamic Links gave mobile teams hosted short links, deep-link routing into the app, and click analytics. Since the shutdown, links on page.link subdomains and FDL custom domains are dead, and there is nothing left to export from the API. The honest migration is a recreation: inventory the links you still reference, stand up deep-link routing on a domain you control, and recreate each link. On Amba, links and deep-link config are MCP tools — amba_tracked_links_create and amba_deeplinks_set_config — so a coding agent does the recreation, and clicks are tracked from the first resolution. The domain-association files move to your own domain, where they should have been all along.
How do Firebase Dynamic Links concepts map to Amba primitives?
How do I migrate from Firebase Dynamic Links to Amba?
Inventory the links you still reference
FDL can no longer be queried — links 404 and the API is gone. Collect slugs and destinations from your app code (grep for page.link and your FDL custom domain), marketing assets, and any CSV metadata exported from the Firebase console before the shutdown.
Connect a coding agent to Amba
Point any MCP-aware agent at https://mcp.amba.dev/mcp and have it call amba_developer_signup — developer token, provisioned project, and API keys with no browser. Or paste the ready-made prompt below.
Configure deep linking
One amba_deeplinks_set_config call sets the URL scheme, universal-link domain, iOS bundle id, Android package name, and fallback URL. The universal-link domain must be one you control.
Re-verify domain association on your domain
Serve /.well-known/apple-app-site-association (appID + paths) and /.well-known/assetlinks.json (package name + SHA-256 cert fingerprints) from the universal-link domain. FDL hosted these for page.link; you host them now. Both must return 200 with JSON content.
Recreate each link
One amba_tracked_links_create call per link: slug, destination_url, and campaign metadata. Click analytics start recording immediately.
Wire in-app resolution and verify
Route incoming universal links and custom-scheme opens through the SDK’s resolve-by-slug, then test a link on a device and confirm the click shows in amba_tracked_links_get_stats.
What does not map?
- Historical click and attribution data
- FDL analytics died with the service and cannot be imported. Amba analytics for each link start at zero from recreation — keep any pre-shutdown CSV exports as your historical record.
- Deferred deep linking through install
- Routing a brand-new user to content after an app-store install (FDL’s deferred deep linking) has no Amba equivalent as of mid-2026. Handle first-run routing in onboarding, or use a dedicated attribution provider for install attribution.
- page.link domains
- Google-owned subdomains cannot be pointed anywhere else; links printed on those domains are permanently dead. New links must live on a domain you own.
- Link preview / interstitial pages
- FDL’s optional preview pages are not recreated. Amba tracked links resolve straight to the destination URL; build an interstitial at the destination if you need one.
The agent prompt that does the whole thing
Paste this into any MCP-aware coding agent (Claude Code, Cursor, Windsurf). It connects to Amba’s hosted MCP server at mcp.amba.dev, signs up with amba_developer_signup, and recreates your Firebase Dynamic Links setup tool call by tool call. Plain-text version: /migrate/firebase-dynamic-links/prompt.txt
Firebase Dynamic Links migration — FAQ
Is Firebase Dynamic Links shut down?
Yes. Firebase Dynamic Links shut down on August 25, 2025. Links on page.link subdomains and custom domains return HTTP 404, new links cannot be created, and Google’s official guidance is to migrate to another deep-linking provider.
Can I export my old Dynamic Links data?
Not anymore. The export window closed with the shutdown — the API and console tooling are gone. If you saved CSV metadata before August 25, 2025, use it as your inventory; otherwise reconstruct the link list from your app code and marketing assets.
What replaces Dynamic Links on Amba?
Tracked links plus a deep-link config. amba_tracked_links_create makes a slug + destination with campaign metadata and automatic click analytics; amba_deeplinks_set_config holds the URL scheme, universal-link domain, bundle/package ids, and fallback URL. The client SDK resolves slugs in-app.
Does Amba support deferred deep linking?
No — as of mid-2026, Amba does not route users to content through a fresh app-store install. Universal links and custom-scheme opens into an installed app are covered; for install-time attribution use a dedicated attribution provider, or handle first-run routing in onboarding.
Do I need to re-verify my universal link domain?
Yes. apple-app-site-association and assetlinks.json must be served from the universal-link domain you configure. FDL hosted these files for page.link domains; after migration you serve them from your own domain, and iOS/Android re-validate them automatically.
Sources for this guide
- Dynamic Links deprecation FAQ (Firebase) as of 2026-06
- Apple: supporting associated domains (AASA) as of 2026-06
- Android: verify app links (assetlinks.json) as of 2026-06