Why Your MMP Shows Fewer Installs Than Ad Networks
MMPs consistently report fewer installs than ad networks due to deduplication, fraud filtering, and attribution logic. Here's what's happening.

Why Your MMP Shows Fewer Installs Than Ad Networks
You spend $10,000 on Facebook. Facebook reports 1,000 installs. Your MMP shows 850 installs.
You're not imagining it. Your MMP almost always shows fewer installs than ad networks report.
This isn't a bug. It's your MMP doing its job: deduplicating overlapping claims, filtering fraud, and providing accurate attribution.
Here's what's actually happening.
Reason 1: Deduplication Across Networks
This is the biggest reason for the discrepancy.
Ad networks self-attribute. If a user clicked their ad within the lookback window, they claim the install—regardless of what else the user clicked.
Example user journey:
- Day 1: Clicks Facebook ad
- Day 2: Clicks TikTok ad
- Day 3: Clicks Google ad
- Day 4: Installs
What each platform reports:
- Facebook: 1 install (user clicked within 7 days)
- TikTok: 1 install (user clicked within 7 days)
- Google: 1 install (user clicked within 7 days)
Total claimed by ad networks: 3 installs
Your MMP's view:
Uses last-click attribution. Google gets credit (last click before install).
Total in MMP: 1 install to Google
All three platforms reported the install. Your MMP deduplicated it to one source.
If you run campaigns on 3-5 platforms, this overlap creates significant discrepancies. Combined ad network totals might be 30-50% higher than MMP totals.
Reason 2: Fraud Filtering
MMPs apply fraud detection that ad networks don't always match.
What MMPs filter:
- Click flooding: Fake clicks trying to steal attribution
- Install farms: Mass installs from data centers
- Emulator traffic: Bots running fake devices
- Click injection: Malware that fakes ad clicks
- Suspicious patterns: Geographic anomalies, impossible timing, repeat offenders
Why ad networks report these:
- They see the click registration
- They see the install postback (before MMP filtering)
- Their fraud systems may not catch all the same patterns
- Some networks have less sophisticated fraud detection
Result:
Ad network reports 1,000 installs. MMP flags 100 as fraud. MMP shows 900 installs.
The 100-install discrepancy represents fraud your MMP blocked, saving you from paying for fake installs.
Reason 3: Attribution Window Differences
If your MMP uses stricter attribution windows than ad networks, it attributes fewer installs.
Common scenario:
- Ad network set to 28-day click window
- Your MMP configured for 7-day click window
User clicks ad on Day 1, installs on Day 10.
Ad network: Attributes the install (within 28-day window)
Your MMP: Doesn't attribute it (outside 7-day window)
This creates systematic under-reporting in your MMP if windows aren't aligned.
Reason 4: SDK Initialization Requirements
Ad networks count installs based on app download or first open. MMPs typically require successful SDK initialization.
Install stages:
- User downloads app from store
- User opens app
- App initializes
- MMP SDK fires
If the user:
- Downloads but never opens: Ad network might count it, MMP doesn't
- Opens but app crashes before SDK fires: Ad network counts it, MMP doesn't
- Opens but has no internet connection: Ad network counts it eventually, MMP may not
Typical drop-off:
2-5% of downloads never result in MMP SDK fires due to technical issues, immediate uninstalls, or users who downloaded but never opened.
Reason 5: Organic Attribution
MMPs often classify installs as organic that ad networks claim as paid.
Scenario:
User sees a Facebook ad (doesn't click), searches for your app 3 days later, and installs.
Facebook's view: View-through conversion. Counts as paid install.
Your MMP's view: No click within attribution window. Counts as organic.
View-through attribution logic differs across platforms, creating discrepancies in paid vs. organic classification.
Reason 6: Re-attribution and Re-engagement
Ad networks may count re-engagement events that MMPs don't classify as installs.
User journey:
- User installed your app 6 months ago (organic)
- User hasn't opened it in 90 days
- User clicks a re-engagement ad
- User re-opens the app
Some ad networks: Report this as an "install" in certain dashboards
Your MMP: Reports it as "re-attribution" or "re-engagement," not a new install
Mixing installs and re-engagement in ad network reporting inflates their numbers above your MMP's install count.
Reason 7: SKAN Crowd Anonymity
For iOS installs measured via SKAN, Apple drops attribution data if volume doesn't meet privacy thresholds.
How it works:
- Low-volume campaigns don't get full postbacks
- Apple removes identifying fields to preserve anonymity
- Some installs never generate postbacks at all
Result:
Ad networks may see clicks and estimate installs based on historical conversion rates, while your MMP only counts installs with successful SKAN postbacks.
This particularly affects small campaigns or tests with limited volume.
Reason 8: Postback Delivery Failures
Not all postbacks successfully arrive at ad networks.
Technical issues:
- Network timeouts
- Server downtime
- Configuration errors
- URL changes
If your MMP successfully attributes 1,000 installs but only 950 postbacks successfully deliver to the ad network, the ad network reports 950 while your MMP shows 1,000.
This is one of the few scenarios where your MMP shows more than the ad network.
What's Normal
Expected pattern: MMP shows 10-20% fewer installs than combined ad network totals
This comes from:
- Deduplication (5-15% overlap)
- Fraud filtering (2-5% blocked)
- Attribution methodology differences (1-5%)
When to investigate: MMP shows 30%+ fewer installs
Large discrepancies indicate:
- Misaligned attribution windows
- SDK implementation issues
- Postback configuration errors
- High fraud rates requiring investigation
How to Diagnose the Gap
When your MMP shows significantly fewer installs:
1. Check for deduplication
Run a report in your MMP showing:
- Total installs across all networks
- Sum of installs per network
If the sum is much higher than the total, you have significant overlap. This is normal if you run on multiple platforms.
2. Review fraud rates
Check your MMP's fraud dashboard:
- What percentage of installs are flagged?
- Which networks have highest fraud rates?
- What types of fraud are being blocked?
High fraud rates (10%+) explain large discrepancies and indicate you need to address traffic quality.
3. Verify attribution windows
Compare settings:
- MMP attribution window (typically 7-day click, 1-day view)
- Facebook attribution setting (check Ads Manager → Settings)
- TikTok attribution setting (check Ads Manager → MMP Integration)
- Google attribution setting
Misalignment creates systematic over-reporting on the ad network side.
4. Check SDK health
Review MMP dashboard metrics:
- Install-to-SDK initialization rate
- SDK version distribution
- Error rates
Low initialization rates suggest technical issues preventing proper tracking.
5. Examine organic vs. paid classification
Look at view-through attribution:
- Does your MMP count view-through conversions?
- How does this compare to ad network view-through reporting?
- Are windows aligned?
Should You Be Concerned?
No concern needed:
- MMP shows 10-20% fewer installs than combined ad network totals
- Fraud filtering explains most of the gap
- Deduplication accounts for overlap
Investigate if:
- Discrepancy suddenly increases (was 10%, now 30%)
- Specific network shows 40%+ difference
- MMP shows far more installs than ad network (suggests postback issues)
- Fraud rates spike above historical baselines
Which Number to Use
For decision-making: Use your MMP numbers
- Accurate deduplication across channels
- Fraud-filtered for quality
- Consistent attribution methodology
- Single source of truth
For optimization: Reference ad network numbers
- Platforms optimize based on their own data
- Use for creative testing, audience iteration
- Compare relative performance within the platform
Never optimize budgets based on ad network reported numbers. They include overlapping installs that your MMP correctly deduplicates.
Reducing the Gap
You can minimize (but not eliminate) discrepancies:
- Align attribution windows across all platforms and your MMP
- Improve fraud prevention through traffic quality monitoring
- Verify SDK implementation to maximize initialization rates
- Monitor postback health to ensure reliable delivery
- Use consistent event definitions across all systems
Even with perfect configuration, expect your MMP to show 5-10% fewer installs than ad networks combined due to legitimate deduplication.
FAQs
Why does my MMP show fewer installs than ad networks?
MMPs show fewer installs because they deduplicate across networks, filter fraud, use stricter attribution windows, and only count installs where the SDK successfully initialized. Ad networks self-attribute and may count overlapping installs.
Is my MMP missing installs?
Not usually. The difference comes from deduplication (ad networks claim the same installs), fraud filtering (MMP blocks suspicious traffic), and attribution methodology. Your MMP provides a more accurate, deduplicated count.
Should I trust my MMP or the ad network numbers?
Trust your MMP for decision-making and budget allocation. It provides deduplicated, fraud-filtered data across all channels. Use ad network numbers only for in-platform optimization.
What if my MMP shows 50% fewer installs than Facebook?
Large discrepancies indicate configuration issues. Check attribution window alignment, verify SDK implementation, review fraud rates, and ensure postbacks are configured correctly. A 50% gap suggests systematic problems.
Why do ad networks claim installs my MMP doesn't show?
Ad networks self-attribute any install where the user clicked their ad within the lookback window. If users clicked multiple ads, all platforms claim the install. Your MMP deduplicates these to assign credit to one source.
Your MMP showing fewer installs than ad networks is expected and correct. It's removing fraud, eliminating duplicates, and giving you an accurate view of which channels actually drive growth. Trust it over ad network self-reported numbers.
Related Resources

Adjust vs AppsFlyer vs Branch: Which MMP is Right for You? (2025)
Compare the top mobile measurement partners in 2025. Honest breakdown of Adjust, AppsFlyer, and Branch pricing, features, and strengths.

Do You Actually Need an MMP? (2025 Reality Check)
Mobile measurement partners cost thousands per month. Here's how to determine if an MMP is worth it for your app—or if you can skip it entirely.

How Much Does an MMP Cost? (2025 Pricing Guide)
Real-world MMP pricing for Adjust, AppsFlyer, Branch, and alternatives. See what you'll actually pay based on your app's scale and needs.