Singular Links Best Practices and Examples

This article offers advanced examples and best practices for using Singular Links. Be sure to read the Singular Links FAQ first.

 

Deep Linking Tips 

Use Cases

There are two ways to use deep links:

  1. Use deep linking to direct the user to specific content in the app - like linking to a specific page in a website.
  2. Take advantage of the data passed in a deep link to influence the user’s experience going forward. For example, in a shopping app, you can record a promo code associated with the ad that the user clicked, and then apply the code later during check-out.

Both approaches offer interesting options to engage users and help drive them to experiences in your app. It’s important to understand what your engagement goals are and how they can be tied to those experience via deep links.

URL Structures

If your app was developed for multiple platforms, we recommend using the same deep link URL structure for all platforms. This will make it easier to enable deep linking in your Singular Links, as you will be able to use the same deep link URL for both versions of your app.

For example, if you have a clothes shopping app that has iOS and Android versions, make the following deep link URL work in both platforms to lead the user to a specific product:

myshoppingapp://path/to/product?productid=1234&category=shoes

Deferred Deep Links

Singular recommends designing and handling deferred deep links in the same way you handle deep links in your app.

Using Deep Links for Re-engagement 

Deep links are most commonly used in re-engagement efforts, where you want to engage with existing users to bring them back into the app.  

Choosing the right method to deliver a deep link to a user is especially important, and is dependent on the intended channel, including if you're working with a partner to traffic links with deep links.

Note for iOS Apps: While deep linking is Universal Links is the preferred method to deep link on iOS, it's still known to have it's limitations.  Singular Links are generated with a deep link destination will always attempt to use Universal Links to deep link, however a fallback option is available if your iOS app supports traditional app scheme deep links and you are working with a source or partner that doesn't support Universal Links.

 

Deep Linking with Partners

Deep linking with Singular requires certain prerequisites with your SDK (or S2S) implementation with Singular. You can review those requirements here.

When working with a partner you may want to consider using deep links in your campaigns.  Some even require deep links for re-engagement campaigns as they may target known existing users who still have the app.

Self-Attributing Partners

Self-attributing partners such as Facebook and Google Ads, do not support tracking links for mobile app campaigns.  Deep linking with these partners are configured in the partner's dashboard and may require partner specific app handling requirements.  We have compiled a few of these partners below and how deep links can be configured:

Facebook

Google Ads

Snap Ads

Twitter (App Cards)

For more information or questions with deep linking with any of these partners, we recommend reaching out to your partner contact for the most up-to-date information.

Non Self-Attributing Partners

Some partners in this category do not use a MMP tracking links for redirects (or in this case, the deep link), and Singular receives the click notification asynchronously.  These partners are also known as server-to-server or asynchronously integrated partners, and deep links can generally be configured in the partner campaign dashboard.

For non-self attributing partners that support tracking link redirects for mobile app campaigns, Singular Links may be used to deliver the deep link experience when engaging users who already have your app installed.

Note for iOS Apps: While deep linking is Universal Links is the preferred method to deep link on iOS, it's still known to have it's limitations.  Singular Links are generated with a deep link destination will always attempt to use Universal Links to deep link, however a fallback option is available if your iOS app supports traditional app scheme deep links.  This is used if the partner doesn't support Universal Link deep linking. 

 

Deferred Deep Linking with Partners

Deferred deep linking with Singular requires certain prerequisites with your SDK (or S2S) implementation with Singular. You can review those requirements here.

When working with a partner you may want to consider using deferred deep links in your campaigns, and is also recommended when a campaign is using deep links as well.  Similar to deep links, deferred deep links set-up differs between self-attributing and non-self attributing partners.

Self-Attributing Partners

Self-attributing partners such as Facebook and Google Ads, do not support tracking links for mobile app campaigns, therefore deep linking and deferred deep linking is configured in the partner's dashboard and may require partner specific app handling requirements.  Deferred deep linking with self-attributing networks are built into the MMP integration itself with partners that support deferred deep linking in the integration.  As of January 2020, Singular supports deferred deep linking with Facebook. Reach out to your Singular customer success manager to inquire on deferred deep linking possibilities for more self-attributing networks in the works.

Non Self-Attributing Partners

Deferred deep linking with any non self-attributing partner can be enabled and used with any of these partners by simply by configuring the deferred deep link value for the Singular Link.  Unlike deep links, deferred deep linking is not dependent on partner redirectrs, and is a feature enabled via your integrations with Singular's SDK (or S2S API).

 

Passing Dynamic Data to the App with Passthroughs

After you create a tracking link in the Link Management page, you can use it as-is in your campaign. However, you can make the link do even more work by adding data to it dynamically as you display your ads. This data can then be read and used by your app if a user engages with one of the ads and then arrives into your app.

You can do this by appending the _p query parameter, and any value, to a Singular Link. _p (for "passthrough" allows you to append any URL-encoded value to make that value available when the app is opened. The parameter supports structured (JSON) or unstructured strings.

For example:

  • Let’s say you have a shopping app, and you show dynamic banner ads of different shoes on a mobile website. You have created a Singular Link that looks as follows: https://myshoppingapp.sng.link/A59c0/nha7
  • When you display the ad, the specific pair of shoes shown has a product ID, e.g. “Shoes123”.
  • You append the product ID to your Singular Link using the “_p” parameter.
  • The result: https://myshoppingapp.sng.link/A59c0/nha7?_p=Shoes123
  • Whenever a user engages with that banner and then installs and opens the app, your app can read the product ID using the Singular SDK. Your app team can use this information to personalize the user’s first app experience.

Passing JSON Objects

As the passthrough value is just a string value, you can pass even more information using JSON objects.

For example, you build a JSON object as follows:

{
“productid”:”Shoes123”,
“qty”:1
}

Then you URL encode it and append it to the _p parameter in your Singular tracking link. The result:

https://myshoppingapp.sng.link/A59c0/nha7?_p=%7B%22productid%22%3A%22Shoes123%22%2C%22qty%22%3A1%7D

Try It Out

Try passthroughs with our app by changing “Shoes123” to different values:

https://singularassist.sng.link/A59c0/nha7?_dl=singularassist%3A%2F%2F&_p=Shoes123

 

Using Landing Pages 

Use a landing page when your product needs an additional explanation in order to effectively convert a user.

If you decide that a landing page is right for your campaign, and your campaign depends on a mobile attribution provider for tracking, first consider the following:

  • Make sure there is a way for the user to convert to the app from the landing page.
  • Consider the media channel you’re working with. Integrated partners may support different methods to execute a landing page.

Then, decide which touchpoint would you like to attribute the install to.

  1. Tracking the click that takes the user to the landing page: In this case, just use the Singular Link you generate in the Link Management page as usual, and define the landing page as your Mobile Fallback URL (see the Singular Links FAQ).
  2. Tracking the click that the user engages with within the landing page: If you choose this option, embed the Singular Link is in your landing page. Make sure the link from the ad to the landing page passes any necessary tracking values through to the landing page.

 

Limitations of Custom Sources

You can use Singular Links to track your marketing efforts in self-owned channels such as social media or SMS. However, deep linking only works in some channels with some technologies.

We’ve compiled a list of known and common redirect limitations:

  Android iOS
  Fallback to Google Play Store Deep Link Fallback to App Store Deep Link
Facebook Feed Yes Landing Page Required Yes Landing Page Required
Facebook Messenger Yes Landing Page Required Yes Landing Page Required
YouTube Yes Landing Page Required Yes Landing Page Required
Gmail Yes Yes Yes Yes
Instagram Yes No No Landing Page Required
LINE Yes Yes Yes No
Mail (iOS) Yes Yes Yes Yes
Messages (iOS) Yes Yes Yes Yes
Reddit No No No No
Slack Yes Landing Page Required Yes Landing Page Required
Twitter Yes Landing Page Required Yes Landing Page Required
WeChat Yes No No No
WhatsApp Yes Yes Yes Yes

 

Adding Granularity Parameters for Custom Sources

When you use Singular Links in custom sources, you can add dimension information in order to get that added granularity in your reports. For example, if you pass the campaign name in your tracking link, you will get campaign-level granularity in your report.

To pass the information, add it as a parameter value to the link when you serve it. For example, the following link records the Campaign Name dimension as “CoolShoes123”:

https://singularassist.sng.link/A59c0/u53f?_dl=singularassist%3A%2F%2F&_p=%7B%22productid%22%3A%22Shoes123%22%7D&pcn=CoolShoes123

See the full list of tracking link reporting parameters.

 

Overriding Redirects for Links

In some cases, you may want to dynamically modify redirects for existing Singular Links. This can be useful if you’re serving a dynamic deep link based on some input from the user or on the context of the user engagement.

For example:

You have a Singular Link originally created to deep link to myapp://homepage: https://myshoppingapp.sng.link/A59c0/nha7?_dl=myapp%3A%2F%2Fhomepage

You want to use that same link, but deep link to myapp://registration in some cases.  To achieve that, update the _dl= to the new value and use the same link: https://myshoppingapp.sng.link/A59c0/nha7?_dl=myapp%3A%2F%2Fregistration

The following query parameters can be appended or modified as needed. Remember to URL-encode the value when appending it to a parameter.

Parameter Description
_dl Deep link for all mobile platforms.
NOTE: Overriding/using this query parameter is only possible if the original link was enabled with deep linking.
_ddl Deferred deep link for all mobile platforms
NOTE: _ddl can be enable deferred deep linking even if not enabled via the UI during creation
_fallback_redirect The fallback redirect for all platforms (web + any other platform)
_android_dl Deep link for Android. This is typically used if your deep link URL on Android is different from your iOS app.
_android_redirect Redirect URL if app not installed on Android. This is typically the app store URL
_android_ddl Deferred deep link for Android. This is typically used if your deep link URL on Android is different from your iOS app.
NOTE: _android_ddl can be enable deferred deep linking even if not enabled via the UI during creation
_ios_dl Deep link for iOS. This is typically used if your deep link URL on iOS is different from your Android app.
NOTE: Overriding/using this query parameter is only possible if the original link was enabled with iOS deep linking.
_ios_redirect Redirect URL if app not installed on iOS. This is typically the app store URL.
_ios_ddl Deferred deep link for iOS. This is typically used if your deep link URL on iOS is different from your Android app.
NOTE: _ios_ddl can be enable deferred deep linking even if not enabled via the UI during creation
_force_redirect=1

In cases where iOS Universal Links may not deep link, appending &_force_redirect=1 (or &_force_redirect=true) will enable the Singular Link to use app scheme based deep linking to force the deep link to the end-user. 

This is most commonly used to enable deep linking with partners, as link wrapping will break Universal Links.

This functionality requires that an iOS app scheme has been configured for your iOS app, and the configured deep link value (_dl, _ios_dl) is using that app scheme.

Note that this approach may result in a brief message or warning to show up to the end user, depending on the default browser of the user.

 

Forwarding Link Parameters

In many cases, certain query parameters on Singular Links may need to be forwarded to the redirect destination.  Singular Links will automatically forward any utm_* or referrer parameters that are appended to the link. 

Note: Singular automatically forwards a "singular_click_id" ID as part of the referrer=.  Additional referrer= values appended to a Singular Link, will be appended to the referrer next to the "singular_click_id"

Appending &_forward_params=1 (or &_forward_params=true) to a Singular Link will forward all appended parameters for explicit parameter forwarding.

A few examples:

Singular Link URL Parameters Forwarded Parameters Not Forwarded
https://singularassist.sng.link/A59c0/nha7?
this_is=not_forwarded&
utm_source=auto_forwarded&
referrer=also_auto_forwarded
utm_source=auto_forwarded
referrer=singular_click_id%3D0910cac2-f496-467f-8163-dc2251f5e601%26also_auto_forwarded
this_is=not_forwarded
https://singularassist.sng.link/A59c0/nha7?
this_is=forwarded&
utm_source=auto_forwarded&
referrer=also_auto_forwarded&
_forward_params=1
this_is=forwarded&
utm_source=auto_forwarded&
referrer=also_auto_forwarded&
 

 

Using Shortened Links

After you generate a custom tracking link in Singular, you can shorten it by clicking Shorten Link.

This option is primarily useful for custom channels where the URL is exposed to the end-user, or for channels with restrictions on the length of the URL, such as SMS.

However, shortened links have another benefit: since the link does not contain parameters explicitly (instead, the parameters are resolved by Singular whenever the link is clicked), you can change these parameters in the Singular UI to update live campaigns directly.

For example, you may use a banner or landing page to track a regularly changing promotional offer. If you use a full-length Singular tracking link, you have to swap out the link whenever you want to change the promo details. If you use a shortened link instead, you can just update the promo details from the Singular Link Management page (by changing the link parameters).

Was this article helpful?