Integration · Attribution and ads measurement

Send subscription revenue to Kochava

RevenueDot sends Kochava a post-install event for each subscription step: Start Trial for trial starts, Subscribe for purchases, conversions and renewals, and Purchase for one-time purchases. event_data.sum holds the revenue in US dollars, negative for refunds. Events match on $kochavaDeviceId plus a device ID such as $idfa or $gpsAdId.

What teams do with it

  • Credit subscription revenue to the Kochava campaign behind each install.
  • Optimize campaigns on paid Subscribe events instead of installs.
  • Send sandbox purchases to a Kochava test app, apart from production data.
  • See refunds as negative sum, so campaign revenue is net.

What RevenueDot sends

  • Kochava standard names: Start Trial for trial starts, Subscribe for initial purchases, trial conversions and renewals, Purchase for one-time purchases. Other steps are rc_trial_cancelled_event, rc_cancellation_event, rc_uncancellation_event, rc_expiration_event, rc_billing_issue_event, rc_product_change_event and rc_test_event.
  • POST https://control.kochava.com/track/json with action: event, kochava_app_id (the app GUID for the customer's platform) and kochava_device_id.
  • event_data: name and product_id, event_id, event_type, app_user_id, store, environment, period_type, transaction_id, original_transaction_id and sum (USD).
  • Device IDs: $idfa as idfa and $idfv as idfv on iOS, $gpsAdId as adid and $androidId as android_id on Android. $ip becomes origination_ip and $deviceVersion becomes device_ver.
  • usertime in seconds, currency set to USD. Sandbox events go only to the test app GUIDs.

Setup

How to connect Kochava to RevenueDot

  1. 01

    Copy the app GUIDs from Kochava

    In Kochava, open each app's Edit App page and copy its App GUID. Copy the GUIDs of Kochava test apps for sandbox events.

  2. 02

    Set the device IDs in your app

    Set $kochavaDeviceId to the Kochava SDK's device ID and call collectDeviceIdentifiers() so RevenueDot has the advertising IDs.

  3. 03

    Open the integration

    In RevenueDot, open Integrations → Kochava.

  4. 04

    Enter the GUIDs

    Fill in iOS app GUID, Android app GUID, iOS test app GUID and Android test app GUID. Set Sales reporting.

  5. 05

    Connect and test

    Click Connect Kochava, then Send test event with the app user ID of a customer whose attributes include the device IDs.

The Kochava integration page in the RevenueDot dashboard, with its settings form
Captured from the RevenueDot dashboard with demo data.

How Kochava deliveries are retried, logged and replayed

  • Retries: timeouts, 408, 425, 429 and 5xx answers retry after 5, 10, 20, 40 and 80 minutes. Any other 4xx fails at once, because sending the same request again cannot work. Fix the setting, then replay.
  • Delivery log: each delivery shows the request with every secret replaced by [redacted], the partner's answer, the HTTP status, the time taken and the number of attempts.
  • Skipped, with the reason: when there is nothing to send, such as a missing device ID, the delivery is marked skipped and says why. Retry sends it after your app sets the attribute.
  • Replay: Replay failed resends failed and skipped deliveries in bulk.
  • Sealed credentials: keys and tokens are encrypted with AES-256-GCM on the server and never shown again. The dashboard shows only the last four characters.
  • Rejections: Kochava answers 200 with {"success":"1"} when it accepts an event. Any other success value is logged as a rejection.

FAQ

Kochava and RevenueDot

How do I send in-app purchase events to Kochava?

Enter your Kochava App GUIDs under Integrations → Kochava in RevenueDot, set $kochavaDeviceId and call collectDeviceIdentifiers() in your app, and click Connect Kochava. Every subscription step then goes out as a post-install event.

Why was a Kochava event skipped?

The customer has no $kochavaDeviceId, or has neither $idfa nor $idfv on iOS, or neither $gpsAdId nor $androidId on Android. Kochava needs both a device ID and an advertising ID. Retry the delivery after your app sets them.

Does RevenueDot support Kochava's strict authentication?

No. Kochava does not publish the authentication header for this endpoint, so apps with strict authentication turned on are not supported.

Is there a RevenueCat Kochava integration alternative?

Yes. RevenueDot sends Kochava post-install events with the same attribution purpose as RevenueCat's attribution integrations (checked October 2026), from an open source backend.

Sources: Kochava · Kochava: server-to-server post-install events · RevenueCat: attribution integrations. Kochava is a trademark of its owner, used to describe compatibility. RevenueDot is not affiliated with or endorsed by it.

Get started

Send Kochava every subscription event.

Start free on RevenueDot Cloud, free up to $10,000 a month in tracked revenue. Integrations are included on every plan.

Already have an account? Sign in · Prefer your own servers? Self-host free