# Firebase Dynamic Links stopped working

> Firebase Dynamic Links shut down on August 25, 2025, so page.link and custom links stopped working. Move to App Links and Universal Links, or another provider.

Canonical: https://app369.com/fix/firebase-dynamic-links-shutdown/
Last updated: 2026-11-09

Firebase Dynamic Links shut down on August 25, 2025. Every page.link and custom-domain Dynamic Link stopped working, and email sign-in links in mobile apps that relied on them need a newer setup.

**Short answer**

If you only need to open the app from a link once it is installed, use Android App Links and iOS Universal Links on a domain you control. If you also need deferred deep links, click analytics or short links, Firebase points to other deep-linking providers. For email link sign-in in a mobile app, update the Firebase Auth SDK, remove dynamicLinkDomain, and set linkDomain if the project uses a custom Firebase Hosting link domain. Then ship app updates.

Rather not fix it yourself? [**App Fix Ticket**](https://app369.com/fixed-price/flutter-firebase-bug-fix/) starts with a fixed-price diagnosis, then a fixed price for the fix before any fix work.

## **What broke when Dynamic Links shut down, and the fix**

1. 01 ### **Shared and marketing links lead nowhere**
  > “All links served by Firebase Dynamic Links (both hosted on custom domains and page.link subdomains) will stop working and you will no longer be able to create new links.” [**Firebase, Dynamic Links deprecation FAQ**](https://firebase.google.com/support/dynamic-links-faq) Links on page.link, or on a custom domain served by Dynamic Links, no longer open the app. For links that only open an installed app, Firebase recommends App Links and Universal Links; for deferred deep links or click analytics, it names other providers such as Branch and AppsFlyer. Update every link you control.
2. 02 ### **Email link sign-in in the mobile app fails**
  > “you will need to upgrade to the latest Firebase Authentication SDKs and migrate to the new solution in order to continue using these actions” [**Firebase, Dynamic Links deprecation FAQ**](https://firebase.google.com/support/dynamic-links-faq) Email link sign-in for mobile apps used Dynamic Links to open the app. Update the Firebase Auth SDK, remove dynamicLinkDomain, and pass linkDomain in the action code settings if the project uses a custom Hosting domain; otherwise Firebase picks the default Hosting domain.```
const actionCodeSettings = {
  url: 'https://www.example.com/finishSignUp',
  handleCodeInApp: true,
  iOS: { bundleId: 'com.example.ios' },
  android: { packageName: 'com.example.android', installApp: true },
  // The domain must be configured in Firebase Hosting and owned by the project.
  linkDomain: 'custom-domain.com',
};
```
3. 03 ### **Old app versions still call the API**
  > “The SDKs themselves will not cause your app to crash. Your application code must handle the changed API responses.” [**Firebase, Dynamic Links deprecation FAQ**](https://firebase.google.com/support/dynamic-links-faq) Creating short links and reading the link that opened the app now return errors or empty data. The Firebase SDKs don’t crash on this, but app code that expects link data can break or silently skip the feature. Remove the calls and ship an update.
4. 04 ### **The link data needs exporting**
  > “once the Firebase Dynamic Links service is shut down any .page.link domains will no longer be available.” [**Firebase, Dynamic Links deprecation FAQ**](https://firebase.google.com/support/dynamic-links-faq) Also check: Firebase marked domains and link metadata for deletion at the shutdown, and page.link domains can’t be kept. If you need the old link data, check what Firebase’s export guide still offers.

Checked against the vendor’s docs on November 9, 2026: [Firebase: Dynamic Links deprecation FAQ](https://firebase.google.com/support/dynamic-links-faq); [Firebase docs: Authenticate with Firebase using email link](https://firebase.google.com/docs/auth/web/email-link-auth).

## **Rather hand it over?**

Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.

- [from $450**App Fix Ticket**One reproducible bug in an existing mobile or web app, diagnosed and fixed.**See scope and start**](https://app369.com/fixed-price/flutter-firebase-bug-fix/)
- [from $450**AI-Built App Rescue**A Lovable, Bolt or Cursor app checked end to end in 3 days, then its worst problems fixed at a fixed price.****No issues worth fixing, no charge.**** If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.**See scope and start**](https://app369.com/fixed-price/ai-app-rescue/)

[**All 127 Fiverr reviews**](https://app369.com/reviews/)

Related: [**Firebase auth/invalid-action-code**](https://app369.com/fix/firebase-auth-invalid-action-code/) · [**Firebase auth/unauthorized-domain**](https://app369.com/fix/firebase-auth-unauthorized-domain/) · [**Firebase Hosting page not found**](https://app369.com/fix/firebase-hosting-page-not-found/) · [**Cloud Firestore API disabled**](https://app369.com/fix/firestore-api-not-used-or-disabled/)

Questions

## **More on this error**

<details>

<summary>**Can I keep my page.link domain? **+</summary>

No. Firebase says .page.link domains are no longer available after the shutdown, so links need a domain you control.

</details>

<details>

<summary>**Does password reset still work? **+</summary>

Firebase says email link sign-in, password reset and email verification keep working, once the app uses the latest Firebase Auth SDK and the new setup.

</details>

<details>

<summary>**Can you fix it for me? **+</summary>

If one bug is the whole problem, the App Fix Ticket covers it: a written diagnosis first, then the fix. If the app has more going on, the Launch Check is a written check of the whole app. Each issue found is rated critical, high, medium or low, with where it is and how it was confirmed. No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.

</details>

A different error?

## **Describe it and get a written quote**

Send the error and what you were doing. You get a written scope, a fixed price and a timeline; Simon replies by email, usually within one business day.

[**Describe your problem **→](https://app369.com/contact/) [**All fixes**](https://app369.com/fix/)