Deep Linking from Facebook: Best Practices & Tips

If you’ve run mobile ad campaigns on Facebook, you’re familiar with the elegant deep linking options their ads provide. But unfortunately, organic Facebook posts are a whole different story. Why is it so difficult to give users the same experience for posts in Facebook Messenger or your company’s Facebook Wall? To learn more, keep reading or request a Branch demo

Unsurprisingly, Facebook’s incentive is to keep you in their app — the opposite of deep linking. They make an exception only if you’re paying them for app installs. On iOS, their in-app browser is specially designed to make sure Universal Linking won’t open your app. This “walled-garden” strategy is intentional, and as such, there is a lot of confusion around how deep linking works on Facebook.

Facebook App Links

Part of the reason Facebook blocks Universal Links is to promote use of their own deep linking standard: App Links. Though it shares a name with Android App Links, Facebook’s App Links is a completely different standard, similar to Open Graph tags. If you add App Links tags to the pages at the other end of your links, Facebook will scrape them to gather data about how to deep link into your app. Then Facebook will open your app, if it is installed.

Here are the three big limitations of Facebook App Links:

  1. They’re only supported by Facebook. Adding App Links to your site won’t help at all for deep linking out of any other app.
  2. They don’t support deferred deep linking.
  3. They’re broken on iOS. If your app isn’t installed, your only option is the App Store.

If you opt to use App Links as Facebook recommends, the benefit is clear: Facebook will open the app if it is installed, and you’ll get a custom URI path to use for deep linking. If you run marketing campaigns intended only for re-engagement, you’re in OK shape. You still won’t have click attribution (unless you use a specialized tool like Branch, built to track clicks retroactively after app open), but at least deep linking will work.

The Dark Side of App Links

There is a big problem with relying on Facebook’s App Links: if you want deep linking when your app is installed, Facebook will send everyone else directly to the App Store. This means no chance to leverage attribution tools or deep link providers, and you will always lose out on click data (and this means attribution data, as well) when someone doesn’t have your app.

This isn’t supposed to be the case; the al:web:should_fallback App Link tag exists specifically to control whether a user without your app is sent to the App Store or your web URL. If al:web:should_fallback is set to true, your users should be sent to a web URL (your website, or Branch). Unfortunately, this tag has been broken for over a year on iOS, and we’ve heard from engineers on the Facebook team that it will not be fixed. Facebook will now only deep link on iOS if al:web:should_fallback is set to false.

(Note: al:web:should_fallback still works as documented on Android, but this could “break” at any time. There is also no way to set it separately by platform.)

Most savvy brands do not want a new user’s first experience to be the App or Play Store page. They are also not willing to sacrifice attribution data. Because of this, al:web:should_fallback is now almost universally set to false. Based on feedback from our network of partners, Branch links use this methodology to make sure all touchpoints are properly captured.

The Workaround for App Links Limitations

Fortunately, there is a workaround: you can offer a web content preview with a deep link inside. You set al:web:should_fallback to false, take all users to the preview, and allow users with app installed to open it if they prefer. Users without the app can choose between installing it (and being deferred deep linked) or remaining on the web version of the content. Just make sure your content preview deep link supports iOS Universal Links, because custom URI schemes don’t work in the Facebook web view either.

Branch offers two out-of-the-box ways to provide this content preview. And because we intelligently track if your users have your app or not, we can even intelligently switch the call-to-action between “Open” and “Install” depending on whether your user has the app.

Journeys Smart App Banners

If you have your own website with the same content as your app, a Journeys Smart Banner is a drop-in solution for turning your existing content into deep linked previews. This helps with web-to-app conversion in a wide range of situations, including Facebook.

Branch Journeys smart banners


If you don’t have your own site, or don’t have your app content available there, enabling Deepviews is as easy as clicking a single button.

Facebook’s App Links solve a handful of problems when attempting to deep link out of the walled garden of Facebook’s apps, but come far short of a marketer’s need to measure every touchpoint. To provide a seamless experience for your users, you need a more nuanced solution that will allow you to control the entire experience.

Branch is now a Facebook Mobile Measurement Partner! This means that in addition to enhancing Facebook ads with deep links, Branch can also provide you with best-in-class attribution and analytics for Facebook app ads. To learn more, click here!