
Before walking through the cycle, it helps to understand what's actually involved. App attribution requires five components working together:
| Component | Role |
|---|---|
| Ad Network | Logs ad interactions (clicks, impressions) with device identifiers and timestamps |
| Click Record | The timestamped entry stored by the ad network when a user interacts with an ad |
| App SDK | Code embedded in your app that fires an install signal when the app is opened for the first time |
| MMP | The neutral third party that receives the install signal and attempts to match it to a click record |
| Postback | The confirmation signal sent from the MMP back to the ad network after a successful match |
Remove any one of these and the attribution breaks down. The MMP is the orchestrating layer — it connects all the others.
Here is exactly what happens from the moment a user sees an ad to the moment the ad network receives a confirmed conversion signal:
A user sees or clicks an ad on Google, Meta, Mintegral, TikTok, or any other network. The ad network captures:
This record is stored and held, waiting to be matched against a future install.
The user follows through — they download and open the app for the first time. On first open, the MMP SDK embedded in the app fires and sends an install signal containing:
The MMP receives the signal and begins a match lookup. It searches its database of click and impression records for an interaction from the same device, within the configured attribution window (typically 7 days for clicks, 24 hours for impressions).
The MMP applies its matching logic:
Once a match is confirmed, the MMP sends a postback to the winning ad network — a server-to-server signal confirming the install. This postback can also carry subsequent in-app events (purchases, ad revenue, retention milestones) as they occur.
The entire cycle from click to postback typically completes in under 60 seconds.
The two methods differ significantly in accuracy and applicability:
Uses an exact device identifier — IDFA (iOS) or GAID (Android) — to create a one-to-one match between the click record and the install record. This is the most accurate method available. When a match is deterministic, you can be confident the attribution is correct.
When it works: Android (GAID available by default), iOS users who granted ATT permission (IDFA available).
Used when no device identifier is available. The MMP uses a combination of contextual signals — IP address, device model, OS version, screen resolution, install timing — to estimate which prior ad interaction most likely caused the install.
When it works: iOS users who declined ATT, environments where device IDs are unavailable.
Trade-off: Probabilistic attribution is less precise than deterministic. Two devices on the same IP address with similar specifications can produce ambiguous matches. However, it recovers a significant portion of attribution that would otherwise be marked as organic.
Apple's App Tracking Transparency (ATT) framework (iOS 14.5+) made IDFA opt-in, and most users decline. This created a layered attribution challenge that every MMP now addresses with a three-tier approach:
| Layer | Signal | When Used | Accuracy |
|---|---|---|---|
| Layer 1 — IDFA | Device identifier | ATT-consented users | Highest (deterministic) |
| Layer 2 — Google ICM | Google's Install Conversion Measurement | Non-consented users, Google Ads campaigns | High (privacy-safe signal) |
| Layer 3 — SKAN | Apple's SKAdNetwork | All remaining iOS users | Aggregated only |
Layer 2 note: Install Conversion Measurement (ICM) is Google's product. SolarEngine integrates with Google's ICM interface, allowing clients to recover attribution signals for non-consented iOS users running Google Ads campaigns — without requiring IDFA.
Layer 3 note: SKAN provides aggregated, delayed, campaign-level data only — no user-level attribution. It is the fallback layer when no other signal is available.
An MMP that only handles Layer 1 loses attribution data for the majority of iOS users. Full three-layer coverage is the industry standard for iOS measurement in 2026.
A postback is a server-to-server HTTP request sent from the MMP to the ad network after an install or in-app event is attributed. It is the mechanism through which ad platform algorithms receive real conversion feedback.
Without postbacks, ad networks optimize on click-through rates and estimated conversions — proxy metrics that don't reflect actual revenue.
With postbacks, ad networks receive:
This feedback loop is what enables ad network algorithms — Google's Target CPA, Meta's value optimization, Mintegral's Target ROAS — to shift spend toward users who generate revenue, not just clicks.
Postback timing matters: Events sent back within the first 24–48 hours after install have the highest impact on algorithm performance. Most MMPs allow you to configure postback rules per network — which events to send, when, and at what frequency.
SolarEngine's attribution module handles the full cycle described above — across all major ad networks — with additional capabilities for complex attribution scenarios:
Cross-channel integration: Integrates with Google, Meta, Mintegral, TikTok, and 30+ additional networks. All attribution data flows into a single report with consistent methodology across channels.
iOS three-layer coverage: SolarEngine's iOS attribution implements all three layers — IDFA, Google ICM integration, and SKAdNetwork — so clients recover the maximum possible attribution coverage on iOS without additional development work.
Postback configuration: SolarEngine's postback system allows clients to define custom postback rules — which events, which networks, which thresholds — through a visual interface. No engineering involvement required. For Mintegral campaigns, sending accurate IAA revenue postbacks through SolarEngine feeds real monetization signals into Mintegral's Target ROAS bidding model.
Fraud filtering: SolarEngine's real-time fraud detection identifies and blocks fake installs, click injection, and device farm activity before they enter attribution reports — ensuring the data your team acts on is clean.
30+ dimensions: Every attributed install can be analyzed across 30+ dimensions including region, device type, OS version, ad network, campaign, ad group, creative, and custom segments.
For a complete overview of the attribution platform and how to choose the right MMP, see
Mobile App Attribution: Complete Guide [2026]
Q: How does app attribution work technically?
App attribution works by embedding an SDK in your app that fires an install signal on first open. A neutral MMP receives this signal and matches it to a prior ad click or impression record using device identifiers or probabilistic signals. The MMP assigns credit to the matching channel and sends a postback confirmation to the ad network.
Q: What happens if two ad networks claim credit for the same install?
Without an MMP, both networks would count the install in their dashboards — creating double-counting. An MMP applies a single attribution model (typically Last Click) and assigns credit to only one source. All other networks receive no credit for that install.
Q: How long does the attribution matching process take?
The full cycle — ad click to MMP match to postback delivery — typically completes in under 60 seconds for deterministic matches. Probabilistic matches may take slightly longer as the MMP evaluates multiple contextual signals.
Q: What is the difference between click attribution and impression attribution?
Click attribution assigns credit to an ad that a user clicked before installing. Impression attribution assigns credit to an ad the user saw (but may not have clicked) before installing. Click attribution is the standard; impression attribution is used for awareness campaigns. Impression windows are typically shorter (24 hours vs 7 days for clicks).
Q: Why do I need a postback? Can't I just look at MMP reports?
MMP reports tell you what happened. Postbacks tell the ad network what happened — so its algorithm can optimize toward users who actually convert. Without postbacks, you're reporting on past performance but not improving future performance. Postbacks close the loop between measurement and optimization.
App attribution works through a five-component cycle: ad interaction → install signal → MMP match → attribution decision → postback. Understanding each step helps UA teams configure their MMP correctly, set appropriate attribution windows, and get the maximum value from postback data.
The difference between attribution that improves your campaigns and attribution that merely reports on them comes down to postback quality — and that starts with accurate, real-time matching.
Set up attribution with SolarEngine → — cross-channel coverage, three-layer iOS attribution, and postback configuration in a single platform.
