I once worked with a B2B team selling a fairly complex product. The average deal cycle? About a month. We launched ads on Meta, leads started coming in, Ads Manager looked totally fine. But when we dug into the real numbers, it got weird: CRM showed 150 leads, Meta showed 40. Sales were happening, but Meta’s learning just… wasn’t.

The problem? Meta simply didn’t see most of the conversions. If they happened after 7 days, they didn’t exist. By default, Meta uses a 7-day click window and a 1-day view window. That’s fine for ecom impulse buys. But in B2B, education, or anything where people need more than one coffee to decide — it’s a trap.

Here’s what actually happens:

1) Deals that close on day 10? Meta ignores them.

2) The algorithm assumes your ads don’t work and stops learning.

3) Meta shifts optimization toward people who buy quickly — which usually isn’t your actual audience.

So what can you do?

1)Check your real sales cycle. If it’s longer than 7 days, you need to adapt.

2) Optimize for earlier events like Lead or SubmitForm — something that happens right after the click.

3) Set up Conversions API with event_id. It’s more accurate, works server-side, and bypasses cookie loss or ad blockers.

4) Add a lead magnet that triggers quick action — like a freebie or form. That’s both a signal for Meta and a way to pre-qualify leads.

5) Upload a list of actual buyers and build lookalikes. Give Meta something better to work with.

Meta is powerful, but its memory is short. Don’t take the “zero” in Ads Manager at face value — you might be throwing out campaigns that actually work.

If you work with GA4 to BigQuery exports, be sure to check out my SQL cheat sheet.