Reply to everything. Edit nothing.
Your inbox is full. Slack is piling up. Client messages need a response yesterday. Typing thoughtful replies to all of it takes hours you don't have.
Wispr Flow turns your voice into clean, professional text you can send the moment you stop talking. Speak like you would to a colleague — tangents and all — and get polished output. Emails, Slack, LinkedIn, WhatsApp, whatever's open.
89% of messages sent with zero edits. Used by teams at OpenAI, Vercel, and Clay. Works on Mac, Windows, and iPhone.
PAID MEDIA THAT PAYS · ISSUE 010
A B2B SaaS came to us convinced their Google Ads had stopped working. The clicks were still coming in. The conversion dashboard showed exactly one booked demo.
The founder's read was the reasonable one. The ads are burning money and nothing is landing.
The ads were fine. The tracking was broken, and the bid algorithm had spent about six weeks optimizing toward a number that was wrong.
THE NUMBER
$387
The real cost per booked demo. The dashboard reported $1,934 for the same spend, the same clicks, the same week. Nobody saw the gap for about six weeks.
What the account actually did
Here is the window everyone had written off. About 970 paid clicks. $1,934 in spend. One demo on the dashboard.
GA4 had recorded five demo bookings from that same traffic.
Five, not one. The real cost per booked demo was about $387. The dashboard was reporting $1,934.
Same spend, same clicks, same week. Off by 5x, and invisible.
One line of site config
A content-security-policy rule on the main product page blocked the Google conversion script from loading. Script, connect, and image sources were all closed to it.
The page still loaded. Forms still submitted. Demos still got booked. The only thing that broke was the ping back to Google that says this click converted.
So the signal went dark, and nothing turned red. A broken conversion feed and a soft month look identical in the dashboard.
That matters more than it sounds. Smart Bidding is only as smart as the conversion signal you feed it. When the signal is clean, the algorithm is genuinely good at its job. When the signal breaks, the algorithm does not stop. It keeps spending and it keeps optimizing, except now it is optimizing toward noise.
It moves budget toward the clicks that resemble the conversions it can no longer see. It learns the wrong lesson. Then it hands the whole thing back to you with total confidence.
For six weeks, this account paid a machine to learn from data that was not there.
Why this keeps happening
You would think a 5x cost error would set off an alarm. It did the opposite.
The dashboard read like plain underperformance. So the instinct was to blame the ads, cut the budget, or swap the creative. Every one of those moves would have made it worse, because none of them touch the actual problem.
The ads were converting the whole time. Measurement was the thing that failed, and measurement is the one input nobody thinks to audit when the numbers look soft.
This is not a rare bug. Anything that changes how a page loads can sever a conversion path without touching a single ad. A security policy update. A consent banner. A migration that repoints the old confirmation page. A fresh tag manager container.
Each of those ships for a good reason and gets tested for the thing it was meant to do. None of them get tested for the conversion ping. The team that shipped it is not watching the ad account, and the team watching the ad account does not know the page changed.
That gap is where six weeks of blind spend lives.
So we run a rule. A migration that pauses an old path requires enumerated, end to end verification of the new path before the old path is turned off. Not the tag looks like it fired. An actual test conversion, fired by hand, followed all the way through to the platform, confirmed as landed.
If you cannot point to the conversion you fired yourself and watched arrive, you do not have tracking. You have a hope.
Do this Monday
Fire one real conversion on your own site today. Fill out the form, book the demo, complete the checkout, whatever your primary conversion is. Then confirm it lands in the ad platform the same day. If it never arrives, your bid algorithm is blind, and you found out before it cost you another month.
Reconcile one week of platform conversions against your CRM or GA4. If the two counts disagree by more than a rounding error, trust the source closest to real money and treat the platform number as suspect until you know why.
On any underperforming account, rule out tracking before you touch bids, creative, or budget. The ads stopped working and we stopped counting look identical in the dashboard and have opposite fixes.
Feed the algorithm a clean number, or it will confidently spend your budget learning the wrong thing.
If you want a structured way to find the leak before it costs you another six weeks, the workbook walks the whole audit, conversion path included.
See you next week.
Will Gray
Founder, Graystone Consulting
THE BOARD
Granola takes the notes in our client calls so the follow-ups leave with owners and dates. Free to try. Try Granola
GrowthIQ is written and sent on beehiiv. If your brand is starting an owned newsletter, start on the same stack. Start on beehiiv
ClickUp is our task system of record: a mandate is only real once it has an owner and a date, and that is where ours live. Try ClickUp
Partner links. GrowthIQ may earn a commission. Forwarded this email? Sign up here.


