Sponsored Product Ads, Sponsored Display Ads and Deals cost money before an item has sold. For them, OTTO shows you clicks, spend and a ROAS. Whether anything is left from a sale after advertising is something none of these figures shows. Your OTTO reporting lacks your purchase price, your own shipping costs and the cost of your returns.
This guide shows where the costs of the three ad formats come from, what separates attributed from total advertising costs, and how to set ROAS, ACOS and TACOS against the contribution margin in a worked example. It ends with a decision: hold the bid, lower it or pause the campaign.
Platform overview: OTTO Partner Connect, features and reporting gaps.
At a glance
SPA: billed per click, minimum CPC currently EUR 0.20 according to OTTO; costs, clicks and attributed revenue per day, campaign and item via the reporting interface
SDA: billed per 1,000 impressions in a real-time auction, on otto.de and beyond; no reporting interface in OTTO's API documentation
Deals: billed per product reference as soon as the deal is displayed
Decision: break-even ROAS = selling price ÷ contribution margin before advertising
As of: 17 September 2026, checked against OTTO Advertising and the OTTO Market API documentation
Which OTTO ad formats generate costs
Besides product ads, OTTO Advertising also sells newsletters, digital out-of-home, connected TV and parcel inserts. For the per-item calculation, what matters most are the three ad formats you book as a marketplace seller in the partner portal. They differ in their billing model and in where the costs for your analysis come from:
| Feature | Sponsored Product Ads | Sponsored Display Ads | Deals |
|---|---|---|---|
| Billing | per click (CPC), minimum CPC EUR 0.20 | per 1,000 impressions (CPM), real-time auction | per product reference once displayed; there are free and paid deals |
| Budget | total budget, budget interval and distribution per campaign | daily budget set at booking, adjustable at any time | period, products and discount level per deal |
| Placement | search results, product lists and product detail pages on otto.de and in the app | on OTTO and offsite in OTTO's publisher network | product and search result lists, navigation, promotional shops |
| Cost source | reporting interface per day, campaign and item; SPA report in OTTO Partner Connect | campaign reporting from OTTO Advertising | live reporting in OTTO Partner Connect |
| In profitkonsole | imported automatically every day | enter budgets manually | add via CSV |
Sponsored Product Ads (SPA)
Sponsored Product Ads promote individual items you sell on OTTO. OTTO generates the ad automatically from your product data. For each campaign you set the duration and budget, and for the promoted items a bid per click; the higher your bid ranks against the competition, the more likely the ad is shown. OTTO currently names 20 cents as the minimum bid; the actual click price depends on the competition in the category.
| Placement according to OTTO | Basis | Max. slots |
|---|---|---|
| Product lists (positions 1, 2, 8, 16 … 72) | products matching the context of the page | 11 |
| Search result pages (positions 1, 2, 8, 16 … 72) | context of the search or booked keywords | 11 |
| Product detail pages | products matching the item being viewed | 30 |
With automatic targeting, OTTO shows your ads based on context on all three page types; you exclude unsuitable search terms with negative keywords. With keyword targeting you choose the search terms yourself, and the ads then appear on search result pages. OTTO recommends combining both campaign types.
According to the API documentation, the budget applies per day, week, month or for the entire duration and is spent as quickly as possible or evenly. You can reactivate a paused campaign; items and keywords are retained. Once the end date has passed or the campaign has been cancelled, it can no longer be reactivated; you then create a new one.
Sponsored Display Ads (SDA)
Sponsored Display Ads are banner formats that OTTO displays on otto.de and beyond, in a network of, according to OTTO, more than 1,500 web and app properties. Billing is per 1,000 impressions in a real-time auction; the highest bid sets the price. You set the budget as a daily budget. In self service you book SDA in the partner portal, with your own targeting, product-dynamic templates and a retargeting solution for customers who did not buy. Targeting by campaign goal based on user, product and context data is set up by OTTO Advertising as a managed service.
For your calculation this means: SDA costs are not tied to an item by themselves. OTTO's API documentation does not describe a reporting interface for SDA like the one for SPA. You take the costs from the campaign reporting and decide yourself which items, product groups or brands to allocate them to.
Deals
With the Deal of the Week and the Deal of the Month, OTTO highlights discounted items. OTTO bills paid deals per product reference, and only once the deal has actually been displayed; the variants beneath it are included in the price. A paid deal therefore costs you twice: the deal fee as advertising costs, and the discount, which lowers your selling price and with it the contribution margin of every sale during the promotion period.
Contribution margin per item
Analyse OTTO sales, commissions and returns. Add your purchase prices and your own shipping costs to see the contribution margin.
Attributed and total advertising costs
Advertising metrics are easy to confuse because two questions are on the table at the same time: which costs belong to which item? And which revenue belongs to the ad?
Costs: per item or for the whole period
- Attributed advertising costs are tied to an item. For SPA, OTTO delivers them per promoted item, for Deals per product reference. They belong in the contribution margin of that item.
- Total advertising costs are everything you spend on advertising in the period, so additionally SDA budgets or brand campaigns that you cannot or do not want to allocate to an item. The part without an item reference you deduct one level higher, in the channel's result for the period, just like the pro rata OTTO base fee.
If you only look at the attributed costs, you see items that perform well and overlook the budgets above them. If you only look at the total, you do not know which item carries the advertising.
Revenue: attributed to the ad or total
OTTO itself determines the revenue via ads. The API documentation describes three levels for this:
| Level | What OTTO attributes to the ad |
|---|---|
| Product level | purchases of the promoted item after a click on its ad |
| Campaign level | purchases of all items in the same campaign after the click, including items other than the one clicked |
| Brand level | all purchases of your items of the same brand after the click, including items that were not promoted |
According to the documentation, the product and brand levels can be retrieved. OTTO calculates the ROAS of the reporting interface with the revenue at product level; the revenue at brand level is shown additionally in the item report. The wider the level, the higher the attributed revenue and with it the ROAS, without anything having changed in the campaign. So always check which revenue sits next to your advertising costs.
Total revenue, by contrast, comes from your own sales data: all orders of an item or of the channel, with or without an ad click. ROAS and ACOS use the attributed revenue, TACOS the total.
In our daily retrieval we also see that a day's costs are final after a few days, while the attributed revenue keeps coming in for several weeks. A ROAS for the last two to three weeks is therefore a preliminary value. Better to decide on bids using weeks that are further back.
Worked example: one item, one month, one SPA campaign
All figures in this example are made up; put in your own values. The item is the same as in the glossary entry Calculating the contribution margin, where the calculation is set out line by line. The EUR 150.00 of advertising from the glossary we leave out; the advertising we calculate afresh here:
- Selling price EUR 59.50 gross, i.e. EUR 50.00 net; shipping free for the customer
- Purchase price EUR 20.00, commission 15% of the gross price (an assumption; the guide to OTTO marketplace fees shows your rate), own shipping EUR 4.50
- 100 orders in the month, 20 of them returns; the amount paid and the commission are refunded, return shipping EUR 5.00 and loss in value EUR 2.00 per return
| Starting point | Amount |
|---|---|
| Revenue of all orders (100 × EUR 59.50, gross) | EUR 5,950.00 |
| Contribution margin of one sale without return, before advertising | EUR 16.57 |
| Contribution margin of the month after returns, before advertising | EUR 1,096.00 |
| Contribution margin per order, before advertising (EUR 1,096.00 ÷ 100) | EUR 10.96 |
Add to that two campaigns in the same month (also assumptions):
- SPA for this item: 1,000 clicks at EUR 0.35 each = EUR 350.00 advertising costs. OTTO attributes 35 orders of the item to the ad, i.e. 35 × EUR 59.50 = EUR 2,082.50 at product level. At brand level a further EUR 700.00 with other items of the brand comes on top, EUR 2,782.50 in total.
- SDA for the brand: EUR 200.00, not allocated to any item.
We calculate the attributed revenue gross here, like the selling price. If your source reports it net, use the net selling price as well; what matters is that both sides share the same basis.
The metrics
| Metric | Calculation | Result |
|---|---|---|
| ROAS, product level | EUR 2,082.50 ÷ EUR 350.00 | 5.95 |
| ACOS, product level | EUR 350.00 ÷ EUR 2,082.50 × 100 | 16.8% |
| ROAS, brand level | EUR 2,782.50 ÷ EUR 350.00 | 7.95 |
| TACOS with the item's SPA costs | EUR 350.00 ÷ EUR 5,950.00 × 100 | 5.9% |
| TACOS with all advertising costs, simplified to this item's revenue only | (EUR 350.00 + EUR 200.00) ÷ EUR 5,950.00 × 100 | 9.2% |
So the same campaign has a ROAS of 5.95 or 7.95, depending on which revenue sits next to the costs. And advertising's share of revenue is 5.9% or 9.2%, depending on whether you count only the attributed or all advertising costs. Whether the campaign pays off, none of these figures tells you yet.
How much advertising can the item bear?
For that you need the break-even ROAS: the value at which the advertising costs use up exactly the contribution margin of the attributed sales.
Break-even ROAS = selling price ÷ contribution margin before advertising
Break-even ACOS = contribution margin before advertising ÷ selling price × 100
Selling price on the same basis as the attributed revenue, gross here.
- Without returns: EUR 59.50 ÷ EUR 16.57 = 3.59. That corresponds to a break-even ACOS of 27.8%.
- With 20% returns: EUR 59.50 ÷ EUR 10.96 = 5.43, i.e. a break-even ACOS of 18.4%.
The 5.43 applies if the attributed revenue also contains orders that later come back. Whether OTTO removes returns from this revenue again is not described in the API documentation. So calculate with 5.43, the more cautious threshold.
The decision
At product level the campaign reaches a ROAS of 5.95 and thus sits just above 5.43. It pays for itself, but with little headroom: the 35 attributed orders bring 35 × EUR 10.96 = EUR 383.60 of contribution margin before advertising. After EUR 350.00 of advertising costs, EUR 33.60 is left.
From this follows the highest click price the item can bear: 35 orders from 1,000 clicks is a conversion rate of 3.5%, and 3.5% × EUR 10.96 = EUR 0.38 per click. If the click price rises to EUR 0.45 with the same clicks and orders, the campaign costs EUR 450.00. The ROAS drops to 4.63, and with returns the campaign costs you contribution margin: EUR 383.60 − EUR 450.00 = −EUR 66.40.
The brand-level ROAS of 7.95 looks more comfortable. But it is only useful for this item's bid if you also know the contribution margin of the other brand items behind the EUR 700.00. You must not compare it with the contribution margin of this one item: at EUR 0.45 per click, the brand level would still show a ROAS of EUR 2,782.50 ÷ EUR 450.00 = 6.18, above the threshold of 5.43, even though with returns the campaign costs EUR 66.40 of contribution margin.
| If the product-level ROAS … | that means | obvious next step |
|---|---|---|
| is above the break-even with returns (above 5.43 in the example) | The attributed sales carry the advertising. | Hold the budget, test higher bids only step by step |
| lies between the two thresholds (3.59 to 5.43) | The campaign only pays for itself if few items come back. | Check the item's return rate, lower the bid |
| is below the break-even without returns (below 3.59) | Every attributed sale costs contribution margin. | Lower the bid, review keywords or pause, unless you accept this deliberately, for instance when launching an item |
How to steer campaign type, bids per keyword and search terms after that is shown in the guide optimising OTTO advertising.
The calculation has two limits. First, some of the 35 orders would have happened without the ad; what the campaign really adds is usually less than the attributed revenue. Total revenue and TACOS over time show you this: if total revenue barely drops when you lower the budget, TACOS falls, and some of the sales were there anyway. Second, the costs that are not tied to any item are still missing.
The month with all advertising costs
| Month in the example, simplified to this item only | Amount |
|---|---|
| Contribution margin after returns, before advertising | EUR 1,096.00 |
| − SPA costs, attributed to the item | − EUR 350.00 |
| − SDA costs, not allocated to any item | − EUR 200.00 |
| − OTTO base fee for the full month | − EUR 99.90 |
| Contribution margin of the month after advertising and base fee | EUR 446.10 |
Per item you calculate only with the attributed advertising costs and without the base fee. For the month, the remaining advertising costs and the base fee are added; if you are not evaluating a full month, the base fee counts pro rata by days. In your real month, the contribution margins of your other OTTO items are added, including those of the brand items behind the EUR 700.00; SDA costs and base fee are then carried by the whole range. This result is still not your company profit either: warehousing, staff, software and taxes come after it.
Advertising costs in profitkonsole
profitkonsole places the advertising costs next to the other costs of your OTTO items:
- SPA: profitkonsole imports costs, clicks and ad revenue automatically every day via the OTTO Marketing API and allocates the costs to the promoted items.
- Deals: are detected from your orders; you enter the amount per deal.
- SDA: you enter budgets manually per month and allocate them to items, product groups or brands. Whatever you do not allocate runs into the result as a general item.
ACOS and ROAS are shown there with the revenue OTTO attributes to the ads at brand level, i.e. including later purchases of other items of the same brand. TACOS uses your own total revenue. So you do not compare the break-even ROAS of an individual item with this ROAS; instead you check the contribution margin per item after purchase price, commission, shipping, returns and advertising. The period result additionally shows the advertising costs not tied to any item, as well as the pro rata base fee. You enter purchase prices and your own shipping costs yourself.
Conclusion
For Sponsored Product Ads, OTTO gives you costs, clicks and the attributed revenue per day and item; for Deals, live reporting; and for Sponsored Display Ads, campaign reporting. What is missing is the link to your own costs. So you do not decide whether a campaign pays off on ROAS alone:
- Know the contribution margin per order before advertising, after returns
- Derive the break-even ROAS from it and compare it with the ROAS at the same revenue level
- Watch TACOS with all advertising costs over time, so that budgets without an item reference do not disappear
Coming from Amazon and looking for the right tool for OTTO? Sellerboard for OTTO: the alternative compared.
Try free for 14 days
SPA costs daily from OTTO, Deals and SDA added: this is how you analyse ACOS, ROAS and TACOS and see the contribution margin per item.
Frequently asked questions
What is a good ROAS on OTTO?
One that is above your break-even ROAS. There is no general benchmark, because commission, purchase price, shipping and returns differ from item to item. In this guide's example the threshold is 3.59 without and 5.43 with 20% returns.
How do I calculate the break-even ROAS?
Selling price divided by the contribution margin before advertising, both on the same basis as the attributed revenue. At EUR 59.50 gross and EUR 16.57 contribution margin, that is 3.59. More on this in the glossary entry on ROAS.
Can I see OTTO advertising costs per item?
For Sponsored Product Ads, yes: OTTO's reporting interface shows costs, clicks and attributed revenue per campaign and promoted item, for at most the last 90 days excluding the current day. OTTO bills Deals per product reference. For Sponsored Display Ads the API documentation describes no comparable interface; you allocate these costs yourself.
Why does the ROAS of past days still change?
Because OTTO also attributes purchases to an ad that only take place some time after the click. In our retrieval we see that a day's costs are final after a few days, but the attributed revenue keeps rising for several weeks. So evaluate campaigns using weeks that are at least two to three weeks back.
What does OTTO count as revenue via ads?
That depends on the level: at product level only purchases of the promoted item, at campaign level also other items in the campaign, at brand level all your items of the same brand. OTTO calculates the ROAS of the reporting interface at product level. ACOS and ROAS in profitkonsole are at brand level; for the break-even of an individual item you need the product level.
SPA or SDA: where do I start?
For selling individual items, usually with SPA: you pay per click, the ads appear in search and product lists, and the costs come back per item. SDA also reaches customers outside otto.de and suits reach and re-engagement; its effect on individual items is harder to measure.
Show sources & notes
As of: 17 September 2026. The information on billing, placements, budget and reporting was checked on that day against the OTTO Advertising pages linked below and the OTTO Market API documentation. The lag in attributed revenue is based on our own observation during retrieval. All amounts in the worked example are assumptions.
Official sources: Sponsored Product Ads, Sponsored Display Ads, Deals, API: Sponsored Product Ads, API: Sponsored Product Ads Reporting
Further reading: OTTO marketplace fees 2026, OTTO Partner Connect KPIs, Calculating the contribution margin

