Case Study: How We Caught Bot Traffic That Was Quietly Draining a Client's Ad Account
A woodcraft brand selling personalized wooden products reached out to us at the start of November after a long stretch of disappointing Meta results. For most of the prior year, they'd been sitting comfortably between a 2.0 and 2.5 ROAS, exactly where they needed to be to stay profitable and keep growing. But over the six months leading into Q4, performance slowly fell apart. No matter what they tried, the account couldn't get above a 1.5 ROAS.
By October, things had completely stalled:
Spend: $10,831.23
ROAS: 0.67
Sales: $7,282.58
For a brand with strong products and a loyal customer base, this didn't add up. Something was clearly off.

Digging Into the Real Problem
When we first audited the account, nothing obvious jumped out. Creatives were solid. Copy was good. Targeting was reasonable. In theory, results should have been much stronger than they were.
But a couple of metrics caught our attention. CTR was very high. Add to cart events were unusually strong. Conversion rate didn't match either of them.
Individually, those numbers look like good news. Together, with purchases lagging that far behind, they're often a red flag. So we ran a controlled test to see what would happen with a clean, narrow setup.
Within 24 hours, we saw huge spikes in clicks and add to carts, with almost no increase in purchases.
At that point it was pretty clear what we were dealing with: bot traffic, and a lot of it.
This kind of traffic quietly destroys accounts, because Meta thinks it's doing well, so the system keeps optimizing further into the wrong signals.
The Plan: Rebuild the Account From Scratch
Once we confirmed the issue, we spent November taking the account apart and rebuilding it properly. This wasn't a quick fix. It was a deliberate reset designed to clean the data and force Meta to optimize toward real customers again.
Here's exactly what we did:
Ran very narrow, manual campaigns for a week. The goal wasn't scale, it was quality. We wanted real people, nothing else.
Rebuilt the audiences week by week. We created fresh pools of website visitors, add to carts, and purchasers, each starting at a 7-day window. Each week we slowly expanded to 14 days, then 21, then 30. This step-by-step rebuild gave us clean, reliable signals for the first time in months.
Layered in new top-of-funnel and retargeting structures. Only after the data had stabilized did we start introducing new campaigns and budgets again.

The Turnaround
Even during the cleanup phase in November, when we weren't trying to scale, performance bounced back.
November 2025
Spend: $14,118.56
ROAS: 1.96
Sales: $27,630.91
Just fixing the data was enough to nearly triple ROAS compared to October.
But December is where things really took off.
December 1 to 14, 2025
Spend: $10,320.55
ROAS: 5.34
Sales: $55,125.29
This wasn't a random spike. It was the direct result of Meta finally being fed real, trustworthy data again.
It's the highest ROAS the account has ever achieved, and it happened within two weeks of launching the rebuilt structure. We're now preparing to scale spend to $25,000 to $30,000 a month with strong stability behind it.


Why This Matters
If you only look at CTR, add to carts, or CPMs, you can completely miss what's actually happening inside an account. Bot traffic is more common than people think, and it can quietly drain thousands of dollars before anyone notices.
The only way out is to reset the system, rebuild the audience layers properly, and give Meta clean data to work with. That's exactly what we did here, and the results speak for themselves.
From a 0.67 ROAS to 1.96 ROAS to 5.34 ROAS
All in the span of six weeks.



