Skip to main content
Ranks show whether a listing change moved you in search. Attribution shows whether it brought installs that pay. With Appeeky Analytics in your app, Appeeky Spec knows where each install came from (organic store search, an Apple Search Ads keyword, a smart link, the Google Play referrer) and the trials and revenue it led to. You can use Appeeky’s hosted service, or run the Appeeky Analytics server yourself and keep the data in your own account.

Set it up: hosted

The spec needs the App Store app id or the Google Play package under stores: first.
It turns attribution on for each store’s app in Appeeky. Running it again is safe. The publishable key (apk_pub_…) goes into the app; it can only write events for that one app. Never put your Appeeky API key in an app.

Set it up: self-hosted

First run your own server (Self-hosting Appeeky Analytics). Then:
It finds each store’s app on your server by its store id, or creates it (Found instead of Created when it was there). Keep ATTRIBUTION_TOKEN in your shell, your CI secrets or the Docker .env, never in the repo.

In the app

Add the SDK, then the two lines init printed: Appeeky.init with the key, and Appeeky.identify with the RevenueCat user id, so each purchase is matched to the install it came from. See the Analytics quickstart for React Native and Expo, and the Swift, Kotlin and Flutter SDKs.

In the spec

init writes the attribution: block. An app in Appeeky Analytics is one platform, so an app on both stores gets one id per store:
With one store, app is a single id. Each release is measured with its own store’s app. Run doctor to check that attribution is set up.

What it feeds

verify. A listing change is meant to bring more people from store search. With attribution, verify compares organic installs per day (organic_installs), the revenue they brought (organic_revenue) and the share that paid (organic_paid) before and after each push. When no target moved, these decide the release before store conversion or downloads do. Revenue counts what those installs have paid so far. Older installs have had longer to pay, so a rise after a push is a conservative reading. See Releases. data pull. It adds these files, and works with self-hosted attribution alone, without an Appeeky key: With one app per store, each file gets the store in its name. Experiments. Organic installs can be an experiment’s metric too, for any change that is not a listing push. A smart link is one URL that sends each visitor to the right store, with its clicks, installs and revenue counted to it. Create one for an experiment with --link, and optionally name the channel:
Put the link in the post, the bio or the ad. Use link_clicks, link_installs or link_revenue as the metric, and verify closes the experiment from the link once it is due (experiment close does it on demand). Channels include tiktok, instagram, creator, tiktok_ads and meta_ads. On iOS the App Store passes nothing from a click to a new install, and Appeeky Analytics does not fingerprint devices. Link installs are, in practice, Google Play installs. For an App Store only app, Spec warns you: measure link_clicks, or organic_installs around the post. Related: Experiments and screenshots · Releases · Smart links in Appeeky Analytics