📚 Quick Navigation
How to Integrate TikTok SDK to Track App Events (With or Without MMP)
Why TikTok SDK Integration Matters
As TikTok becomes a dominant platform for mobile user acquisition, precise event tracking is essential. The TikTok SDK lets you attribute installs, send post-install events like purchases or subscriptions, and optimize campaigns based on real-time data.
Without proper integration, you're flying blind. TikTok won’t receive enough signals to optimize your campaigns, lowering your ROAS and ad efficiency.
SDK Integration Without an MMP
If you don’t use a Mobile Measurement Partner (MMP), TikTok allows direct SDK integration. While MMPs offer advanced attribution, direct integration still enables ROAS optimization by sending key in-app events.
Android
implementation 'com.tiktok.ads:tiktok-ads-sdk:latest.version'
Initialize in Application.java
:
TTAdSdk.init(this, new TTAdConfig.Builder()
.appId("YOUR_APP_ID")
.useTextureView(true)
.build());
TikTokAdEvent event = new TikTokAdEvent("purchase");
event.setValue(19.99);
event.setCurrency("USD");
TikTokAdSdk.trackEvent(event);
💡 Always include value and currency to enable TikTok’s ROAS optimization algorithms.
iOS
pod 'TikTokBusinessSDK'
TTAdSdk.initialize(withAppId: "YOUR_APP_ID")
let event = TikTokAdEvent(name: "purchase")
event.value = 19.99
event.currency = "USD"
TikTokAdSdk.track(event)
SDK Integration With an MMP
MMPs like Adjust and AppsFlyer centralize attribution across channels. Integrating TikTok through your MMP ensures accurate revenue tracking, deduplication of installs, and advanced audience segmentation for campaign scaling.
Adjust
AdjustEvent event = new AdjustEvent("abc123");
event.setRevenue(19.99, "USD");
Adjust.trackEvent(event);
AppsFlyer
Map<String, Object> eventValues = new HashMap<>();
eventValues.put(AFInAppEventParameterName.REVENUE, 19.99);
eventValues.put(AFInAppEventParameterName.CURRENCY, "USD");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(),
AFInAppEventType.PURCHASE, eventValues);
---