DropplinkDocsPowered bydropp.

Get started

SDK overview

What the SDK does, which package to use, and how installs are attributed.

The Dropplink SDK goes in your app. On every launch it tells Dropplink about the install, and Dropplink answers with which link, channel and creator brought it. It also opens the right screen when someone arrives from one of your links.

What it does#

Install attributionMatches each new install to the tap that caused it, so every install is counted against its link, channel, campaign and creator.
Deferred deep linksSomeone taps go.yourbrand.com/diwali, installs your app, opens it, and lands on the Diwali sale screen instead of your home screen.
Deep linksWhen the app is already installed, the link opens it directly. The SDK turns that link into the same path and parameters, and records the open.
Events and revenuetrack records what users do after installing. Events are saved on the phone and sent in batches, so nothing is lost offline.
Usersidentify links your user ID to the install, so a user's revenue goes to the creator who brought them, on every device.

You set it up once. Every link you create in the dashboard then works with it, with no app release needed.

Choose your platform#

Selling on a website too? The web SDK credits orders placed there to the link and creator that sent the visitor.

Flutter and React Native wrap the Android and iOS SDKs, so every platform behaves the same way.

What you need first#

  1. An app in Dropplink with your Android package name, your iOS bundle ID and Team ID, or both. See the Quickstart.
  2. An SDK key for each platform. You'll find them in Settings → SDK keys. A key is a key ID (ak_…) and a secret. See SDK and server keys.
  3. A live link domain and the deep link setup for it, so links open your app.

The dashboard's SDK setup page has the basic steps for each platform, with your key IDs and link domain already filled in.

How an install is attributed#

On the first launch, the SDK sends Dropplink an install ID it creates for this install, plus basic device details. Dropplink then matches the install to a tap:

How it's matchedConfidence
Android from Google PlayThe Play Store passes the tap's click_id to your app in the install referrer. This is an exact match.1.0
iOS, and Android without a referrerDropplink looks for a tap from the same network, platform and device model within your attribution window (24 hours by default).0.7 to 1.0
No matching tapThe install is organic.none

Each tap can attribute only one install. If an Android install was organic only because its first launch couldn't read the referrer, a later launch that brings one upgrades it.

You register one listener and get every link through it:

WhenisDeferred
DeferredThe first launch after an install that came from a link with a deep link path. Delivered once per install.true
DirectThe app is installed and someone taps a link (Android App Links, iOS Universal Links).false

Each link has a path, like /product/123, and params, like { "variant": "red" }. You set both on the link in the dashboard. For a direct open, parameters in the tapped URL's query override the link's own, so go.yourbrand.com/diwali?variant=blue opens with variant=blue. s and utm_* parameters are left out. If a link arrives before your listener is set, the SDK holds it and delivers it when you set the listener.

What the SDK takes care of#

You don't write any of this yourself: request signing, retries with backoff, reading the Play install referrer, keeping the install ID across launches, caching the attribution, and making sure the deferred link is delivered only once. The SDK never blocks app start, and it never crashes your app because of a network error.

Building your own integration?

If you can't use the SDK, for example on a platform it doesn't support, you can call the SDK API directly and sign each request yourself.

Something unclear? Tell us.Powered bydropp.