Ecommerce PPC judged on
profit, not ROAS
Blended ROAS is the most trusted number in ecommerce advertising and one of the least useful. It averages your best and worst products into a single figure that can rise while the business makes less money. We report on contribution margin, per product.

What an ecommerce PPC agency should be doing
An ecommerce PPC agency manages paid campaigns across Google Shopping, Performance Max, Meta and retail media for online retailers. The work that matters most is product feed quality, campaign structure that separates products by margin, and measurement tied to contribution profit per SKU rather than blended return on ad spend.
Where ecommerce ad money actually goes
Ecommerce paid media is not one channel. It is several surfaces with different economics, and treating them as one budget is where most waste starts.
Shopping and Performance Max are fed by your product data, not your keyword strategy. Titles, attributes, images and availability decide which queries you appear for, which means a feed problem presents as a bidding problem and gets solved with budget instead of a fix.
Paid social does a different job. It creates demand rather than harvesting it, so judging it on last-click return will always make it look worse than it is — and cutting it usually makes search performance quietly deteriorate a few weeks later.
Retail media is the surface most brands underweight. If you sell on Amazon or through a retailer, that ad spend competes for the same customer and the same margin, and it belongs in the same plan rather than in a separate spreadsheet owned by a different person.
| Surface | What it actually does | How it should be judged |
|---|---|---|
| Google Shopping / PMax | Harvests existing product demand | Contribution margin per product group |
| Google Search (brand) | Defends traffic you would often get free | Incrementality — test pausing it before assuming it works |
| Google Search (non-brand) | Captures category and problem intent | New-customer CAC, not blended ROAS |
| Meta (prospecting) | Creates demand that later converts elsewhere | Assisted revenue and new-customer rate |
| Meta (retargeting) | Compresses an existing decision | Incremental lift, not attributed return |
| Retail media (Amazon, retailers) | Wins placement at the point of purchase | Margin after retailer fees |
The two rows most often misjudged are brand search, which usually looks best and is frequently least incremental, and prospecting, which usually looks worst and is frequently doing the most work.
What we actually do, in order
Feed first, structure second, bidding last. Most accounts we inherit are the other way round, which is why they plateau.
- Weeks 1-2
Margin and feed audit
We load your product-level costs — COGS, shipping, returns rate, payment fees — and rebuild the feed against them. Until the system knows which products make money, no amount of bidding sophistication can send budget to the right ones.
- Weeks 2-3
Feed remediation
Titles rewritten to match how people actually search, missing attributes populated, variant handling corrected, disapprovals cleared. This is unglamorous work and it routinely moves more revenue than any bid change we make afterwards.
- Weeks 3-5
Structure by margin, not category
Products segmented into campaigns by contribution profit rather than by product type. It lets us bid aggressively on what earns and cap what does not, which a single catch-all Performance Max campaign structurally cannot do.
- Weeks 4-8
Measurement you can trust
Server-side tracking, consent-mode handling and offline conversion imports so returns and cancellations flow back. An account optimising toward revenue that later gets refunded is optimising toward a loss with confidence.
- Ongoing
Creative and feed testing
On Meta the creative is the targeting; on Shopping the feed is the targeting. We run both as continuous test programmes rather than periodic refreshes, because both decay predictably rather than suddenly.
- Quarterly
Incrementality testing
Geo holdouts and brand-search pause tests to establish what spend is actually adding versus taking credit for. Uncomfortable to run and the only way to know whether the plan is working.
Shopping journeys that start in an assistant
A growing share of product discovery now begins with someone describing what they want to an AI assistant rather than typing a query into a search box. That surface has no ad slot to buy.
When an assistant recommends products, it draws on the same public signals as organic search: your product pages, retailer listings, review sites and editorial coverage. Paid budget buys nothing here, which makes it the one part of ecommerce demand that cannot be solved with spend.
What does influence it is structured product data that survives extraction, review presence on the platforms assistants read, and clear specification detail on your own product pages. Much of this overlaps with feed quality work, so a well-run paid programme improves AI visibility as a side effect — but only if the feed work is done properly rather than treated as a compliance chore.
We measure it alongside the paid account rather than as a separate service, using a fixed prompt set run monthly across five engines. For retailers the useful prompts are constraint-shaped: budget, use case, and comparison against a named competitor.
The prompt set we measure against
- What is the best [product category] under [budget]?
- What are good alternatives to [competitor product]?
- Which [category] brands are worth buying for [specific use case]?
- Is [your brand] good quality?
- What should I look for when buying [product category]?
Two products, same ROAS, opposite outcomes
This is the argument for the whole page, in arithmetic you can check. Both products return 4.0 on ad spend. One funds the business; one quietly drains it.
| Product A | Product B | |
|---|---|---|
| Revenue from ads | 10,000 | 10,000 |
| Ad spend | 2,500 | 2,500 |
| Blended ROAS | 4.0 | 4.0 |
| Cost of goods | 3,000 | 6,500 |
| Shipping and fulfilment | 800 | 1,400 |
| Returns (rate applied) | 400 (4%) | 1,800 (18%) |
| Payment and platform fees | 300 | 300 |
| Contribution after ad spend | +3,000 | −2,500 |
Illustrative figures chosen to make the mechanism visible, not client data. The pattern — a high-return, high-return-rate product masked by blended reporting — is one of the most common findings in the audits we run, particularly in apparel where return rates above 20% are normal.
What actually happens, month by month
Paid media moves faster than organic, so the honest version of this table is shorter — but the first month is still mostly invisible, and any agency promising week-one gains is planning to cut brand search and call it a win.
| When | Focus | What you can see |
|---|---|---|
| Weeks 1-2 | Margin data load, feed and account audit | Nothing in the account yet. You get product-level profitability, often for the first time.Quiet month |
| Weeks 3-4 | Feed remediation, tracking rebuild | Disapprovals cleared, more products eligible. Early impression-share gains. |
| Weeks 5-8 | Restructure by margin, learning phases reset | Performance often dips briefly while campaigns re-learn. This is expected and we flag it before it happens.Quiet month |
| Months 3-4 | Scaling what earns, capping what does not | Contribution margin improves even where blended ROAS looks flat or slightly down. |
| Months 4-6 | Creative testing cadence, prospecting expansion | New-customer acquisition cost stabilises. Paid social contribution becomes measurable. |
| Months 6+ | Incrementality testing, retail media integration | You can answer which spend is genuinely additive — the question most accounts never test. |
The weeks 5-8 dip is the part other agencies do not mention. Restructuring an account resets learning phases, and performance usually gets worse before it gets better. We would rather tell you that in the proposal than explain it in month two.
How engagements are shaped
We do not publish rate cards. We work across six countries where the same number reads as expensive in one market and cheap in another, so a single figure would mislead more people than it helped. What we can be specific about is how the work is structured and what actually moves scope.
Audit
You suspect the account is plateauing and want to know why before committing.
- Product-level contribution margin analysis
- Feed quality and disapproval audit
- Account structure and wasted-spend review
- Tracking and attribution health check
- No retainer commitment to act on it
Managed programme
One brand, one or two markets, a catalogue you can describe in a sitting.
- Everything in the audit, refreshed quarterly
- Google and Meta campaign management
- Ongoing feed optimisation
- Creative testing programme
- Contribution-margin reporting, per product group
Embedded
Multiple markets or brands, retail media in the mix, or paid is your primary channel.
- Everything in the managed programme
- Retail media and marketplace management
- Multi-market budget allocation
- Quarterly incrementality testing
- Finance-grade reporting for board review
What pushes scope up
- Large or fast-changing catalogues where feed work is continuous rather than one-off
- Multiple markets, currencies or languages, each needing its own feed and structure
- Retail media alongside Google and Meta, which is a separate discipline
- No reliable COGS data, so margin modelling has to be built before anything else
What brings it down
- A single market and a stable catalogue
- Clean product cost data already available from your ERP or platform
- An in-house designer who can produce creative to our test briefs
- One ad account rather than several inherited and overlapping ones
The audit is the honest way to get a number. It produces a scoped plan, and the plan is what a quote is built from — rather than a figure quoted before anyone has looked at your catalogue.
When you should not hire us
Four situations where we will say no, or point you somewhere else. Saying this costs us enquiries and saves everyone a bad engagement.
You cannot supply product costs
Everything on this page depends on knowing COGS, shipping and return rates per product. If that data does not exist and cannot be built, we are just another agency optimising to ROAS — and you can buy that cheaper elsewhere.
Spend below meaningful thresholds
Below a certain monthly spend the account cannot generate enough conversion data to test anything, and our fee becomes a large share of the budget. At that stage a competent freelancer or in-house owner will serve you better and we will say so.
You need this quarter rescued
Restructuring an account makes performance worse before it improves — see the month-by-month above. If you need a number hit in six weeks, the honest answer is to leave the structure alone and we are the wrong call right now.
Margin is structurally too thin
Some catalogues cannot support paid acquisition at any efficiency, because the contribution left after COGS, shipping and returns is smaller than the cost of buying a customer. That is a pricing or product problem, and no amount of PPC skill fixes it.
What we can and cannot show you
The agencies competing for this search term advertise results like "+215% YoY" and "2x ROAS" with no named client, no time period and no baseline. Those figures are unverifiable by construction, and ecommerce operators — who look at numbers all day — discount them accordingly. We are not going to add ours to the pile. Named, client-approved case studies are in production and will be published here with the brand attached, the period stated and the methodology described. Until then the audit is the honest proof: we analyse your actual catalogue and show you the contribution-margin picture, whether or not you go on to work with us. If the analysis is not better than what you have now, you will know within three weeks.
A ROAS figure without a margin figure is not a result. It is a ratio between two numbers you chose to measure.
Oneskai measurement standard
SaaS SEO, answered
Why do you report contribution margin instead of ROAS?
Because two products with identical ROAS can have opposite effects on profit once cost of goods, shipping and returns are counted. The worked example above shows the arithmetic. ROAS is useful as a within-campaign efficiency signal, but as a target it sends budget toward whatever generates revenue, not whatever generates money.
How much of ecommerce PPC is really about the product feed?
More than most accounts assume. Shopping and Performance Max match on your product data rather than a keyword list, so titles, attributes, images and availability determine which searches you appear for. A feed problem looks exactly like a bidding problem in the interface, which is why it usually gets solved with budget instead of a fix.
Should we be running brand search campaigns?
Test it rather than assume it. Brand search almost always shows the best return in the account because it captures people already looking for you, many of whom would have arrived anyway. A structured pause test on a subset of traffic tells you what it is genuinely adding. Sometimes the answer is a lot; sometimes it is very little.
Performance Max hides everything. How do you work with it?
By controlling the inputs, since the levers inside are limited. That means splitting products into separate asset groups and campaigns by margin, feeding it accurate conversion values rather than raw revenue, and excluding brand traffic so it cannot claim credit for demand you already had. Structure is the control surface.
How do you handle returns in the numbers?
We import them back as negative conversions where the platform allows it, so the bidding system learns from net revenue rather than gross. In categories with high return rates — apparel especially, where above 20% is normal — an account optimising to gross revenue will systematically overspend on the products most likely to come back.
Do you manage Amazon and retail media too?
Yes, in the embedded engagement. We treat it as one budget rather than a separate channel, because the same customer and the same margin are in play. Retail media is often the surface where incremental profit is easiest to find, precisely because it tends to be managed separately and judged loosely.
Will our performance drop when you restructure?
Usually, briefly. Rebuilding campaigns resets learning phases, and the typical pattern is a dip across weeks five to eight followed by recovery above the previous baseline. We flag it in the proposal rather than in month two, and if you cannot absorb that dip right now we will recommend waiting.
Can paid budget improve our visibility in AI shopping answers?
No. Assistants build recommendations from public signals — product pages, retailer listings, reviews and editorial coverage — none of which you can buy. Good feed and product-data work improves both paid performance and AI visibility at once, but the AI side is earned rather than bought, and we report it separately.
Sources & references
- Google Merchant Center product data specification — feed attribute requirements referenced above.
- Google Ads help documentation on Performance Max campaign structure and asset groups.
- Google Ads documentation on conversion value adjustments, used for the returns handling described.
- Semrush US database, September 2026 — the $96.66 cost-per-click figure cited in the hero.
- Meta business documentation on attribution windows and incrementality testing methodology.
- Oneskai GEO testing methodology — the fixed prompt-set protocol behind the AI visibility measurement.
Find out which products are actually paying
The audit loads your product costs, rebuilds the contribution-margin picture per product group, and shows you where the budget is currently going versus where the profit is. Most retailers have never seen these two views side by side.