stylized bars with a circle in the middle

Stack-Gap Tools

ROAS tells you what a campaign returned. It does not tell you what you kept. Enter your unit economics once, add each campaign, and see which ones put money in the bank after product, shipping, fees, returns, and ad spend.

1  Â·  Your unit economics
Applies to every campaign unless you override COGS on a row
Landed product cost, including inbound freight and duty
Outbound shipping plus pick, pack, box, and insert
Card and gateway fees. Processors keep these on refunds.
Amazon, Shopify Plus revenue share, or affiliate commission
Share of orders refunded
Return label, inspection, restocking, and write-off
Support minutes, gift wrap, free sample
Display only
2  Â·  Campaigns
Campaign Channel Ad spend Revenue Orders COGS % (blank = default) Fixed cost allocated
No campaigns yet. Add one above or load the sample data.
3  Â·  Portfolio result
All campaigns combined

Where the revenue goes

4  Â·  Campaign verdicts

Turn these verdicts into a budget decision

You can now see which campaigns contribute and which ones drain. Bring these numbers to a free 30-minute consultation and get an expert read on where the budget should move first.

Get My Free Consultation

Free 30 minutes. Expert-matched.

5  Â·  Full breakdown
Scroll sideways on mobile
CampaignSpendRevenueGross ROAS Net rev.All-in COGSGross profit Contribution $CM %Break-even ROAS CACProfit / orderVerdict

How to read this. Gross profit is what remains after every variable cost of delivering the order, before ad spend. Contribution margin subtracts ad spend and any fixed cost you allocate, so it is the money the campaign contributes toward overhead and profit. Break-even ROAS is the revenue per ad dollar you need to reach zero; anything below it loses money however good the reported ROAS looks. These figures are a planning model, not accounting output. Every calculation runs in your browser, and nothing you enter is transmitted anywhere.

Want a second set of eyes on the cost stack?

Hawke Media has run this math for more than 6,000 brands. Spend 30 minutes with a marketing expert, walk through your all-in costs, and leave with a clear next step.

Get My Free Consultation

Response within 1 business day.

Who this is for

Two groups share the same blind spot. The first is small and mid-sized business owners who spend real money on advertising without a finance team to translate platform dashboards into P&L reality. The second is ecommerce and DTC operators. Anyone selling physical product carries a wide gap between reported revenue and money kept, and that gap is filled by landed cost, pick and pack, outbound freight, card fees, marketplace commissions, and a return rate that removes roughly a tenth of the top line.

If a 3x ROAS has ever left you uneasy without being able to explain why, this tool gives you the arithmetic behind that reaction. It also works for agency and in-house marketing leads who need to defend a budget to an owner or a CFO, because contribution dollars are the unit those people think in.

Why gross ROAS is an expensive number to steer by

Ad platforms report the two things they can see: what you spent and what you told them you made. They cannot see what the product cost, what shipping cost, what your processor took, or how much came back three weeks later. The result is a ratio that is structurally optimistic. Because it updates in real time and looks like a scoreboard, it becomes the number the whole business steers by.

Run the arithmetic on a typical consumer-goods business and the problem shows up fast. Take an $86 order. Product at 32% costs $27.50. Fulfillment, meaning shipping, box, label, and the person who packed it, costs another $9.50. Payment processing takes about $2.50. An 8% return rate removes the revenue on those orders and adds a return label and an inspection on top. Before you spend a dollar on advertising, about half of that order is gone.

Your break-even ROAS therefore sits somewhere above 2x. A campaign running at 1.8x is not underperforming; it is converting your cash into somebody else's revenue. A campaign at 2.3x looks unimpressive next to a 4x hero campaign, and it may contribute more absolute dollars because it operates at scale. Neither fact is visible in Ads Manager.

Three numbers change decisions. Break-even ROAS is the return you need to reach zero, and every campaign should be measured against it instead of an arbitrary target. Contribution margin is what a campaign leaves behind after every variable cost including ad spend, and it is the money that pays your rent. Profit per order tells you whether growth helps or hurts, because a negative number means each additional order deepens the hole.

Find out what your campaigns really contribute

Break-even ROAS is different for every business, and most owners have never calculated theirs. Spend 30 minutes with a Hawke Media expert, walk through your cost stack, and leave knowing which campaigns deserve more budget.

Talk To An Expert

Free 30 minutes. Expert-matched. Proposal only if it is a fit.

What changes when you run this

Three things, usually inside a week.

You stop budgeting by ROAS rank. Campaigns get funded by contribution dollars, and the order almost always changes. Retargeting and email, with small spend and high margin, move up. Broad prospecting at scale often earns its place on absolute contribution despite a mediocre ratio. There is usually one campaign that has been losing money for months behind an acceptable-looking ROAS.

You get a defensible number for the conversation with your owner, board, or accountant. "Meta returned 2.8x" invites an argument. "Meta prospecting contributed $12,196 last month after all-in costs, against a 2.08x break-even" ends one.

You start finding margin outside the ad account. Once the cost stack is written down, the levers become visible. Fifty cents off pick and pack across 4,000 orders is $2,000 a month with no creative test required. A two-point drop in return rate can be worth more than a doubling of ad efficiency.

How to use it honestly

Use a full, normal month rather than your best week or a launch period. Enter real costs, including the ones you would rather not look at. Allocate fixed costs such as agency retainers, creative production, and software to the campaigns they serve, because unallocated overhead is how a business talks itself into believing it is profitable. Then re-run it monthly. Contribution margin drifts as CPMs rise, discounting creeps in, and freight rates move, so the trend matters more than any single snapshot.

Every calculation runs in your browser. Nothing you type is uploaded, stored, or transmitted anywhere.

Frequently asked questions

What is contribution margin, in plain terms?

Contribution margin is what remains from a sale after every cost that varies with that sale: product, shipping, fulfillment labor, payment processing, marketplace fees, returns, and the advertising that generated the order. It is the money the campaign contributes toward your fixed costs and profit. Gross margin excludes ad spend and net profit includes rent and salaries, so contribution margin sits between them. That makes it the right number for judging a single campaign, because it captures everything the campaign caused and nothing it did not.

How is this different from the ROAS my ad platform reports?

Reported ROAS is revenue divided by ad spend. It ignores cost of goods, fulfillment, payment processing, marketplace fees, and returns, which together take 45% to 60% of a typical ecommerce order. It is also attributed by the platform selling you the ads, which tends to be generous. This tool takes the same revenue figure, subtracts everything the platform cannot see, then compares your actual ROAS against the break-even ROAS your unit economics require. A 3x ROAS is excellent at 25% all-in costs and loss-making at 70%.

What is a good contribution margin percentage?

Category matters, but for consumer products a blended contribution margin of 15% to 30% of net revenue is a healthy operating range once ad spend is included. Below about 10% you have very little room for a CPM increase, a freight surcharge, or a bad returns month. Above 35% you are usually either under-investing in growth or selling something with unusual pricing power. Your own trend is the more useful comparison: a margin that falls three months running is a signal whatever its absolute level.

Should I allocate fixed costs like agency fees to individual campaigns?

Yes, if you want the answer to be actionable. A campaign that needs a $3,000 monthly creative retainer to function is not the same as one running on evergreen assets. Allocate costs to the campaigns that cause them, leave the rest at the business level, and stay consistent month to month. Treating all overhead as somebody else's problem is how a portfolio of profitable-looking campaigns adds up to an unprofitable business.

My attribution is unreliable. Is this still useful?

Yes, with one adjustment. Use the blended totals as your primary read, because total revenue against total ad spend across all campaigns removes most attribution distortion; double-counted conversions cancel out at the portfolio level. Treat individual campaign rows as directional. If platform-reported revenue consistently overstates your actual sales, apply the same haircut to every revenue figure before you enter it. A rough correction applied evenly beats a precise number applied to the wrong denominator.

Is my data sent anywhere?

No. Every calculation runs locally in your browser using JavaScript embedded in the page. Nothing you enter is transmitted to a server, saved to a database, or logged. Closing the tab clears it. To keep a record, use the CSV download or print to PDF; both are produced on your own device.