ROAS is a key mobile marketing metric that measures revenue for every ruble spent on advertising. The metric helps evaluate the profitability of ad campaigns and understand which acquisition channels are paying off. According to Adjust, 2025, ROAS has become the primary KPI for 78% of mobile app advertisers. Without this metric, it is impossible to effectively allocate budget for user acquisition.
Key Takeaways
ROAS (Return on Ad Spend) is a metric of advertising campaign effectiveness that shows how much money advertising generated for every ruble spent. For example, a ROAS of 4:1 means that every ruble of ad budget generated 4 rubles of revenue.
In mobile marketing, ROAS is used to evaluate user acquisition campaigns. Platforms like Meta Ads, Google Ads, and Apple Search Ads provide expenditure data, while analytics systems provide revenue data from installed users.
ROAS below 1:1 (or 100%) means a loss — the advertising is not paying off. ROAS of 2:1 covers costs and leaves a margin. ROAS above 5:1 is considered excellent for most verticals. However, interpretation depends on the user's lifetime value (LTV): if a user monetizes over 6 months, the ROAS on day 3 may be low, but the final ROAS may be high.
Seasonality and app type also matter. Games with short LTV require fast ROAS, while subscription services can afford a longer payback period.
In User Acquisition (UA), ROAS allows comparing traffic channels with each other. Facebook Ads with ROAS 2.5 loses to TikTok Ads with ROAS 3.8, even though both channels bring installs — the difference is in user quality. A UA manager reallocates budget toward the channel with the best ROAS, maximizing return on ad spend.
Without ROAS, a marketer relies on CPI (cost per install), which does not show how much money a user brings. A channel with cheap installs may deliver low-quality traffic with zero monetization. ROAS solves this problem.
ROAS formula is extremely simple: advertising revenue divided by advertising costs. The result is expressed as a ratio or percentage.
ROAS = Revenue / Ad Spend
If an ad campaign generated 600,000 rubles in revenue with a budget of 150,000 rubles, ROAS = 600,000 / 150,000 = 4.0 (or 400%).
In practice, revenue is tied to installs through attribution. Consider a ROAS calculation example for a set of campaigns:
| Campaign | Budget, rub. | Installs | Revenue, rub. | ROAS |
|---|---|---|---|---|
| Meta Ads | 50,000 | 1,200 | 180,000 | 3.6 |
| Google Ads | 80,000 | 2,100 | 280,000 | 3.5 |
| Apple Search Ads | 20,000 | 400 | 120,000 | 6.0 |
Apple Search Ads showed the best ROAS (6.0), although they brought the fewest installs. This is typical for a platform with high user purchase intent.
For automatic ROAS calculation in an app, you can use Firebase Analytics together with BigQuery:
SELECT
DATE(event_timestamp) AS campaign_date,
campaign_name,
SUM(event_value_in_usd) AS revenue,
SUM(ad_cost) AS ad_spend,
ROUND(SUM(event_value_in_usd) / SUM(ad_cost), 2) AS roas
FROM `project.analytics_123.events_*`
WHERE event_name = 'in_app_purchase'
AND campaign_name IS NOT NULL
GROUP BY campaign_date, campaign_name
ORDER BY roas DESC
The query groups purchase revenue by campaign and day, dividing by costs — resulting in daily ROAS for each traffic source.
Good ROAS does not exist in a vacuum — it is determined by the product margin and monetization model. For subscription apps, ROAS of 3:1 may be low if the margin is 20%, while for games with in-app purchases, ROAS of 4:1 is excellent.
| App Type | ROAS Day 1 | ROAS Day 30 | Target ROAS |
|---|---|---|---|
| Hyper-casual games | 0.15–0.30 | 0.40–0.60 | 1.2–1.5 |
| Mid-core games | 0.10–0.20 | 0.50–0.80 | 2.5–4.0 |
| Subscription services | 0.05–0.10 | 0.30–0.50 | 5.0–7.0 |
| E-commerce apps | 0.20–0.40 | 0.60–1.00 | 3.0–5.0 |
It is important to consider the time horizon: Day 1 ROAS is almost always low because users do not make purchases on the first day. A cohort-based analysis provides a more accurate picture.
According to an AppsFlyer study (2024), the average Day 30 ROAS for Android apps is 0.45, and for iOS — 0.52. The difference is explained by audience purchasing power.
ROAS varies significantly across app categories. Hyper-casual games typically have a ROAS of 1.2–1.5 due to short user LTV. The average ROAS of fintech apps reaches 5.0–7.0, as users make repeat transactions. E-commerce apps occupy an intermediate position with a ROAS of 3.0–5.0.
Region also matters: ROAS in the US and Western Europe is 2–3 times higher than in Southeast Asia, with comparable CPI. The difference is due to audience purchasing power and the level of competition in ad auctions.
ROAS and ROI are related metrics that are often confused. ROAS considers only advertising expenses, while ROI includes all costs, including production, salaries, and operating expenses.
ROI formula: (Revenue — Total Costs) / Total Costs × 100%. If an app earned 1 million rubles and total costs were 800,000 rubles, ROI = 25%. ROAS, meanwhile, could be 4.0 if the ad budget was only 250,000 rubles.
ROAS is used for operational evaluation of ad campaigns. The marketer sees which channel brings more revenue per ruble of budget and reallocates spending. Decisions are made in real time — within days or weeks.
ROI is needed for strategic business evaluation — whether the product as a whole is paying off. ROI includes development, support, server costs, and salaries. The metric is measured on a quarterly or annual basis.
In practice, both metrics are used in parallel: ROAS for traffic acquisition tactics, ROI for product development strategy.
Improving ROAS requires a combination of creative optimization, targeting, and retargeting. Below are proven methods with examples.
A/B testing creatives is the fastest way to improve ROAS. Replace static banners with playable ads (interactive gameplay prototypes). According to Unity Ads (2024), playable ads increase CR by 30–40% and reduce CPI by 15%.
Lookalike audiences based on LTV increase ROAS by 25–50% compared to broad targeting. Upload a cohort of users with LTV above the median into your ad account — the algorithms will find similar users.
Geotargeting is also important: advertising in Tier-1 countries (USA, UK, Japan) yields higher ROAS, but CPI is also higher. The optimal strategy is a mix of Tier-1 for premium installs and Tier-2 for scale.
// Example of sending conversion data to Adjust for ROAS analytics
const adjust = new Adjust({
appToken: '{your_app_token}',
environment: 'production'
});
adjust.trackEvent({
eventToken: '{purchase_token}',
revenue: 9.99,
currency: 'USD',
callbackParams: {
campaign_id: campaignId
}
});
Sending revenue events to a tracker (Adjust / AppsFlyer) allows the platform to automatically calculate ROAS at the campaign level and optimize bids.
Retargeting users who installed the app but did not make a purchase yields a ROAS of 6:1 — 10:1 according to Remerge (2024). Segment by events: “installed but did not open for 7 days” or “added item to cart but did not buy”.
Dayparting is the distribution of ad budget by hours and days. In mobile apps, conversion in evening hours (6:00 PM – 11:00 PM) is 30% higher than in morning hours (6:00 AM – 11:00 AM). On weekends, CPI is 15–20% lower with the same ROAS. Scheduling ad delivery in the ad account gives a ROAS increase of 10–15% without changing creatives.
For correct ROAS calculation, integration of ad platforms with an analytics system is necessary. The main tools fall into three categories.
AppsFlyer and Adjust are market leaders. They automatically consolidate expenditure data from 10+ ad accounts and in-app revenue data. AppsFlyer provides a cohort-based ROAS report with breakdown by country, campaign, and creative.
Firebase Analytics is free and built into the Google ecosystem. For ROAS calculation, data is exported to BigQuery, where an SQL query is built (example above). The downside is no automatic attribution: expenditure data must be uploaded separately.
Tableau and Looker allow building custom ROAS dashboards with data from MMP, your own analytics, and CRM. Suitable for products with high data volume and a complex funnel.
Frequently Asked Questions
ROMI (Return on Marketing Investment) is broader than ROAS — it includes all marketing costs (salaries, software, creatives), not just the advertising budget. ROAS is a part of ROMI related to media spend.
Break-even ROAS is inversely proportional to margin. If margin is 25%, break-even ROAS = 1 / 0.25 = 4.0. With a margin of 50%, ROAS of 2.0 is sufficient. Formula: Break-even ROAS = 1 / Gross Margin.
Ad platform algorithms need time to learn (learning phase). The first 3–5 days ROAS may be below 1.0 while the system finds a converting audience. The minimum evaluation period is 7 days.
ROAS is calculated only for paid channels, since the denominator is advertising spend. For evaluating organic traffic, the LTV/CAC metric is used with a conditional cost per install at the CPI level.
Yes, if a campaign generates revenue with zero budget — for example, through viral installs. However, in attribution, ROAS is only calculated with positive spend. Organic installs are not included in the denominator.
Summary
We will develop a mobile application turnkey
IT Sectr creates iOS and Android applications for startups and businesses since 2017. We will advise you and propose the best solution.
Read also