Reconcile AppsFlyer attribution with TikTok Ads spend in one report — and keep blended CAC and ROAS current automatically.
TikTok Ads reports its own spend and results. AppsFlyer attributes installs and events its own way. Reconciling them by hand — week after week — is where reporting time goes. Opera pulls both, lines them up, and computes blended CAC and ROAS in the report you already use.
On the TikTok Ads side: TikTok uses its own attribution windows (commonly 7-day click / 1-day view) and, on iOS, relies on SKAN — so TikTok's self-reported conversions tend to overstate results versus what your MMP attributes, especially on iOS. Always reconcile TikTok-reported numbers against AppsFlyer before you trust a blended CAC built on them.
On the AppsFlyer side: AppsFlyer reports standard attribution and SKAN (SKAdNetwork) conversions, and they rarely agree: SKAN postbacks arrive delayed and coarsely bucketed, so iOS installs lag and look lower than reality for a day or two. Separately, cohort metrics (revenue and retention tied to the install date) behave differently from activity metrics (events that happened during the period). A report that mixes them will double-count or undercount. The fix is to keep SKAN and attributed columns side by side and label cohort vs activity explicitly.
Opera doesn't force a false single truth — it keeps both series side by side and surfaces the gap.
Opera reads your report's structure and appends the reconciled numbers to the right rows. Formulas are preserved; writes are append-only.
Opera is built to touch production reports and live ad accounts without breaking anything:
See this running on your own reports.A 45-minute workflow audit maps your current process and shows exactly what Opera automates — step by step.
Three minutes: a plain-language request, a Sheet schema read, an AppsFlyer pull, a previewed append, a Slack summary — then a paused campaign launch.