Ad Spend in Your Books: Why ROAS Lies Without Real Accounting
By the I&S Accounting teamReviewed by a licensed U.S. CPA
The Prettiest Number in eCommerce
ROAS is the metric everyone quotes and the one that lies most smoothly. "We're at 3.2x" sounds like a business working — and says nothing about whether you keep any of it. Ad dashboards compare attributed revenue to ad cost and stop there. Product cost, marketplace fees, shipping, refunds — the entire rest of your economics — is someone else's problem.
The books are where ROAS meets reality.
The Math the Dashboard Skips
Take a $100 order at 3x ROAS — $33 of ad spend:
- Product (landed cost): $38
- Fees and processing: $13
- Shipping out: $9
- Ads: $33
That leaves $7 — before overhead, before returns. One return in ten orders and the "3x campaign" is underwater. This is why stores scale ad spend into a loss with total confidence: the metric they steer by was never connected to margin.
The fix is one number: contribution margin after ad spend, per channel. Revenue minus product cost, fees, shipping, and ads. Positive and healthy? Scale. Thin? Fix the funnel or the pricing before feeding it more money.
Getting Ad Spend Into the Books Correctly
Three habits, all cheap:
- One account per platform. Meta, Google, Amazon, TikTok — separate accounts, never one "marketing" blob. Amazon ads deducted from marketplace settlements count too: gross them up out of the payout so they're visible.
- Reconcile to platform invoices, not card charges. Platforms bill on thresholds and cycles; a single card charge can cover four days of spend, and month-end always splits a cycle. Book the spend to the month it happened and let the unbilled remainder sit as a payable — otherwise January carries December's ads.
- Prepaid balances are assets. Money loaded into an ad account but not yet spent isn't an expense yet — it's your cash parked at the platform.
When ROAS and the P&L Argue, Believe the P&L
Attribution models overlap and flatter — every platform claims the same order, branded search takes credit for customers who were coming anyway. The ledger has no attribution model. It just knows what was spent and what was kept. Monthly books that show per-channel contribution margin are the referee in every "but the dashboard says" conversation.
The Bottom Line
ROAS tells you an ad made the cash register ring. The books tell you whether it was worth ringing. We keep both connected for eCommerce clients — ad spend by platform, margins after ads by channel, CPA-reviewed monthly — so scaling decisions run on kept dollars, not attributed ones.
Frequently asked questions
Because ad dashboards measure revenue attributed to ads against ad cost — before product cost, fees, shipping, and returns. A 3x ROAS on a product with a 30% contribution margin is a money-losing campaign wearing a winning number.
One expense account per platform — Meta, Google, Amazon, TikTok — reconciled to the platform invoices, not just the card charges. Blended 'marketing' hides which platform actually buys profitable orders.
Platforms bill on thresholds and cycles, so a card charge usually covers spend from several days — and month-end always splits a billing cycle. The dashboard shows spend when it happened; the card shows when it was billed. Books should follow the spend, with the gap sitting as a payable.
Contribution margin after ad spend: revenue minus product cost, fees, shipping, and ads — per channel. It's the number that says whether growth is building a business or just buying revenue.