Page MenuHomePhabricator

Android app acquisition channel is not logged in MobileWikiAppInstallReferrer
Closed, ResolvedPublic

Description

Cannot analyze DAU/MAU by acquisition channel (similar to when I looked at retained installs) because channel is not recorded in MobileWikiAppInstallReferrer Rev 12601905.

From InstallReferrerFunnel.java:

private static final String SCHEMA_NAME = "MobileWikiAppInstallReferrer";
private static final int REV_ID = 12601905;
public static final String PARAM_REFERRER_URL = "referrer_url";
public static final String PARAM_CAMPAIGN_ID = "campaign_id";
public static final String PARAM_CAMPAIGN_INSTALL_ID = "install_id";
public static final String PARAM_CHANNEL = "channel";

public InstallReferrerFunnel(WikipediaApp app) {
    super(app, SCHEMA_NAME, REV_ID);
}

public void logInstall(String referrerUrl, String campaignID, String campaignInstallID) {
    log(
            PARAM_REFERRER_URL, referrerUrl,
            PARAM_CAMPAIGN_ID, campaignID,
            PARAM_CAMPAIGN_INSTALL_ID, campaignInstallID
    );
}

Event Timeline

Change 419741 had a related patch set uploaded (by Dbrant; owner: Dbrant):
[apps/android/wikipedia@master] Update InstallReferrerFunnel with better standard parameters.

https://gerrit.wikimedia.org/r/419741

Change 419741 merged by jenkins-bot:
[apps/android/wikipedia@master] Update InstallReferrerFunnel with better standard parameters.

https://gerrit.wikimedia.org/r/419741

If you're referring to the "acquisition channel" as presented in the Play Store console, then that information doesn't actually get passed down to the app. The only thing we get is the referrer URL parameter, which we have to manage ourselves, and the Play Store doesn't care about. We might be able to get the acquisition channel if we integrate with the Google Analytics SDK, but that's not an option for the time being.

The patch that I made allows for more standard information to be passed into the referrer parameter, namely the information that better matches what WMF uses in fundraising and communication campaigns: utf_medium, utf_campaign, and utf_source.

In a pleasantly surprising twist, it looks like the Play Store does in fact pass down the utm_medium and utm_source parameters, even if we don't specify them ourselves. Looking at the data in the newly-updated table, it looks like the Play Store is giving us values of organic and google-play for these fields, so by simply changing the names of these fields to the proper parameters, we're automatically getting this data for free.