Tapper
Search docs...
⌘K
SupportDashboard

Branch integration

Connect Branch to Tapper Block to detect invalid installs and in-app events across your mobile campaigns.


Connecting Branch to Tapper Block takes two steps: create the integration in Tapper, then enable Tapper as an ad partner in Branch and enter the two values Tapper gives you. No SDK changes are needed.

Tapper detects and records invalid installs and events from Branch. It does not reject them in Branch.

What you need from Branch

CredentialWhere to find it
Branch KeyBranch dashboard → Account Settings → App, section Branch Key and Secret. Use the live key, which starts with key_live_.
Branch SecretThe same Branch Key and Secret section. Use the live secret, which starts with secret_live_. Treat it like a password.

Create the integration in Tapper

1
Open the setup

For your first app, open Setup > Ad accounts, click Add ad account, then click Add mobile app on the Mobile app row.

For an app already listed under Setup > Mobile app, select it in the Apps list, open its second tab after Details, and turn on the switch at the top. That dialog asks only for the Branch Secret and the webhook secret, because the app already holds its name and Branch Key.

2
Enter the details

For a first app, in the Create MMP integration dialog, give it a Name, choose Branch as the MMP type, and enter your Branch Key and Branch Secret. Both are required.

3
Choose a webhook secret (optional)

Tapper uses the webhook secret to verify that each postback comes from your Branch account. Leave Webhook secret empty and Tapper generates one. A secret you choose needs at least 32 characters.

4
Copy the Integration ID and Webhook secret

Click Create. On the Integration created screen, copy the Integration ID and the Webhook secret. You enter both in Branch next. The secret is shown only on this screen. The Webhook URL is for reference: Branch fills it in from the two values.


Configure Tapper in Branch

Tapper is a listed Branch ad partner, so there is nothing to build by hand: enable Tapper, give it the two values, and widen the postbacks.

Required: tick All Events on every Tapper postback, and leave any condition or filter empty. Scoped to attributed traffic only, a postback fires only for events already attributed to Tapper, so a new integration receives zero events until campaigns attributed to Tapper exist. It looks broken while it is only filtered.

If the integration shows no events but test postbacks succeed, check this setting first.

1
Enable Tapper as an ad partner

In the Branch dashboard, open Ads Partners → Partner Management, search for Tapper, and enable it.

2
Enter the Integration ID and Webhook Secret

Tapper's form in Branch asks for two values:

Branch fieldWhat to enter
Integration IDThe numeric Integration ID from Tapper. It is also on the app's second tab, with a copy button.
Webhook SecretThe webhook secret you copied when you created the integration. Lost it? See Replace the webhook secret.
3
Send all events, not only attributed (required)

Tick All Events on every Tapper postback, and leave any condition or filter empty. The warning above explains why.

4
Save

Save the partner configuration. Events appear in Tapper within minutes.

Back in Tapper, the app's second tab shows Waiting for first install until Branch sends its first postback, then Receiving events or Receiving installs.

Branch sends one postback per event, so enable every event you want analyzed: installs, reinstalls, opens, and any commerce or custom events your app sends.


Replace the webhook secret

On the app's second tab, click Replace next to Secret. Type a new one of at least 32 characters or click Generate, then click Replace. The old secret stops working at once and the new one is shown once.

Enter the new secret in the Webhook Secret field of Tapper's partner form in Branch. Until you do, Tapper refuses Branch's postbacks.


What data is captured

Tapper reads three blocks of each Branch postback: user data, last attributed touch data and event data. From them it takes:

  • Attribution: ad partner, campaign and campaign ID, ad set name and ID, ad name and ID, and publisher.
  • Activity type: install, reinstall, open or in-app event.
  • Click identifiers: ~click_id, ~clickid, the partner's touch ID when the touch was a click, ~gbraid, ~wbraid and ~fbclid, used to match the event back to its click.
  • Device: IDFA, GAID, IDFV, device model, OS, OS version, app version, language and carrier.
  • Location: IP address, country, region and city.
  • Timing: click time when the attributed touch was a click, store install begin time, and install time.
  • Revenue: amount and currency.

Fields Tapper does not use directly are kept with the event.


Organic and paid

Tapper reads each event as paid or organic from the attribution Branch sends:

  • Paid: Branch names an ad partner other than Organic, or marks the event as attributed.
  • Paid: Branch sends no attribution flag but names a channel.
  • Organic: none of the above.

Event names

Tapper reads standard activity names such as install, reinstall and open as system events, whatever their casing. Any other event name, such as PURCHASE, ADD_TO_CART or one of your custom events, is kept as your app names it.