ROI (return on investment, a «return-on-investment ratio») is a metric that helps you tell whether an investment turned a profit and was worthwhile. Yandex Advertising’s training materials calculate it like this: subtract the cost from the revenue, divide the result by the cost, and multiply by one hundred to get a percentage. If ROI is above zero, the investment paid off with a profit; if below, it didn’t pay off.
Below: what to plug into the formula, a sample calculation, why the same ad’s ROI comes out different for different people, and how to use the metric without a «benchmark.»
What ROI is in plain terms
ROI answers one question: how much money came back above what was invested. In Russian it’s called «return on investment,» «the return-on-investment ratio,» or a «payback metric.» Investment here isn’t just buying stock or a stake in a business. It’s any money spent to generate income: an ad campaign’s budget, launching a new line of business, buying equipment.
The result is read relative to zero:
- below zero — a loss: the investment didn’t come back;
- zero — the investment broke even, but there’s no profit;
- above zero — the investment came back, and a profit was made on top of it.
For example, an ROI of fifty percent means every ruble invested came back plus another half a ruble on top. That’s the arithmetic of the formula, not a verdict: whether a campaign with that ROI is good depends on your own economics.
The ROI formula
ROI = (Revenue − Cost) ÷ Cost, multiplied by one hundred percent
That’s how the formula is set up in Yandex Advertising’s material: the difference between revenue and cost, divided by the cost and converted to a percentage.
- Revenue — the money the investment brought in. In that material’s example, revenue is the amount of sales generated by the ad campaign.
- Cost — the investment itself: everything you had to spend to get that revenue.
- Multiplying by one hundred converts the result into a percentage. Without the multiplication, you get a ratio: «a half» and «fifty percent» mean the same thing.
The source doesn’t specify exactly what to count as revenue. In practice, both options show up: Yandex Direct’s material on marketing payback states outright that people calculate it differently — some take gross revenue, others take profit. That choice changes the result significantly, and the example below shows it.
For investment in advertising and marketing specifically, a separate metric is used — ROMI.
How to calculate ROI: an example
A hypothetical example: the ratios are made up for clarity, not a norm or a benchmark. Instead of actual amounts, we use a unit, I, equal to the total investment.
- Add up the investment. Over the quarter, the company spent amount I on advertising. That included the campaign budget, the contractor’s fee, and production of materials.
- Calculate revenue by the chosen definition. Sales that could be tied to this advertising brought in revenue three times the investment — three I. The cost of goods and other variable costs for those sales came to one and a half I. Margin profit — revenue minus variable costs — is also one and a half I.
- Plug it into the formula. By revenue: subtract one I from three I, leaving two I; divide by I, and you get two, or two hundred percent. By margin profit: subtract I from one and a half I, leaving half an I; divide by I, and you get a half, or fifty percent.
- Interpret the result. Both values are above zero, but they say different things. The first shows how far turnover exceeded the investment. The second shows how much the business earned on top of it. If variable costs had exceeded two I, the profit-based ROI would have gone negative, while the revenue-based one would have stayed the same.
So when you see someone else’s ROI, or compare your own to last year’s, first check what counted as revenue and which costs were included.
ROI in marketing and advertising: what counts as revenue and cost
In marketing, ROI is usually calculated for a campaign, a channel, or all advertising over a period. The formula is the same; the difficulty is in the data.
A ready-made version of the metric also exists in Yandex’s tools. In the Yandex Metrica «Sources, expenses and ROI» report, the «ROI by revenue» figure is calculated the same way: total revenue minus cost, divided by cost and multiplied by one hundred. In Yandex Direct, ROI is calculated from goal revenue; revenue data comes from Metrica, mobile trackers, or offline conversions. Report and metric names change from time to time, so check the help documentation before setting it up.
Which costs to include
If you count only the platform budget, ROI comes out higher than it really is. To see the full picture, include every investment in advertising:
- the ad platforms’ budget;
- the work of specialists or a contractor;
- tools and services needed for the advertising;
- production of materials: copy, design, video.
Yandex Direct also counts a designer’s and copywriter’s fees and an agency’s commission as marketing costs. Costs flow into the Metrica report from the ad platforms or get uploaded as a file. If you don’t add the contractor’s fee and production costs there, the ROI in the report will come out higher than it would with the full investment.
What to use as revenue
There are two main options.
- Gross revenue — all the money from sales tied to the advertising. It’s easier to get, but it doesn’t show whether the business actually earned anything: gross revenue still contains cost of goods, delivery, and other expenses.
- Margin profit — revenue minus variable costs: cost of goods, packaging, delivery, commissions. This option is closer to actual earnings, but it needs cost-of-goods data.
Take sales data from your accounting system or CRM, and the sale’s source from analytics. Revenue is passed to Metrica through e-commerce tracking or goals. Pick one option, write down what counts as revenue and cost, and don’t change it while you’re comparing campaigns and periods.
Attribution and the time period
A person rarely buys after a single click. They might see an ad, come back through search, and buy a week later over the phone. Which channel gets credit for the sale is decided by the attribution model — a rule for distributing visits and conversions across sources. Metrica has several models, for example «Last click» and «Automatic attribution,» and visits get distributed across sources differently depending on the model. That means a channel’s revenue, and its ROI with it, depends on the model chosen. Yandex Direct’s material also notes that it’s sometimes hard to tell which sales were actually driven by marketing.
To keep sales from getting lost, the source needs to be captured from the very first visit. Here’s how to tag links so you can see the source of a sale. It’s also useful to see the intermediate steps: how many visits became inquiries, and how many inquiries became sales. That’s covered in the article on how to calculate the share of visitors who complete a target action.
The time period also changes the result. If a deal takes a long time to close, ROI will look worse over a short period: the money’s already spent, but the sales are still ahead. The same goes for repeat purchases. Two related metrics help here:
- LTV — customer lifetime value: how much money a customer brings in from their first purchase to their last;
- CAC — the amount a company spent on promotion to acquire one customer.
CAC shows how much a customer cost, LTV shows how much they brought in over their lifetime, and ROI shows whether the investment paid off over the chosen period. Looking at them together is more useful than looking at each one alone.
The time period matters especially for long-horizon channels. In SEO, the spending happens now, and visitors arrive later. For more, see a separate breakdown on how to compare SEO results before and after changes.
ROI in sales and investment projects
The same logic works for a sales line, a new product, or a project: opening a location, buying equipment, rolling out a system. Yandex Direct calls ROI a metric for the payback of an entire project. The difference from advertising is in what counts as cost. For a business overall, Yandex Advertising recommends counting not just the product’s cost, but also rent, packaging, delivery, and staff pay.
ROI doesn’t replace the payback period. The payback period shows how long it takes for revenue to cover the investment. ROI shows how much came back above the investment over the chosen period. A project can take a long time to pay back and still deliver a high ROI over several years, so for project decisions it’s useful to look at both metrics.
What counts as a good ROI
There’s no universal ROI figure to aim for — Yandex Advertising says so too. An acceptable ROI is set by your own business’s economics, not someone else’s numbers.
What it depends on:
- margin — how much is left from one sale after variable costs;
- business model — one-time purchases or a subscription, a product or a service;
- deal cycle — how much time passes from first contact to payment;
- repeat purchases — whether customers come back;
- calculation period — a month, a quarter, or a year;
- channel’s stage — ROI is usually lower during testing than once the channel is already set up.
How to compare:
- against your own past periods, if the calculation method hasn’t changed;
- between campaigns and channels, if revenue and cost were calculated the same way;
- against a target value you calculated from your own economics: margin, an acceptable customer cost, profit targets.
Mistakes in calculating ROI
- Not counting all costs. The most common case: counting only the platform budget, without specialists’ fees and production.
- Not counting all the profit. For example, failing to tie phone sales or repeat orders back to the advertising.
- Choosing the wrong period. For example, taking costs for one period and revenue for another.
- Plugging in gross revenue without saying so. ROI by revenue and ROI by profit are different numbers; they can’t be compared with each other.
- Comparing channels calculated with different methods. One ROI includes the contractor’s fee, another doesn’t, and the comparison loses its meaning.
- Losing the sale’s source. If sales aren’t tied to a channel, some channels’ ROI gets understated and others’ gets overstated.
- Looking only at the percentage. A high ROI on a small budget can bring in less money than a moderate ROI on a large one.
How to use ROI for decisions
ROI is useful when it helps you decide where to put the next ruble.
- Reallocating budget. Compare campaigns and channels calculated the same way, and move money toward whichever delivers a higher return, accounting for sales volume.
- Intermediate metrics. ROI is calculated from sales, and sales take time to arrive. While sales data is still thin, watch advertising metrics: cost per lead (CPL), cost per target action, conversion rate. They’ll show you faster where a campaign is losing money.
- The metric’s limits. ROI only counts money and misses anything that doesn’t translate directly into it — for example, brand awareness or inquiries that will close later.
For search advertising, these metrics are linked directly: from the query to the inquiry. For more on which metrics are tracked in search advertising, see a separate article. We’ve also covered how inquiry measurement works in Direct advertising on our service page.
Frequently asked questions
Is ROI measured in percent or in rubles?
In percent: Yandex Advertising’s material states outright that ROI is always calculated in percent. If you skip the multiplication by one hundred, you get a ratio — the same value written differently. Revenue and cost, the figures you plug into the formula, are measured in rubles.
Can ROI be calculated if sales don’t happen on the site?
Yes, but you need sales data from accounting or a CRM, plus information on where the customer came from. In Direct, revenue can also be counted from offline conversions — events that happened outside the site. Without tying the sale back to its source, a channel’s ROI will be understated.
What period should ROI be calculated over?
Take revenue and costs over the same period. Pick the length based on the deal cycle: if customers take a long time to decide, or buy repeatedly, a short period will understate the result. In that case, calculate over a longer span, or track unclosed deals separately.
Why does a contractor’s ROI differ from accounting’s?
Usually they calculate it differently: one uses gross revenue, the other profit; one counts only the ad budget, the other all costs; they use different periods and attribution models. Before arguing over the number, agree on the method — see the «Mistakes in calculating ROI» section for details.
Sources
Documentation this article relies on (checked October 10, 2026):
- Yandex for Business: What ROI (Return on Investment) is: the formula it’s calculated by and how it’s used in advertising and sales (in Russian); LTV: what this metric is and how to correctly calculate customer lifetime value (in Russian); CAC (Customer Acquisition Cost) in marketing: what it is and the formula for calculating customer acquisition cost (in Russian).
- Yandex Direct. Materials: What ROMI in marketing is and how to correctly calculate it (in Russian).
- Yandex Metrica help: Report «Sources, expenses and ROI» (in Russian); Attribution models (in Russian).
- Yandex Direct help: Revenue and conversion value (in Russian).
To calculate the return on advertising, you need data on inquiries. In Yandex Direct, we set up goals in Yandex Metrica before launch, run campaigns based on inquiry data and cost, and show in reports what we changed. We don’t guarantee payback, the number of inquiries, or their cost — those depend on demand, the auction, the site, and the offer itself. → Discuss your advertising task