Platform Features About Learn FAQs Login Create an Account →
COGS & Cost Management

Profit-Based Bidding for Google Shopping

ROAS tells you how much revenue your ads generate — it says nothing about profit. Profit-based bidding uses real margin data to set the right target for every product, so every sale contributes to your bottom line.

9 min read Updated: April 2026 Bidding Strategy Featured
Share

What Is Profit-Based Bidding?

Profit-based bidding is a Google Shopping strategy where your ROAS targets are derived from each product's actual gross margin — not set arbitrarily or averaged across a campaign. The core idea is simple: before you decide how much you're willing to spend acquiring a sale, you need to know how much profit that sale generates.

Most Google Shopping advertisers set a single ROAS target for an entire campaign. That target might be 4× or 5×, often chosen because it "feels right" or because the account has historically hit that number. The problem is that a campaign containing products with margins ranging from 12% to 55% cannot possibly have one correct ROAS target.

The Core Principle

Every product has a break-even ROAS — the point at which ad spend exactly consumes the gross margin. Your target ROAS must be set above break-even, and it must be set individually for each product with a different margin.

Profit-based bidding replaces guesswork with maths. It pulls in your real cost data — purchase price, fulfillment, payment processing fees, return rates — and calculates the maximum you can profitably spend per sale, for every SKU.

ROAS vs Profit: Why the Difference Matters

ROAS (Return on Ad Spend) = Revenue ÷ Ad Spend. A 5× ROAS means for every £1 spent on ads, you generate £5 in revenue. That sounds healthy — but consider two products both hitting 5× ROAS:

ProductSale PriceGross MarginAd Spend (5× ROAS)Gross ProfitNet After Ads
Product A£10050% (£50)£20£50£30 profit
Product B£10018% (£18)£20£18-£2 loss

Both products hit your target ROAS. Product B is losing money on every sale. This is the ROAS illusion: identical performance metrics masking completely different profitability outcomes.

The Hidden Danger of Averaged ROAS

When you mix high-margin and low-margin products in one campaign with one ROAS target, profitable products subsidise unprofitable ones. Your aggregate ROAS looks fine while your bank account tells a different story.

Profit-based bidding solves this by anchoring every bid decision to margin data. Revenue is a signal — profit is the goal.

Calculating Target ROAS from Your Margin

The starting point is break-even ROAS:

Break-Even ROAS Formula

Break-Even ROAS = 1 ÷ Gross Margin

At break-even ROAS, 100% of your gross margin is consumed by ad spend. You need zero operating costs for this to work — which means break-even ROAS is never your actual target.

Your target ROAS needs to be set above break-even to leave room for:

  • Operating overhead (rent, payroll, software)
  • Your desired net profit margin
  • A buffer for tracking inaccuracy (iOS14/GDPR consent gaps)

A practical formula:

Target ROAS Formula

Target ROAS = 1 ÷ (Gross Margin − Target Net Profit − Overhead %)

Example: 40% gross margin, 10% target net profit, 15% overhead
Target ROAS = 1 ÷ (0.40 − 0.10 − 0.15) = 1 ÷ 0.15 = 6.67×

Gross MarginBreak-Even ROASTarget ROAS (10% net profit goal)
20%5.0×10.0×
30%3.33×5.0×
40%2.5×4.0×
50%2.0×3.33×
60%1.67×2.5×

These are simplified examples. Your real calculation should account for payment processing fees (typically 2.5–3.5%), return rates, and fulfillment costs — all of which reduce effective margin before any profit is taken.

Worked Example: £100 Product, 40% Margin

WORKED EXAMPLE

Product: Wireless headphones, £100 sale price

Cost breakdown:

  • COGS (purchase price + landed costs): £45
  • Fulfillment (pick, pack, ship): £6
  • Payment processing (2.9% + £0.30): £3.20
  • Return rate allowance (8% × £12 return cost): £0.96

Total costs: £55.16
True gross margin: £44.84 = 44.8%

Break-even ROAS: 1 ÷ 0.448 = 2.23×

Target ROAS (aiming for 12% net profit contribution):
1 ÷ (0.448 − 0.12) = 1 ÷ 0.328 = 3.05×

Conclusion: This product should have a tROAS of approximately 3.0–3.1× in Google Ads. Setting it to 5× would drastically under-bid and lose market share to competitors. Setting it to 2× would eat all profit on advertising.

£44.84True gross margin on £100 product
2.23×Break-even ROAS
3.05×Target ROAS for 12% net profit

Per-SKU Bidding vs Campaign-Level Bidding

Campaign-level bidding applies one ROAS target to every product in a campaign. Per-SKU bidding gives each product its own target, usually by placing each product in its own ad group (Single Product Ad Groups, or SPAGs).

ApproachProsConsBest For
Campaign-level (one target)Simple to manageProducts with different margins all get wrong targetVery small, uniform-margin catalogues
Margin tier campaignsReasonable accuracyStill averages within tiersCatalogues of 50–500 products
Per-SKU (SPAG) biddingMaximum precisionComplex to build and maintain manuallyAny catalogue where automation is available

Per-SKU bidding is the gold standard because it eliminates cross-subsidisation. A £500 camera with 55% margin and a £12 phone case with 20% margin get completely different ROAS targets — and both are managed optimally.

The practical barrier to per-SKU bidding is management complexity. Creating and maintaining thousands of individual ad groups manually is not realistic. This is the primary reason automation tools exist for this task.

Margin Tier Campaigns as an Intermediate Step

If you're not ready for full per-SKU automation, segment your catalogue into 3–4 margin tiers and create separate campaigns: Premium (50%+ margin), Standard (30–50%), Economy (15–30%), and Low (below 15%). Each tier gets its own tROAS. This is significantly better than a single target.

Smart Bidding Signals Needed for Profit-Based Bidding

Google's Smart Bidding (tROAS) uses machine learning to optimize bids — but it only works well when fed accurate data. For profit-based bidding to be effective, you need to ensure Google receives the right signals:

1. Accurate Conversion Values

Your conversion tag should pass the actual order value (or profit value, if you use profit as conversion value). If your tag is passing the wrong amount — common causes include VAT inclusion inconsistency, currency mismatch, or duplicate tags — your ROAS calculations are corrupted at source.

2. Sufficient Conversion Volume

Smart Bidding needs a minimum of 30–50 conversions per month at the campaign level to learn effectively. If individual product campaigns don't meet this threshold, consider margin-tier grouping rather than full per-SKU separation.

3. Tracking Accuracy Compensation

iOS14 ATT, GDPR consent requirements, and ad blockers typically suppress 15–30% of conversions. If Google only sees 80% of your conversions, it will under-bid. You must either use enhanced conversions (server-side) or compensate by lowering your tROAS target proportionally.

Tracking Compensation Formula

If your calculated target ROAS is 3.0× and your tracking accuracy is 85%:
Adjusted target = 3.0 × 0.85 = 2.55×
This ensures your effective ROAS remains at your profit target despite tracking gaps.

4. Return Value Signals

Returns erase revenue — but Google Ads doesn't automatically know about them. For high-return-rate categories (fashion: 25–40%), you should either reduce conversion values to reflect expected returns or use GROW's return rate adjustment to factor this into ROAS targets automatically.

How GROW Platform Automates Profit-Based Bidding

GROW's ProfitClarity module is purpose-built for profit-based bidding at scale. It connects your cost data to Google Ads bidding, removing the manual calculation burden entirely.

Step 1: Load Your Cost Data via MarginStack

Import COGS, fulfillment costs, payment fees, and return rates at the SKU level via CSV upload, Google Sheets sync, or API. When supplier prices change, update your sheet and GROW recalculates every affected bid automatically.

Step 2: Configure ProfitClarity

Set your desired profit target (e.g., 10% net contribution per sale), your tracking accuracy percentage, whether your conversion tag includes VAT and shipping, and any LTV uplift for repeat-purchase categories.

Step 3: GROW Calculates Per-SKU ROAS Targets

ProfitClarity runs the margin calculation for every product in your catalogue and outputs a unique tROAS target for each one — accounting for all cost components and your profit goal.

Step 4: Targets Flow Into Google Ads

GROW applies these targets directly to your SPAG (Single Product Ad Group) campaigns via the Google Ads API. Bid strategies are updated in real-time when costs change.

1M+SKUs supported per account
Real-timeBid updates when costs change
Per-SKUROAS targets, not campaign averages

The result: every product in your catalogue competes in Google Shopping at the exact bid level that delivers your target profit margin — automatically, at any scale.

Frequently Asked Questions

What is profit-based bidding?

Profit-based bidding means setting your ROAS targets based on each product's actual gross margin, so the ad spend you commit to each sale is calibrated to leave a profitable contribution after all costs are paid.

Why is ROAS alone not enough?

ROAS measures revenue generated per pound of ad spend — but revenue isn't profit. A 5× ROAS on a 15% margin product loses money. Without margin data, ROAS targets are guesses.

How do I calculate a target ROAS from my margin?

Divide 1 by your gross margin to find break-even ROAS, then multiply by your desired margin buffer. For a 40% margin product targeting 10% net profit, break-even ROAS is 2.5×, and a reasonable target is 3.0–3.5×.

Can I do profit-based bidding without GROW?

In theory yes — you can manually calculate per-product ROAS targets and create separate ad groups. In practice, this is only feasible for very small catalogues. For 100+ SKUs, automation is essential.

Does Google's Smart Bidding support profit-based targets?

Google's tROAS Smart Bidding accepts a target ROAS value, but Google does not calculate it from your margin data. You must supply accurate, per-product targets — that's what GROW's ProfitClarity does automatically.

Next Steps

Profit-based bidding is the single biggest lever for improving Google Shopping profitability without spending more money. Once your bids are calibrated to your true margins, every pound of ad spend is working at its maximum efficiency.

Start With GROW Platform

GROW's ProfitClarity calculates per-SKU ROAS targets from your real cost data and applies them to Google Ads automatically. Create an account to get started →

Found this useful?
GROW Your

Deliver on your commitment to cut costs, improve profit margins & grow sales, with smart automation tools.

GROW is a profit-first automation layer for global e-commerce brands — turning real-time COGS and CAC data into fully automated, SKU-level advertising that can launch, rebuild, and update millions of products in minutes, helping retailers move faster than competitors while keeping every sale aligned to profit.

117 million items managed Since 2016 In over 31 countries
Ben Phelan — Founder, GROW Platform

Written by

Ben Phelan

Founder, GROW Growth Advisory & Technology Platform

Degree E-Commerce, 2001 (1st, BSc-Hons) Large scale paid search, Google Ads, Bing Ads, E-com Co-Founder: Price Comparison Platform, Redbrain Founder: GROW, Growth Advisory & Technology Platform Advisor, Mentor and Investor in technology businesses