Testing GetSocial Smart Links

Smart Links is a powerful tool for increasing organic growth and user engagement in your app.

To make sure that the Smart Links work as expected, you have to perform tests on Android, iOS and validate that:

  1. Deep linking is working: when the app is installed, clicking the Smart Link should open the app. Optionally, if implemented in your app, user should be taken to specific content.
  2. Deferred deep linking is working: when app is not installed, clicking the Smart Link should open AppStore/Google Play. Optionally, if implemented in your app, when the app will be opened for a first time user should be taken to specific content.
  3. Analytics is collected: when the app is installed or opened after clicking on the Smart Link, events are reported to the Webhooks and GetSocial Dashboard.

Prerequisites

Before testing Smart Links, please ensure that the following prerequisites are satisfied:

Check deep linking

If the receiver has the app installed clicking on the Smart Link should open the app and, if implemented, deep link to the specific content inside.

One device is enough for testing this scenario.

Testing scenario

  1. Make sure the receiver has your app installed.
  2. Send a Smart Invite or a Smart Link to the receiver.
  3. Click on the Smart Link on the receiver’s device.

Expected result

  1. The app should be opened. In cases described in this table you’ll see GetSocial Landing Page after clicking the link.
  2. Optionally, if implemented in your app, user should be taken to specific content.
  3. referral_data_received event should be posted to the Webhook. Learn more in the Check analytics section.

Check deferred deep linking

If receiver does not have the app installed, clicking on the Smart Link should open the app installation page on the Google Play or AppStore.

To test the following scenario you need two mobile devices.

The app is not published to Google Play/App Store yet

If your app is not published yet, just install your app manually (from IDE, iTunes or via adb) after opening the app store. All attribution aspects will work as expected.

Testing scenario

  1. Ensure that app is not installed on the receiver device.
  2. Send a Smart Invite or a Smart Link to the receiver.
  3. Click on the Smart Link on the receiver’s device.

Expected result

  1. Google Play or the AppStore will be opened on the app installation page. In cases described in this table you’ll see GetSocial Landing Page after clicking the link.
  2. Optionally, if implemented in your app, after the installation and opening app for a first time, user should be taken to specific content.
  3. app_install and referral_data_received events should be posted to the Webhook. Learn more in the Check analytics section.

Test deferred deep linking for Smart Invites using one device

To simplify QA we recommend using two devices for testing but you can do the same with one device plus extra steps to simulate different device. Here are the extra steps to take:

  1. After sending Smart Invite, clear the app data (on Android only) and delete the app.
  2. Reset the device IDFA (for iOS) or GAID (for Android). Check here how to find your device id.

Check analytics

Check realtime events via webhooks

GetSocial Webhooks allow you to receive realtime events when users install (app_install) or open (referral_data_received) the app after clicking on the Smart Link.

To see realtime event feed on the Dashboard you have to enable and configure webhook.

Testing scenario

  1. Click on the Smart Link on the receiver’s device.
  2. Check webhooks section on the Dashboard.

Expected result

app_install and referral_data_received events are received.

Testing tips

  • referral_data_received and app_installevents should be received on each app install.
  • app_install event will not be received in case we detect fraud (e.g. install from emulator) or when install happened on the same device it was sent.
  • app_install event has reinstall field for prevention of the duplicate rewardings. New install will display reinstall: false value, all the next installs will display reinstall: true. How to get the New install? Reset device id as mentioned above.
Invite sent Invite received app_install event
Device1 Device2 (first install) reinstall: false
Device1 Device2 (second install) reinstall: true
Device1 Device1 (same cookie + device id) event rejected
Device1 Device1 (cleared cookie + device id) reinstall: false

Check Dashboard analytics

GetSocial analytics dashboard provides insights into your app’s organic user acquisition, retention and engagement. You can check clicks, install and open rates of your app for Smart Invites and Smart Links separately.

Analytics data is updated once per hour.

Troubleshooting

Possible reasons:

iOS:

  • Outdated provisioning profiles after enabling “Associated Domains” for your App ID. To solve it, just download the latest provisioning profiles from Xcode settings or developer.apple.com.

  • New app.entitlements are not included in the correct build target. To solve the problem, include app.entitlements into the desired build target.

  • Some apps are blocking iOS Universal Links, e.g., Smart Links will not work in Telegram.

  • Universal links do not work with wildcard app identifiers (e.g., im.getsocial.*). You have to create a new specific app identifier and new provisioning profile for your app.

  • The link was copy-pasted to the mobile browser. Invite link should always be clicked in any invite channel (e.g. Whatsapp).

  • The link is wrapped (e.g. http://bit.ly/2rniAa3). Wrapped links could work on Android, but not on iOS.

Android/iOS:

  • In some corner cases app install landing page is displayed after the link click. Check the table here for details.

  • The deep link domain configured in your app doesn’t match Smart Link domain. In case you want to customize your domain visit this page.

Referral data is not received

Possible reasons:

Generate link for webhooks tracking

Give us your feedback! Was this article helpful?

😀 🙁