Skip to main content
Turn on SDK logging first: options.logging = true in Swift, TrueOrigin.Options(logging = true) in Kotlin, logging: true in React Native. On iOS the SDK logs to the unified logging system under the subsystem dev.trueorigin.sdk; filter for it in Console.app or the Xcode console. On Android it logs to Logcat with the tag TrueOrigin.
The install could not be reported. Either the device had no network for the whole reportTimeout (six hours by default), or the SDK key was rejected. Check that the key starts with to_ and has not been rotated since the build was made: rotating in Settings → SDK key stops the old key at once, and builds still using it stop reporting.
  • Tap the tracking link on the same phone you install and open the app on, and open the app soon after installing.
  • Use a link from Tracking links that shows as Live. A new link needs about 15 seconds to reach the click page.
  • A reinstall counts as a new install: tap the link again before each test install.
On Android also:
  • The app’s Android URL must be its Google Play URL before you tap. The tap must go from the click page to Google Play.
  • Install from Google Play. An app from Android Studio, adb or an APK gets no install referrer.
  • Install from the Play page the link opened. Finding the app again in a Play search is an install without the tap.
  • configure must run on launch, before anything waits for the attribution.
  • React Native: the module is not in Expo Go. Check TrueOrigin.isAvailable, and make a new native build after installing the package.
  • React Native on web: every call is a no-op, the status is unsupported.
The ad has no URL parameters, or the network did not fill them in. See Tracking links.
  • Check Settings → RevenueCat for rejected deliveries. A rejected header means it was re-issued: paste the new one into RevenueCat.
  • The app must call setAttributes(TrueOrigin.revenueCatAttributes()) on every start, before the paywall. See RevenueCat.
  • App Store purchases count, and Google Play purchases from an app that sets the attributes. Other purchases without the attributes don’t.
  • While a test event code is set, events appear only under Test events in Events Manager.
  • Only matched installs from ads on that network are sent; plain links send nothing.
  • Nothing is sent for installs matched before you connected.
  • The postback row in Settings shows the network’s last error, for example an expired access token.
Still stuck? Write to hello@trueorigin.dev with your app’s ad link and the install id (TrueOrigin.installId).