Validating Linking and Attribution

Button Links Overview

Mobile Web Publishers add Button Links to their mobile website to drive users to your app. This section tests to make sure Button Links are properly routing users to your site/app and attributing orders correctly.

Before you begin testing, let your Button representative know so they can setup the test Publisher configuration for you. They will need to know a few things about your website and/or apps, including where Button should be routing users to on your website and app.

For example:

  • https://www.yourbrand.com for mobile web
  • https://yourbrand.bttn.io/home for deeplinking to the Home Page in your iOS / Android apps
  • https://yourbrand.bttn.io/p/{productId} for deeplinking to a Product Page

When Button has confirmed setup, construct a Button Link using your homepage link and place within a webpage:

https://r.bttn.io?btn_ref=org-3eec44df0966f6f0&btn_url=https%3A%2F%2Fyourbrand.com

Please note:

  • The btn_ref value in the Button Link represents the Publisher or Network's Button Organization ID.org-3eec44df0966f6f0 is the identifier for Button's Test Publisher.
  • Button Links may not work as expected within apps that are opened in an embedded webview within a 3rd party application, e.g. Slack, Facebook.

Validating Attribution

Post-Install Attribution

This test will verify that traffic driven from the web to your app, specifically through an install, will route users to the proper page in your app and will properly store attribution.

  1. Uninstall your app from the device.
  2. Create a fully attributed Button Universal Link to a specific in-app destination, e.g., yourbrand.bttn.io/p/{productId}?btn_ref=srctok-abcdef0123456789
  3. Add the link into your Notes App and tap to open.
  4. You will be redirected to an interstitial. Tap "Open In App"
  5. Upon landing in the App/Play Store, install your Test Build directly from Xcode, TestFlight, Android Studio, or an APK.
  6. Verify that you were properly routed to the intended in-app destination.
  7. Ensure the btn_ref has been stored properly on the device without any expiration time set (i.e., it should never be deleted)

"Cold Start"

This test will verify that traffic driven from the web to your app, specifically when the app is closed, will route users to the proper page in your app and will properly store attribution.

  1. Ensure your app is not running
  2. Open your app with a scheme-based link, passing the Button Attribution Token (btn_ref) in as a query string parameter, e.g.: yourappscheme://?btn_ref=srctok-fedcba9876543210
  3. Ensure the btn_ref has been stored properly on the device without any expiration time set (i.e., it should never be deleted)
  4. Repeat Steps 1-3 with a Button Universal Link, e.g., yourbrand.bttn.io?btn_ref=srctok-abcdef0123456789

"Warm Start"

This test will verify that traffic driven from the web to your app, specifically when the app is backgrounded, will route users to the proper page in your app and will properly store attribution.

  1. Ensure your app is running in the background
  2. Open your app with a scheme-based link, passing the Button Attribution Token (btn_ref) in as a query string parameter, e.g.: yourappscheme://?btn_ref=test-token-1
  3. Ensure the btn_ref has been stored properly on the device without any expiration time set (i.e., it should never be deleted)
  4. Repeat Steps 1-3 with a Button Universal Link, e.g., yourbrand.bttn.io?btn_ref=test-token-2