Adjust App Analytics Integration
Adjust is a mobile measurement partner (MMP) that attributes installs, in-app events, and revenue back to the marketing activity that drove them. Connecting Adjust to Clarisights brings those attributed metrics alongside your paid spend so you can answer questions like cost per install, ROAS by cohort window, and SKAN-reported conversions for iOS — without leaving your performance dashboard.
Adjust is a secondary (analytics) integration on Clarisights: its metrics are joined onto the ad objects (Account / Campaign / Ad Group / Ad) of your connected advertising channels rather than being a standalone reporting source. You'll see them prefixed with AJ:, AJ-C:, AJ-SKAN:, etc., next to native channel metrics. If you instead need Adjust's own dimensions (network, country, OS, organic traffic, affiliates) as a primary source, see the Alternative — POD-AJ section below.
At a glance
| Authentication | API token from your Adjust dashboard |
| Permissions needed | Adjust account user with access to KPI Service for the apps you want to connect |
| Account discovery | Manual — apps are added one at a time using the app token |
| Data freshness | Daily (multiple intra-day refreshes; SKAN and cohort windows refresh on their own schedules) |
| Lookback window | Last 8 days for app and SKAN metric groups; up to 210 days for cohort metric groups (per cohort window) |
| Backfill on connect | Subject to Adjust's expired-attribution limits — typically 90 days for Facebook, Twitter, Snapchat; longer for others |
| Timezone | Set per app at connect time; cannot be changed without a backfill |
| Currency | Set per app at connect time; cannot be changed without a backfill |
| Levels supported | Joined onto your ad channel's Account · Campaign · Ad Group · Ad (no standalone hierarchy) |
| Integration type | Secondary (analytics) — metrics only, joined onto primary ad channel objects |
| Limited rollout | No |
Prerequisites
An active Adjust account with KPI Service access
Your Adjust API Token (from My Profile in the Adjust dashboard)
The App Token for each Adjust app you want to connect (visible in the URL of each app's dashboard)
At least one supported ad channel already connected to Clarisights (Adjust metrics join onto ad-channel objects — see How Adjust data is joined)
Steps to Connect
Step 1 — Get your Adjust API Token
In Adjust, open My Profile and copy the API Token. You'll paste it into Clarisights in Step 3.
[TODO: Screenshot needed — Adjust dashboard, My Profile page with API Token highlighted]
Treat your API token like a password. It grants read access to every app under your Adjust account.
Step 2 — Get your App Token(s)
Open each app's dashboard in Adjust. The App Token is the string between default/ and ?timezone_id in the URL. Copy it for each app you want to connect.
[TODO: Screenshot needed — Adjust app dashboard URL with the App Token segment highlighted]
Step 3 — Add the Adjust user in Clarisights
In Clarisights, go to Integrations → Adjust → click +User (or +Connect). Enter a name or email, paste the API Token, and save.
If you've already added your Adjust user previously and only want to connect new apps, skip ahead to Step 4.
[TODO: Screenshot needed — Clarisights Integrations page, Adjust card with +User form]
Step 4 — Add each app
Click +App next to your Adjust user and provide:
App name — how it should appear in Clarisights
App Token — from Step 2
Currency — must match what your Adjust dashboard reports in
Timezone — the timezone you want data shown in inside Clarisights
[TODO: Screenshot needed — +App form filled with name, app token, currency, and timezone]
Currency and timezone are immutable. Once an app is connected, changing either requires a backfill to re-state historical data. Reach out to your Clarisights CSM before changing.
Step 5 — Map Adjust networks to your ad channels
Adjust groups data under Network trackers. To join Adjust metrics onto the right ad channel objects, declare which Adjust network corresponds to which Clarisights ad channel.
Open Connected Networks on the Adjust integration page. Some defaults (Facebook, Google Ads, TikTok, etc.) are pre-populated. Click +Network to add a custom mapping: enter the network tracker name in Value and pick the Clarisights ad channel — both API channels (Facebook, Google, TikTok, Snapchat, Apple Search Ads, Twitter, Criteo, Remerge) and Custom Advertising channels are selectable.
[TODO: Screenshot needed — Connected Networks panel with mappings list and +Network dialog]
Where to find network names: Adjust dashboard → Deliverables. The top-level row is the Network tracker name. If a network has no mapping in Clarisights, its data won't be joined to any channel and won't be visible.
Step 6 — Map SKAN partners (iOS only)
SKAdNetwork (SKAN) data references a Partner rather than a Network. Open the SKAN Partner Map on the Adjust integration page and confirm the pre-populated partner-to-channel mappings, adding more as needed.
[TODO: Screenshot needed — SKAN Partner Map page with pre-populated and editable mappings]
Step 7 — Add custom in-app events (optional)
To pull metrics for in-app events you've configured in Adjust, click +Add Events next to the relevant app. Pick the events to import, choose format and currency type, and save.
[TODO: Screenshot needed — +Add Events dialog with event list, format and currency checkboxes]
Pro tip: If two apps emit the same conceptual event under different names (e.g.
PurchasevsPurchase Complete), rename them in Adjust so they unify into one column on Clarisights.
Verify the connection
On Integrations → Adjust, the user and each connected app should show as Active.
Adjust metrics typically appear within ~24 hours of connect, depending on metric group and ad channel pipeline.
Quick check: open a report on a connected ad channel (e.g. Facebook), add the dimension Campaign and the metric AJ: Installs. Rows should populate for campaigns whose Adjust network is mapped.
Data available
Hierarchy
Adjust data isn't browsed as its own hierarchy — it's joined onto the ad object (Account / Campaign / Ad Group / Ad) of the mapped advertising channel. Adjust's tracker levels map to Clarisights levels as follows:
Native level (Adjust tracker) | Clarisights level |
Network tracker | (Used to route data to the correct ad channel — not a Clarisights level itself) |
Campaign / 1st sub-tracker | Campaign |
Adgroup / 2nd sub-tracker | Ad Group |
Creative / 3rd sub-tracker | Ad |
How Adjust data is joined
Adjust metrics are joined onto an ad channel's objects by name and/or ID. The expected default format for Campaign / Adgroup / Creative tracker values is Object Name (Object ID) — e.g. Holiday Sale (1234567).
API ad channels — when the standard format is in place, Clarisights matches the Adjust object to the same ID or name in the mapped ad channel and joins the metrics directly. Native joining is currently supported for: Facebook Ads, Google Ads, TikTok Ads, Snapchat, Twitter, Apple Search Ads, Criteo, Remerge.
Custom Advertising channels — Clarisights joins on the same name/ID basis, provided the hierarchy on both sides matches and tracker values are in a consistent format.
Non-standard tracker formats — if your tracker links use a different pattern (e.g. Campaign Name & Campaign ID), a custom regular expression can be configured to extract the name and ID. Reach out to your Clarisights CSM or write to support@clarisights.com to set this up.
Metrics
Adjust metrics are surfaced as four categories. Each base metric is also broken down by OS and by retargeting status, producing the eight metric groups listed under Breakdowns.
App KPIs (always available)
Common to every app, no configuration needed. Prefix: AJ:
Metric | Description |
AJ: Installs | Attributed app installs |
AJ: Reinstalls | Reinstalls of an app on the same device |
AJ: Uninstalls | Detected uninstalls |
AJ: Reattributions | Inactive users re-engaged via a retargeting campaign |
AJ: Deattributions | Attributions removed by Adjust (e.g. fraud, expiry) |
AJ: Sessions | App sessions opened by attributed users |
AJ: Clicks | Tracker click-throughs recorded by Adjust |
AJ: Revenue | Total in-app revenue (in app currency) |
AJ: Transactions | Count of revenue events |
AJ: DAUs / WAUs / MAUs | Daily / weekly / monthly active users |
AJ: Limit Ad Tracking enabled Installs | Installs from devices with LAT enabled |
AJ: Limit Ad Tracking enabled Reattributions | Reattributions from devices with LAT enabled |
AJ: Network Installs | Installs reported by the ad network (vs. attributed by Adjust) |
AJ: Rejected Installs | Installs rejected by Adjust's fraud filters |
AJ: Rejected Reattributions | Reattributions rejected by Adjust's fraud filters |
AJ: Cost | Cost reported by Adjust (when partner cost data is enabled) |
In-app Event KPIs (configurable)
Counts of in-app events you've configured in Adjust and selected via +Add Events in Clarisights. Up to 20 custom events per company. Prefix: AJ: (with the suffix (Event)).
Examples:
Metric pattern | What it represents |
AJ: <event_name> (Event) | Number of times the event fired in the period |
AJ-R: <event_name> (Event) | Revenue associated with the event (when revenue is enabled for that event) |
Cohort KPIs (configurable)
Cohorts isolate users who installed (or were reattributed) within a given timeframe and let you trace event counts and revenue from day-of-install onwards. Prefix: AJ-C: (count) and AJ-RC: (revenue).
Supported cohort windows: 0d, 1d, 2d, 3d, 4d, 5d, 6d, 0w, 0m by default; longer windows (1w–30w, 2m–6m) can be enabled by your Clarisights CSM.
Metric pattern | What it represents |
AJ-C: <event_name> (<window>) | Event count within the cohort window — e.g. AJ-C: Transaction Completed (0w) |
AJ-RC: <event_name> (<window>) | Revenue within the cohort window |
SKAN KPIs (iOS 14.5+)
For iOS 14.5+ campaigns subject to Apple's ATT, conversions are reported via Apple's SKAdNetwork and shared with Adjust by ad partners. Prefix: AJ-SKAN:
Metric | Description |
AJ-SKAN: Installs | SKAdNetwork-attributed installs |
AJ-SKAN: Reinstalls | SKAdNetwork-attributed reinstalls |
AJ-SKAN: Conversion 1–6 | Counts for each configured SKAN conversion value |
AJ-SKAN: Valid Conversions | Conversions Adjust considers valid |
AJ-SKAN: Invalid Payloads | Payloads rejected by Adjust validation |
Breakdowns: OS and Retargeting
Each base / event / cohort metric is also exposed split by device OS and by retargeting status. The full set of prefixes:
Prefix | Group |
AJ: | Adjust (all OS, attribution) |
AJAND: | Adjust Android |
AJIOS: | Adjust iOS |
AJOTH: | Adjust Others (iPad, etc.) |
AJRE: | Adjust Retargeting (all OS, reattribution) |
AJREAND: | Adjust Retargeting Android |
AJREIOS: | Adjust Retargeting iOS |
AJREOTH: | Adjust Retargeting Others |
Examples: AJIOS: Installs, AJREAND: Sessions, AJREIOS-C: Purchase (1w).
Fraud metrics
Fraud-related metrics (rejected installs, rejected reattributions, etc.) are configurable per account. Contact your Clarisights account manager to enable or disable fraud metric ingestion for your Adjust integration.
Alternative — POD-AJ
The Adjust integration described above is a secondary data source: its metrics are joined onto the ad-channel objects (Account / Campaign / Ad Group / Ad) of your connected advertising channels, and Adjust's own dimensions (network, country, OS, app) are used internally as join keys rather than being available to slice reports by.
POD-AJ is a different connector that brings Adjust data in as a primary data source. With POD-AJ, Adjust dimensions are stored alongside the metrics and are first-class fields you can group, filter, and pivot on.
Primary vs Secondary data, in one example
When Clarisights imports a primary data source (e.g. an ad channel like Google Ads), we keep all of its metrics and dimensions. A row in Clarisights might look like:
Account | Campaign | Country | Device | Spend | Clicks |
Google Ads — DE | Holiday Sale | DE | Mobile | 1,200 | 5,400 |
For a secondary source like Adjust, we drop the Adjust-side dimensions and use them as join keys instead. The same row, after Adjust is joined, looks like:
Account | Campaign | Spend | Clicks | AJ: Installs | AJ: Revenue |
Google Ads — DE | Holiday Sale | 1,200 | 5,400 | 820 | 9,500 |
The Adjust dimensions (network tracker, country, OS, app) are no longer columns — they were consumed during the join. That's why Adjust isn't a standalone source in the report builder; its metrics show up automatically when a joined ad channel is added to a report.
Why use POD-AJ instead
Use POD-AJ when you need any of the following:
Organic, affiliate, and untracked traffic — installs and revenue that don't come from a paid ad channel won't appear under
AJ:metrics (because there's no ad-channel row to join onto). POD-AJ surfaces them directly.Network-tracker independent reporting — slice installs by Adjust network, country, OS, or app without going through an ad channel's hierarchy.
Adjust's own dimensions in widgets — group, filter, and pivot on Adjust dimensions as if they were ad-channel dimensions. With the standard Adjust integration these aren't available; with POD-AJ they are.
Reporting on affiliates by tracker — when an affiliate sends clicks through a specific network tracker, POD-AJ lets you analyse that tracker's performance on its own.
Adjust integration vs POD-AJ at a glance
Adjust integration | POD-AJ | |
Source type | Secondary (analytics) | Primary |
Adjust dimensions stored | No — used as join keys only | Yes — first-class dimensions |
Customizable metrics / dimensions | No — fixed metric set | Yes — chosen at channel setup |
Visible as a standalone data source | No — joined onto ad channels | Yes — selectable when building reports |
Captures organic / affiliate / untracked traffic | No | Yes |
Setting up POD-AJ
POD-AJ is created from the same POD (flat-file primary data) framework used for other custom data sources. To create a POD-AJ channel, follow the steps in Creating a POD data source and choose Adjust as the source type during setup.
Limitations & known constraints
No standalone Adjust dimensions. Adjust is a secondary integration: tracker, network, country, OS, etc. are not available as Clarisights dimensions on the Adjust source — they're used internally as join keys. If you need Adjust as a primary, dimension-rich source, use POD-AJ (see above).
Expired-attribution windows. Some ad partners stop sharing attribution with Adjust after a fixed period — Facebook, Twitter, and Snapchat cap at ~90–150 days. Backfills beyond those windows will return no data. See Adjust's expired-attribution docs.
SKAN granularity varies by partner. Facebook reports SKAN down to ad level; Google Ads only to campaign. See Adjust's SKAN partner integrations for the full matrix.
Currency and timezone are immutable per app. Changing either requires a backfill to re-state history.
Custom event cap. Up to 20 custom events per company can be ingested. Reuse / unify event names across apps when you can.
Network mapping is mandatory. If an Adjust network tracker isn't mapped to a Clarisights ad channel, its data is dropped from the join and won't appear.
Custom join rules require setup. Non-standard tracker value formats need a regex configured by Clarisights — write to support@clarisights.com.
Operating notes
Refresh schedule: daily ingestion runs the app and SKAN metric groups over the last 8 days; cohort metric groups run on staggered schedules covering each cohort window (7-day, 15-day, 30-day, …, 210-day buckets) to keep the most relevant cohorts fresh.
Lookback: 8 days for app/SKAN; cohort windows up to 210 days, gated by what's enabled for your company.
Backfill: when you connect an app, Clarisights backfills as far as Adjust will return data (subject to per-partner expired-attribution caps). Targeted backfills can be requested via your CSM.
Multi-account: one Adjust user (API token) can host any number of apps. Add multiple users if you have apps under separate Adjust accounts.
Currency conversion: revenue is preserved in the app's configured currency on ingest and converted to your reporting currency by Clarisights.
Credential rotation: update the API token any time from Integrations → Adjust → Edit User. App tokens can be updated similarly per app.
Need primary-source Adjust data? Use the POD-AJ connector — see Alternative — POD-AJ above.
Need help?
When contacting support from the in-app messenger, please include:
The Adjust user / app name in Clarisights (Integrations → Adjust)
The Adjust App Token of the affected app
The Network tracker name (and the Clarisights ad channel it should map to)
The exact error message or screenshot
The metric, date range, and dashboard / widget where the issue is visible
When the issue started