Your Meta app campaign report shows cheaper Android installs and fewer recorded purchases on iOS. Before shifting budget, check whether both groups have had the same time to purchase—and whether the reports capture the same outcome. An operating system breakdown separates users, but it does not automatically make their results comparable.
Quick take: A useful meta app campaign OS cohort comparison keeps Android and iOS separate, aligns post-install observation windows, and checks event definitions and reporting coverage before ranking performance. If either cohort is immature or its purchase data is incomplete, defer the cross-OS ranking. Compare acquisition cost with downstream value only after those checks pass.
The XMP Meta app advertising guide recommends keeping the app, country, attribution basis and cohort age consistent when reviewing acquisition quality. This article applies that principle to the specific question of comparing Android with iOS.

Define cohorts before comparing costs
A cohort is a group of users sharing an acquisition period and a defined set of characteristics. For this review, start with separate Android and iOS groups for the same app product, country and install period. Preserve the store app identifiers so that spend and outcomes remain attached to the correct app.
Keep the groups separate throughout the calculation. A blended purchase rate can change simply because the share of Android and iOS installs changes. That makes the combined rate a poor explanation of what happened within either OS.
Also distinguish an allocation question from a causal claim. You may be able to compare the economics of your current Android and iOS campaigns without proving that the operating system caused the difference. Different creative, audiences, offers or optimization goals can all change which users enter each cohort.
Use the following meta app campaign OS cohort comparison checklist to build a review sheet. Complete each field for both operating systems and keep the supporting report or configuration record beside it.
| Field | What to record for each OS | Comparison condition |
|---|---|---|
| App and market | Product, store app identifier, country and relevant app version. | Separate materially different markets or app experiences. |
| Acquisition scope | Install dates, timezone, campaign IDs and acquisition versus re-engagement scope. | Use equivalent populations and explicitly map spend to them. |
| Campaign conditions | Performance goal, audience, creative, offer and major changes. | Document differences that prevent attributing the result to OS alone. |
| Observation window | Time since install, cutoff and report extraction time. | Both cohorts must complete the selected window. |
| Attribution basis | Source, attribution window, click/view inclusion and date basis. | Explain differences before comparing attributed outcomes. |
| Event coverage | Event meaning, unique users versus event counts, and missing or estimated data. | Compare equivalent outcomes with understood coverage. |
| Value basis | Currency, revenue components, refunds and gross or net treatment. | Apply one economic definition to both cohorts. |
Give both operating systems the same time to produce value
A younger cohort has had less opportunity to activate, return or purchase. Ranking it against an older cohort can turn an age difference into an apparent quality difference. The same dashboard date range does not necessarily mean equal observation time.
Choose the outcome window before inspecting the winner. For example, if your business question concerns purchases during the first seven elapsed days after installation, include only users who have completed that window. Apply the same rule to Android and iOS. Seven days is an illustrative analysis window, not a Meta requirement or a universal recommendation.
Keep two clocks separate: time available for user behavior and time needed for reporting. A cohort can finish its behavioral window while the report still has outstanding updates. Record the extraction time and have the measurement owner confirm whether the selected source is ready for review.
If a report uses calendar-day labels such as D0 or D7, document their meaning and timezone. Do not silently compare a calendar-day metric with an elapsed-time metric. If a common window cannot be reconstructed, keep the views separate and state the limitation.
Separate user behavior from what the report can see
Fewer recorded purchases can mean fewer purchases, incomplete event collection, or a difference in attribution coverage. Those explanations lead to different actions: changing acquisition strategy, repairing measurement, or revising the comparison. Treat a missing value as unknown until its meaning is established.
Ask the measurement owner to trace the chosen event on both operating systems. Confirm what triggers it, whether repeat events are counted, and whether it represents the same business milestone. A trial start on one OS and a paid subscription on the other cannot share a purchase-rate column.
Then examine the reporting layer. If a view contains modeled or aggregated outcomes, label it accordingly. Do not assume that a platform total, an MMP cohort and an internal transaction report describe identical populations. Use the app advertising report reconciliation guide when differences between sources need a separate investigation.
For each OS, calculate only metrics that the available data supports:
- Activation rate: unique users reaching the defined activation event within the window, divided by eligible installs in that cohort.
- Cost per activated user: acquisition spend mapped to the cohort, divided by those activated users.
- Revenue per install: cohort revenue within the window, divided by eligible cohort installs.
- Cohort ROAS: revenue assigned to that cohort and window, divided by the corresponding acquisition spend.
Keep numerator and denominator on the same population. Purchases made this week by users acquired in earlier weeks do not belong in the purchase rate for this week's install cohort. Likewise, total internal revenue cannot be assigned to Meta merely because Meta was running during the period.
If user-level linkage is unavailable, avoid manufacturing a precise user-level conversion rate from unrelated aggregate totals. Use the reporting method's supported metrics and describe their scope. The supplied sources do not establish current Meta-specific iOS reporting delays or eligibility rules, so no fixed waiting period is assumed here.
Examples: when an OS ranking should wait
The following are illustrative review situations, not customer results or performance benchmarks.
Android is mature; iOS is still accumulating outcomes
Suppose the Android campaign launched earlier and its selected install cohort has completed the purchase window. The iOS cohort has not. A lower iOS purchase rate at that point does not answer which campaign acquires more valuable users.
Wait for the iOS cohort to complete the agreed window, or rebuild both views around an earlier common age if that answers a useful business question. Do not shorten only the Android window or extrapolate iOS revenue without labeling the estimate and its assumptions.
The event names match; the business milestones differ
Suppose both reports contain an event called registration, but Android records completed account creation while iOS records the start of the registration flow. The shared label hides a different denominator-to-outcome relationship.
Have the app and measurement owners establish equivalent event definitions. Until then, review each event within its own OS and avoid a cross-OS activation ranking. Once comparable measurement exists, the Meta low-CPI and weak-activation diagnosis is the next task if cheap installs still fail to reach the intended milestone.
The OS totals contain different country mixes
Suppose Android acquisition is concentrated in one market while iOS acquisition is concentrated in another. Their overall costs and revenue describe those two portfolios. They do not isolate an OS difference.
Compare Android and iOS within shared countries first. If you need a combined summary, state the weighting method and retain the country rows. Where one OS has no comparable cohort in a country, mark the comparison unavailable rather than substituting another market.

Turn the comparison into a bounded budget decision
Even a mature cohort can be too sparse to support a budget shift. Review the number of eligible installs, unique outcome users and the concentration of revenue. If a small number of purchases can reverse the ranking, treat the conclusion as provisional. Agree on sample sufficiency with the analyst using the business outcome and decision risk; there is no universal event count supplied for this comparison.
Once the evidence is usable, compare cost with value at the same age. Lower CPI alone does not establish better economics. A higher acquisition cost may be acceptable if comparable downstream value supports it, while stronger early activation may still fail to translate into revenue. Keep short-window value distinct from lifetime value.
When the decision leads to a new test, XMP Meta Quick Create supports building new campaigns, ad sets and ads with fields such as promoted app, location and performance goal. Preserve the agreed cohort definitions in the test brief and reporting plan. Faster campaign creation does not establish measurement comparability.
The XMP 2026 feature update log documents Meta Quick Create changes in June and July. Those are campaign workflow capabilities; the update does not establish that Android and iOS events have equivalent coverage in your account.
Close the review with four decisions in order:
- Validate measurement: resolve event meaning, attribution scope and unexplained missing data for each OS.
- Check maturity and sample sufficiency: confirm equal observation age, reporting readiness and enough evidence for the proposed decision.
- Connect cost with business value: compare cohort acquisition cost, activation and revenue on consistent definitions.
- Choose the next action: investigate, wait, run a controlled test, or make a bounded allocation change. Record the owner, evidence, remaining uncertainty and next review condition.