Manually constructing a Dynamic Link URL

Note: Firebase Dynamic Links isdeprecated and should not be used in new projects. The service will be shutting down soon. Follow the migration guide and see theDynamic Links Deprecation FAQ for more information.

You can create aDynamic Link by manually constructing a URL with the following form:

https://your_subdomain.page.link/?link=your_deep_link&apn=package_name[&amv=minimum_version][&afl=fallback_link]

Dynamic Link parameters

Deep link parameter (Payload parameter)
link

The link your app will open. Specify a URL that your app can handle, typically the app's contentor payload, which initiates app-specific logic (such as crediting the user with a coupon ordisplaying a welcome screen). This link must be a well-formatted URL, be properly URL-encoded, useeither HTTP or HTTPS, and cannot be another Dynamic Link.

When users open aDynamic Link on a desktop web browser, they will load this URL(unless theofl parameter is specified). If you don't have a web equivalent to thelinked content, the URL doesn't need to point to a valid web resource. In this situation, you shouldset up a redirect from this URL to, for example, your home page.
Android parameters
apnThe package name of the Android app to use to open the link. The app must be connected to your project from the Overview page of theFirebase console. Required for theDynamic Link to open an Android app.
aflThe link to open when the app isn't installed. Specify this to do something other than install your app from the Play Store when the app isn't installed, such as open the mobile web version of the content, or display a promotional page for your app.
amvTheversionCode of the minimum version of your app that can open the link. If the installed app is an older version, the user is taken to the Play Store to upgrade the app.
iOS parameters
ibiThe bundle ID of the iOS app to use to open the link. The app must be connected to your project from the Overview page of theFirebase console. Required for theDynamic Link to open an iOS app.
iflThe link to open when the app isn't installed. Specify this to do something other than install your app from the App Store when the app isn't installed, such as open the mobile web version of the content, or display a promotional page for your app.
iusYour app's custom URL scheme, if defined to be something other than your app's bundle ID
ipflThe link to open on iPads when the app isn't installed. Specify this to do something other than install your app from the App Store when the app isn't installed, such as open the web version of the content, or display a promotional page for your app.
ipbiThe bundle ID of the iOS app to use on iPads to open the link. The app must be connected to your project from the Overview page of theFirebase console.
isiYour app's App Store ID, used to send users to the App Store when the app isn't installed
imvTheversion number of the minimum version of your app that can open the link. This flag is passed to your app when it is opened, and your app must decide what to do with it.
efrIf set to '1', skip the app preview page when theDynamic Link is opened, and instead redirect to the app or store. The app preview page (enabled by default) can more reliably send users to the most appropriate destination when they openDynamic Links in apps; however, if you expect aDynamic Link to be opened only in apps that can openDynamic Links reliably without this page, you can disable it with this parameter. This parameter will affect the behavior of theDynamic Link only on iOS.
Other platform parameters
oflThe link to open on platforms beside Android and iOS. This is useful to specify a different behavior on desktop, like displaying a full web page of the app content/payload (as specified by param link) with another dynamic link to install the app.
Social Meta Tag parameters
stThe title to use when theDynamic Link is shared in a social post.
sdThe description to use when theDynamic Link is shared in a social post.
siThe URL to an image related to this link. The image should be at least 300x200 px, and less than 300 KB.
Analytics parameters
utm_source
utm_medium
utm_campaign
utm_term
utm_content
Google Play analytics parameters.
at
ct
mt
pt
iTunes Connect analytics parameters.
Note: You can combine parameters for Android andiOS to create aDynamic Link that can be used on both platforms. For example:
https://example.page.link/?link=https://www.example.com/someresource&apn=com.example.android&amv=3&ibi=com.example.ios&isi=1234567&ius=exampleapp

Debugging a URL

You can debug aDynamic Link by taking a long or short URL and attaching a debug parameter.

https://example.page.link/?link=https://www.example.com&d=1https://example.page.link/WXYZ?d=1
Debug parameter
dInstead of loading theDynamic Link, generate a flowchart you can use to preview yourDynamic Links' behavior on different platforms and configurations.

Next steps

After you create aDynamic Link, you need to set up your app to receiveDynamic Links andsend users to the right place in your app after a user opens them.

To receiveDynamic Links in your app, see the documentation foriOS,Android,C++, andUnity.

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-12-17 UTC.