Return on ad spend (ROAS) is the revenue your ads brought in for every rupee spent on them: revenue attributed to ads divided by ad spend. A ROAS of 3 means ₹3 of revenue for each ₹1 spent.
ROAS = Revenue attributed to ads ÷ Ad spend
On the sample data below, six months come to 2.70×.
Why it matters
ROAS is how most ad platforms report performance, so it is the common language for deciding which campaigns get more budget.
Worked example
The table shows the columns this metric needs from six months of a made-up subscription brand. Add each column up over the six months, then put the totals into the formula:
| Month | Marketing spend | Revenue attributed to ads |
|---|---|---|
| 2026-01 | ₹96,000 | ₹2,68,000 |
| 2026-02 | ₹1,02,000 | ₹2,81,000 |
| 2026-03 | ₹1,18,000 | ₹3,05,000 |
| 2026-04 | ₹99,000 | ₹2,87,000 |
| 2026-05 | ₹1,24,000 | ₹3,22,000 |
| 2026-06 | ₹1,31,000 | ₹3,49,000 |
| Total | ₹6,70,000 | ₹18,12,000 |
₹18,12,000 ÷ ₹6,70,000 = 2.70×
Add up first, then divide. Averaging the six monthly figures gives a slightly different answer, because it counts a small month the same as a large one.
Month by month
| Month | Return on ad spend |
|---|---|
| 2026-01 | 2.79× |
| 2026-02 | 2.75× |
| 2026-03 | 2.58× |
| 2026-04 | 2.90× |
| 2026-05 | 2.60× |
| 2026-06 | 2.66× |
ROAS calculator
How to read it
ROAS only means profit if it beats your break-even ROAS, which depends on gross margin. A 2× ROAS loses money on a product with a 40% margin.
Common mistakes
- Attributed revenue depends on the attribution window and model. Platforms count the same order separately, so their ROAS figures add up to more than your revenue.
- ROAS ignores whether the customer would have bought anyway. Brand-search campaigns often show high ROAS for sales they did not cause.
- Use revenue after discounts and refunds, or ROAS flatters campaigns that drive returns.
Calculate return on ad spend in Excel, SQL or Python
The quickest version, for the sample sheet laid out as in the CSV (headers in row 1, months in rows 2 to 7):
=SUM(H2:H7) / SUM(G2:G7)- Return on ad spend in Excel and Google Sheets — per-month formula and zero-safe version
- Return on ad spend in SQL — query by month and for the period
- Return on ad spend in Python (pandas) — pandas script with expected output
Related metrics
See all business metrics, or the statistics methods that sit behind them.
Questions people ask
- What is return on ad spend?
- Return on ad spend (ROAS) is the revenue your ads brought in for every rupee spent on them: revenue attributed to ads divided by ad spend. A ROAS of 3 means ₹3 of revenue for each ₹1 spent.
- How do you calculate return on ad spend?
- ROAS = Revenue attributed to ads ÷ Ad spend. For example, with six months of sample data: ₹18,12,000 ÷ ₹6,70,000 = 2.70×.
- What is the ROAS formula in Excel?
- With the sample data laid out as in the downloadable CSV, =SUM(H2:H7) / SUM(G2:G7) gives the figure for the whole period. For one month, use =H2 / G2 and fill it down.
- What is a good return on ad spend?
- There is no figure that is right for every business: it depends on your products, prices and channels. ROAS only means profit if it beats your break-even ROAS, which depends on gross margin. A 2× ROAS loses money on a product with a 40% margin.
Check how stable it is
A metric moves for ordinary reasons as well as real ones. These methods separate the two: the spread shows what a normal month looks like, the moving average smooths it, the z-score flags a month that is out of line and the trend line shows the direction.
Guides
About the data on this page
The figures come from a small made-up dataset, printed above in full so you can check every number by hand. Download it as monthly.csv. The results are computed from those rows when the page is built, and the Excel formulas, SQL and Python on these pages are run against the same rows before publishing, so the code and the answers agree.
To get these numbers from your own data without writing formulas, try AnalyzeIt: ask in plain words and it shows the working behind every figure.
Legal entity
Devansh Yadav
Moradabad, Uttar Pradesh
Governing law: Courts at Moradabad, Uttar Pradesh
Phone: +91 8433475698
Legal: legal@analyzeit.in