Implementing Branded Links

At a glance: Use your domain to brand OneLink links. Doing so improves campaign performance and increases brand exposure.

OneBeLink.jpg

Branded Links

  • Branded Links are used to brand attribution links with your brand and domain. For example, as illustrated in the preceding figure:
    • OneLink: abcdef.onelink.me
    • Brand abcdef.com
    • Implement Branded Links and use your full domain, with the attribution link being click.abcdef.com
  • Branded Links improve campaign performance because they:
    • Drive trust: Capitalize on your branding, ensure consistent identity, remove friction from user journeys, and improve CTR rates. 
    • Allow deep linking using your brand.
    • Are simple to implement and behave the same as OneLinks. 
    • Promote brand awareness: Your brand marks your campaigns, rather than a generic link.

Principles of implementation

Branded Links are implemented by associating a full domain defined in your DNS with a OneLink subdomain. This is done by using standard settings in your DNS and setting up a Branded Link in AppsFlyer. In addition, you will need to make some minor changes in your app to support Branded Links. 

You will need the assistance of the DNS admin, usually a member of your IT team or your DNS hosting provider and the app developer. 

Multiple full domains can be associated with a single OneLink subdomain. This means you can have multiple brands using the same OneLink subdomain. 

Setting up Branded Links

Complete the action list to set up a Branded Link. 

Branded links action list
Action No.  Procedure Responsibility Remarks
Set up a Branded Link in AppsFlyer Marketer assisted by the DNS admin  

The DNS admin, usually a member of your IT team or your DNS hosting provider, needs to define the full domain (aka host) and to set a CNAME record as described in the procedure

2 Set up Branded Links in the app Developer Make minor changes to the app code.
3 Using and testing Branded Links Marketer  
As needed Editing and deleting branded links Marketer  

Procedures

Set up a Branded Link in AppsFlyer

Setting up a Branded Links consists of associating a full domain set in your DNS with a OneLink subdomain in AppsFlyer as depicted in the following figure. 

Branded Link pointing to AppsFlyer servers

DnsRef_us-en.jpg

Before you begin:

  • Choose a full domain name, for example, click.abcdef.com where abcdef.com is your brand. 
  • Request that the DNS admin create the full domain (aka host). 

To map your full domain to a OneLink subdomain:

  1. Go to Engagement & Deep Linking > Branded Links.
  2. Click Add Branded Link.
  3. In the Brand Domain field, enter your full domain as set in your DNS. For example, click.abcdef.com.
  4. Select the OneLink subdomain from the list that displays. 
  5. Click Verify.
    The DNS settings status displays.

    BrandedLinkSetup_us-en.jpg

  6. If the domain doesn't exist message displays:
    1. Ensure that you have entered the full domain correctly and correct it if necessary.
    2. Click Reverify.

      DomainStatus.png

    3. If the domain doesn't exist message persists:
      1. Contact your DNS admin and ask them to investigate.
      2. Wait for the DNS admin to confirm that the domain is registered. 
      3. Click Reverify. If the message Domain exists displays, continue with this procedure.
  7. If the AppsFlyer CNAME not found message displays:
    1. Copy the URL that displays. Tip! Use the copy icon. 
    2. Click Add
      The window closes. 
    3. Request that the DNS admin set a CNAME record such that the full domain (Brand domain) points to the specified URL (aka AppsFlyer host). This is depicted in the figure Branded Link pointing to AppsFlyer servers in this section. 
    4. Wait for the DNS admin to confirm that the CNAME is active.

To verify that a Branded Link is operational: 

  1. Go to Engagement & Deep Linking > Branded Links.
  2. Select the branded link.
    The Edit Branded link window opens.
  3. Click Verify.
    The DNS settings status display. Both should have a green checkmark to confirm that they are correctly set in the DNS. If either has a red checkmark, contact your DNS admin.
    Note: Your DNS records MUST enable letsencrypt.org to create a certificate for your domain (CAA). 

Set up Branded Links in the app

  • Use the following SDK versions:
    • Android V4.10.1 and later
    • iOS V4.10.1 and later
    • User invite referral (invite a friend) requires SDK version V5.2.0 and later for both iOS and Android 

Branded Links SDK implementation considerations

  • When deep linking takes place using Branded Links, the AppsFlyer SDK can't get conversion data for installs and deep linking.
  • To overcome this, the developer uses the setOneLinkCustomDomain SDK API.
  • This API queries the branded link, gets the OneLink to which it is mapped, and finally queries the OneLink to get conversion data. Example setting. 
Android iOS

Ensure that you update the intent-filter of the manifest to include your brand domain by setting the android:host.

Use this API before initializing the SDK in the Android global application class.

Example

public class AFApplication extends Application {

    @Override
    public void onCreate() {
    super.onCreate();

      AppsFlyerConversionListener conversionListener = new AppsFlyerConversionListener() {

        // implement AppsFlyerConversionListener callbacks 
        // see https://support.appsflyer.com/hc/en-us/articles/207032126#integration-32-initializing-the-sdk

      }
      
      // set branded link domain
      AppsFlyerLib.getInstance().setOneLinkCustomDomain("promotion.greatapp.com");
      AppsFlyerLib.getInstance().init(AF_DEV_KEY, conversionListener, this);
      AppsFlyerLib.getInstance().startTracking(this, AF_DEV_KEY);

    }
}

If you have several branded links, pass them all to the AP to ensure that you always get the conversion data and can deep link into the app.

Example

AppsFlyerLib.getInstance().setOneLinkCustomDomain("promotion.greatapp.com", 
                                                        "click.greatapp.com", 
                                                        "deals.greatapp.com");

Using and testing Branded Links

Prerequisites:

Before using and testing, Branded Links complete the steps in the Branded Links workflow

To create and test branded links:

  1. Create a custom attribution link using the OneLink template mapped to the branded link.
  2. Copy the custom attribution link to a text editor.
  3. The custom attribution link is made up of a OneLink subdomain, OneLink ID, and custom Link ID. Replace the OneLink subdomain with the Branded Link full domain. Example:
    Custom attribution link Branded link
     abcdef.onelink.me/A1bc/dc1234ef click.abcdef.com/A1bc/dc1234ef
  4. Use the branded link to test installs and deep linking.
  5. If you use raw data reports as part of the testing, the Original URL field is populated by the branded links. 

Editing and deleting Branded Links

Editing enables you to change the mapping of an existing full domain to a different OneLink subdomain. There is no need to set a CNAME. 

 Caution

Modifying the Branded Links of active campaigns may alter or disable link functionality.

To edit a branded link mapping:

  1.  Go to Engaging & Deep Linking > Branded Links.
  2. Select the Action command.
  3. Select Edit.

To delete a branded link mapping: 

  • Reach out to your CSM you can't do it yourself or contact hello@appsflyer.com

Troubleshooting, traits, and limitations

Troubleshooting

Symptom Cause/solution
Branded Link cannot be mapped to a OneLink template
  • Invalid domain name: When mapping a Branded Link to a OneLink template, AppsFlyer tries to verify that the branded link has a valid domain name. A valid domain name has the format click.abdef.com 
  • The Branded Link is already mapped: A full domain can only be mapped once.
Branded Link is not deep linking into the app
  • Verify that the Branded Link is operational
  • Verify CNAME: Ensure that a CNAME record points from your Branded Link to AppsFlyer.
  • Verify deep linking setting for OneLink template: It's possible there is an issue with the OneLink deep linking settings. Make sure to set up deep linking with OneLink.
  • OneLink mapping changed: You can edit the Branded Link and map it to a different OneLink. If the newly mapped OneLink has different deep linking settings or no deep linking settings, deep linking might not work.
No installs measured from Branded Links
  • Check OneLink template settings: Make sure that the OneLink subdomain used to map to the branded link is associated with the correct apps.
  • OneLink subdomain changed: If you map a branded link to a OneLink template and the OneLink subdomain changes, it might affect attribution.
  • Ensure implementation: Of setOneLinkCustomDomain API in the app. 
No re-engagements recorded from branded links

Ensure that the following are active and configured: 

Traits and limitations

Trait Yes  / No x Remarks 
Ad network access  x  
Agency access x Agencies cannot access the Branded Links section to create Branded Links. However, they can create OneLinks custom links using a Branded Links subdomain.
Agency transparency x  
App-specific time zone N/A  
App-specific currency  N/A  
Size limitations N/A  
Rate limitation

Branded links SSL/HTTP certificates are arranged by AppsFlyer using Let's Encrypt, with a rate limit of 50 new certificates per week per domain.

Organic data  
Non-organic data  
Data freshness N/A   
Historical data  
Team member access  
Was this article helpful?