Filters

Advanced Settings & Change Your Link Domain

Link Domain

On the Configuration Screen of the Branch Dashboard, you can see your app's Branch Link Domain. When you create your account, you will be assigned a unique domain for all of your Branch Links.

Domain Changing

Before changing your Branch Link Domain, it is important to understand all behavior changes that occur when you do so. This will help ensure you do not run into any unwanted experiences for your users clicking your Branch Links.

Change

Example

Behavior

app.link to app.link

abcdef.app.linkmycompany.app.link

  • Your old app.link URLs will redirect to the LINK NOT FOUND page.
  • Your old app.link URLs will fail to open your mobile app.
  • Your new app.link URLs will not open your app until you update your code to utilize the new link domain (iOS | Android).
  • If you are already using your original/old app.link URLs in the wild and need them to keep working, it is recommended to explore Using Your Own Domain instead.

app.link to Custom Domain

mycompany.app.linkapp.mycompany.com

  • Your old app.link URLs will still work.
  • Your new Custom Domain URLs will not open your app until you update your code to utilize the new link domain (iOS | Android).

Custom Domain to Custom Domain

app.mycompany.commycompany.app

  • Your old Custom Domain URLs will fail to deep link.
  • Your new Custom Domain URLs will not open your app until you update your code to utilize the new link domain (iOS | Android).

Legacy bnc.lt to app.link or Custom Domain

bnc.ltmycompany.app.link

bnc.lt/branchapp.mycompany.com

  • Both your bnc.lt and app.link/Custom Domain deep links will work.
  • Your new app.link/Custom Domain URLs will not open your app until you update your code to utilize the new link domain (iOS | Android).

Changing App.Link Subdomain

You have the ability to change your app.link subdomain for your Branch LInks to better match your brand. It is recommended to set your app.link subdomain to be the name of your app in case you have multiple mobile apps under your brand.

To customize your app.link subdomain:

  1. Review and understand Domain Changing.
  2. Click the Change My app.link Subdomain button.
  3. Input your new preferred app.link subdomain.
    • Changing your app.link subdomain can only be performed once for your Branch app and you can only set it to a subdomain that is not already taken by another Branch app.
  4. Update your mobile app to use the new app.link subdomain.

Using Your Own Domain

Additionally, you have the ability to use your own custom domain to be used for your Branch Links. Branch supports the use of a custom subdomain or a custom root domain for you to be able to set your Branch Links closer to your branding preferences.

🚧

  • Whenever you change the NS or CNAME records of your domain, you are making Branch the authoritative registrar of your domain. This will grant Branch control of your domain and you will lose access to that custom subdomain or custom root domain. The web page will become blank, and the control of the domain will change to Branch
  • Branch will use the domain to route all deep linked traffic.
  • Branch will host your AASA file and SSL certifications.
  • If you have content on your custom root domain, Branch recommends using an unused custom subdomain.
  • Do not use your main website domain for your Branch Links

Limitations

LimitationDetails
Android App Links & Web Only LimitationsAndroid App Links together on custom subdomains and custom root domains currently do not support Branch's web-only link functionality. Using the $web_only parameter on Branch Links that only open the web even if the app is installed. Because of this limitation, Android App Links will force the app to open even when using the $web_only parameter.

Using a Custom Subdomain

If your enterprise is highly restrictive of the domains that you utilize and wants to ensure that your Branch domain matches the rest of your relevant subdomains, you can utilize a custom subdomain (Example: link.yourbrand.com).

To set a custom subdomain:

  1. Review and understand Domain Changing.
  2. Update the DNS CNAME of your custom subdomain to point to custom.bnc.lt
    • If you are configuring the domain through AWS's Route 53, make sure you are editing the nameservers under the Registered Domains tab, and not in the Hosted Zones section.
  3. Use the CAA Lookup Tool to see if you need to update your CAA records of your custom subdomain to include letsencrypt.org.
  4. Click the Use My Own Domain button.
  5. Input your custom subdomain and click Confirm.
    • Do not include www when adding your custom subdomain.
  6. Update your mobile app to use the new custom subdomain.

Using a Custom Root Domain

If your enterprise requires you to establish an entirely separate domain for your Branch domain, you can use a custom root domain (Example: yourbrand-link.com). This is only recommended if your company is not open to app.link or a custom subdomain option.

To set a custom root domain:

  1. Review and understand Domain Changing.
  2. Update the NS records of your custom root domain using the following nameservers:
    • ns-1581.awsdns-05.co.uk
    • ns-234.awsdns-29.com
    • ns-1059.awsdns-04.org
    • ns-843.awsdns-41.net
  3. Use the CAA Lookup Tool to see if you need to update your CAA records of your custom subdomain to include letsencrypt.org.
  4. Click the Use My Own Domain button.
  5. Input your custom root domain and click Confirm.
    • Do not include www when adding your custom root domain.
  6. Update your mobile app to use the new custom subdomain.

Debugging Custom Domain

Advanced Settings

On the Configuration Screen of the Branch Dashboard, you can change your advanced link settings

URI Scheme Deep Link

This selector allows you to control how and when Branch uses URI schemes to open your app when Universal Links and Android App Links fail. See browser specifics in the docs here.

Deep Link ModeDescription
ConservativeConservative mode will never use URI schemes if there is a risk of error messages.
IntelligentIntelligent mode is recommended and uses Branch data to safely use URI schemes everywhere, with the slight risk of error messages in certain browsers if the app is uninstalled.
AggressiveAggressive will force URI schemes everywhere, causing users without the app to see error messages in some browsers.

Redirect Allowlist

With Branch, you have the ability to set a specific allowlist of domains that you can allow your Branch Links to redirect to (set to disabled by default). With the Redirect Allowlist, you can limit Branch Link redirection to specific web domains or URI schemes across your Branch platform. List each of the domains you want to limit redirection to. We also support a “*” for wildcard subdomains.

For example, if your allowlist includes “branch.io”, “*.branch.io”, and “myapp://”, your deep links can only redirect to domains like branch.io, dashboard.branch.io, or myapp://.

It is recommended that you include the app store domains that are relevant to the way users download your app. For example: “play.google.com” and “apps.apple.com”

Match Type

Setting Match Type determines the matching methodology Branch uses for your Links and App. Selecting Unique means that Branch will only make a deep link through install match if there is a single, unique outstanding footprint. For example, if you and your twin both have iPhone 5s with the same OS/version, etc, and click different links for the same app, then open the app up at the same time, we won’t deep link when Unique is selected. You probably don’t want this as it’s mostly for very special circumstances.

Local Currency

Set the local currency of your Branch Dashboard if it is not USD. By setting your local currency, you can analyze marketing spend (cost) and revenue in your local currency. This also allows direct cost data comparison with ad partners who report their spending in a currency other than USD.

A field called Local Currency will be available on the Dashboard showing the currency configured in your Universal Ads Analytics.

Note: The currency can only be set once through the Branch Dashboard to avoid some potential issues:
Historical data does not switch to the new local currency but would be labeled as such. As a result, the data prior to the currency change may show as inaccurate.
When changing the currency type, your cost data for the previous 7 days will be updated and may cause inaccuracies.

Other Settings

SettingDefaultDescription
Use UTM tags for analytics (for Long Links)DisabledIf you enable this, Branch will automatically set channel, feature, campaign, tags, and keywords based on UTM parameters. This only applies to Long Links, not links generated through the Dashboard, API, or SDKs.
Analytics mapping with UTMEnabledWhen redirecting to a web URL, Branch automatically passes through any values from the following Branch link analytics tags as UTM parameters [~campaign -> utm_campaign, ~channel -> utm_source, ~feature -> utm_medium]. If these UTM parameters are already detected on the URLs being redirected to, Branch will not overwrite them.
Enable Link ScrapingDisabledIf you enable this, Branch will automatically add data from your website's meta tags when adding a URL to fields like $canonical_url
Enable retrieving Last Attributed Touch Data via SDKsDisabledAllow retrieving last attributed touch data from the client.
Enable China FeaturesDisabledChina Features include the ability to collect IMEI on non-Google Android devices.

Best Practices

For changing the Link Domain for both of your LIVE and TEST Branch apps, the best practice is to change your LIVE app first and then add test somewhere in the new domain name for the TEST app.

Notice, the LIVE and TEST apps cannot use the same customized Link Domain. For example, the LIVE app of Branch Monster Factory uses branchster.app.link for its LIVE app and branchster.test-app.link for its TEST app.