Your ad contractor says your ads are profitable. Your bank account says otherwise. See how to fix it.

“We’re getting $2 back for every $1 spent on ads. ROAS is 200%!”

That’s what your traffic contractor proudly reports.

But when you check your cash flow — it’s not adding up.

Here’s the issue:

Your contractor is only counting ad spend as “cost.”
But your business has many more expenses.

If ad platforms treat each sale as $100 in revenue, your contractor will optimize for that number. But if your real profit from that sale is only $30 — you’re scaling something that doesn’t even cover basic costs.

Let’s unpack it:

💸 What’s missing from the ROAS math?

  • Variable costs: cost of goods, payment fees, taxes

  • Fixed costs: salaries, rent, software

  • And… your own profit. The reason this business exists.

Not to mention: different products have different margins. And lead gen? Often, it’s even worse — many CRMs don’t pass any revenue estimate to ad platforms for leads.
So, ad contractors have to work with a weak and misleading metric — cost per lead.
But cost per lead says nothing about actual revenue. Some leads buy low-ticket items or small quantities. Others bring in thousands. And yet, they all count the same in your reports.

If you want your contractor to bring in profitable results, here’s what to do:


How to fix it (step-by-step):

  1. Calculate your breakeven ROAS — what return do you need from ads to cover all costs: ad spend, variable + fixed business expenses.

  2. Set your target ROAS — the return you want after costs.
    Example: if the breakeven ROAS is 200%, set your target at 300%. That gives you:

  • $1 to cover ad spend

  • $1 to cover your actual business expenses

  • $1 profit — the part your contractor is currently celebrating as success (but which doesn’t actually exist yet).


Real-life examples from my clients:

📦 Case 1: eComm site, margin known instantly
Backend sends profit, not revenue, as conversion value to ad platforms.

☎️ Case 2: Offline sales, margin added manually
Sales team tags each CRM order with product type. Margin is auto-calculated by their CRM & sent via Zapier.

📊 Case 3: Lead gen, unpredictable revenue
Script pulls average profit from similar past leads, subtracts costs, and sends that as value to ad accounts.

Even a rough margin adjustment can align your ad contractor, your CRM, and your platforms to optimize for real profit — not vanity metrics.


Contact me if you want your ads to actually generate profit.