For most of the past year, my cost per bottom-of-funnel conversion behaved like a roller coaster. The number I actually manage to, the cost to generate a lead that becomes real pipeline, swung month to month for reasons that were never obvious from inside Google Ads. What finally pulled it back under control, and lifted the quality of the volume coming through with it, was not a new bid strategy or a new agency. It was connecting Claude to the account with read-only access and using it to catch what Google quietly changes underneath me.
The volume got cleaner too. Fewer conversions that look great on Google's dashboard and die in the funnel, more of the clicks I pay for turning into pipeline. Same budget, better output, because I stopped letting the platform's defaults decide where my money went.
I want to be clear about the read-only part, because it is the entire point. Every week or so another post shows up in my LinkedIn feed: someone wired an AI agent into their Google Ads account, gave it permission to make changes, and woke up to a suspension. Sometimes it was a botched bulk edit that torched spend. Sometimes it was the automated API activity itself that tripped Google's enforcement. Either way, years of account history, gone in a morning.
So when I connected Claude to my own account, I made one decision up front and have not moved off it since. The AI can look at everything. It can change nothing. No auto-applied recommendations, no agent nudging bids at 2am, no write access at all. It reads. I decide. I make every change by hand.
Read-only on purpose
This is not me being timid about AI. I use it all day. It is me being deliberate about where the risk actually lives.
Letting a model push changes into a live ad account stacks two risks on top of each other. The first is the account itself. One confident, wrong bulk edit can drain a budget or trip enforcement before you notice it happened. The second is judgment. A model will happily optimize toward whatever metric it can see, and the metric it can see inside Google Ads is almost never the one that pays my bills.
So I split the work along the line where each side is actually good. Claude reads, cross-references, and flags. I interpret and execute. The credential I gave it is read-only, so the boundary is not a promise I am trusting a model to keep. It is enforced at the connection.
The AI gets the half of the job it is good at, reading across more data than I can hold in my head. I keep the half that gets accounts suspended when you hand it over.
What it actually reads
Here is what makes this worth doing. I am not asking it one question about one campaign. I am handing it a huge cross-section of the account at once and asking it to find what I would miss.
In plain language I can ask things like "what settings changed in the last week that I did not make," or "show me every campaign where the bid strategy quietly shifted," or "which keywords had their bids move, and did conversions actually follow." It pulls:
- Campaign and ad group settings, and the change history down to the hour
- Keyword bids, match types, and search term drift
- Budgets and bid strategy changes, including the ones Google applies on my behalf
- And the piece most reporting tools leave out, my Salesforce conversion data, all the way to the bottom of the funnel
That last one is the whole game. Google will tell you a campaign is crushing it on its own in-platform conversions. My Salesforce data will tell you those conversions never became pipeline. When the model can see both at the same time, I stop optimizing toward Google's definition of success and start optimizing toward mine.
Doing this by hand means clicking into each account, each campaign, each settings panel, then stitching all of it against a separate CRM export. I would catch the big stuff. I would miss the small setting that flipped on last Tuesday and started quietly leaking budget. Querying everything at once is how the small stuff surfaces.
What it actually catches
Let me make this concrete with real examples from my own account. Not hypotheticals. These are things the read-only pull surfaced that I would not have caught for weeks by clicking around, and what they were quietly doing to my spend.
A search campaign that Google drifted onto the Display Network. One of my search campaigns, the one targeting competitor terms, had its search impressions collapse by 71 percent in a week while its Display impressions exploded to nearly 100,000, eating about 3,000 dollars. Nobody on my team touched it. Google had drifted a search campaign onto the Display Network, and it was burning real budget on display placements no one asked for, on a campaign that had produced zero pipeline the month before. The week prior, the same pattern had hit a different campaign for about 1,100 dollars. I caught both by pulling impressions by network across every campaign in one query, saw the search-to-display ratio invert, and switched the Display Network back off by hand.
Performance Max quietly turning its "dynamic" settings back on. In Performance Max I deliberately keep two things off. Final URL expansion, which lets Google send my paid traffic to any page on the site including ones that just re-acquire existing customers, and automatically created assets, which lets Google generate ad copy I never wrote. I had turned both off. Months later they were back on, and I had to opt out a second time. This is the one that convinces people. I did not change it, there was no notification, it simply reverted to the setting that spends more of my money, and the only reason I caught it is that I query these settings on a schedule instead of trusting them to stay where I left them.
Search Partners, paying for clicks that never convert. Search Partners is the network of non-Google sites your search ads also run on, and it is on by default. So I checked what it actually did for me. Over the last six months it spent about 1,600 dollars and sent about 900 clicks, and produced exactly zero conversions. Not zero pipeline. Zero conversions of any kind, on Google's own generous counting. Google search over the same window converted at about 1.5 percent. Search Partners converted at nothing. That is a setting Google leaves on for you, and for my account it was pure leakage.
The quiet defaults that add up. Optimized targeting switched on in a few dozen ad groups, overriding the audiences I picked to chase Google's idea of a converter. Ad rotation nudged to "optimize" instead of holding an even test. Demographic expansion left open so ads reach past the demographics I chose. No single one of these is a disaster. Together they are a slow bleed toward reach and away from intent, and you never notice them clicking through settings one campaign at a time.
The pattern never changes. Every default favors reach and spend, and every reversion is back toward reach and spend, never away from it. Read-only access lets me see all of it across the whole account in one query, cross-checked against what each setting is costing me at the bottom of the funnel. Then I go in and fix it myself.
Google Ads keeps moving the furniture
There is a reason this matters more than it used to.
Google Ads is cannibalizing itself. AI Overviews are eating the top of the search page, which changes what a click is even worth before I do anything. And the platform never sits still. There is always a new setting, a new default, a new recommendation switched on for me, a new creative way to serve my ads to someone I did not ask to reach.
I will say the quiet part. Most of those changes are not built to get me better lower-funnel results. They are built to spend more of my budget and grow Google's ad revenue. The in-platform advice will always nudge you toward broad match, bigger budgets, and "let the system handle it," because that is what widens their take. Sometimes it genuinely helps. Often it just moves my money into places that convert on their dashboard and nowhere on mine.
Keeping up with that churn is now a real part of the job. A big reason I comb the account this often is to catch what Google changed before it costs me a week of spend.
Taming the roller coaster
For years my Google Ads program was boring in the best way. I knew my cost per bottom-of-funnel conversion inside a tight band. I could forecast it. I could plan a quarter around it.
The past year it turned into the roller coaster I described up top. Same account, same discipline, wildly less predictable output. Some of that is the AI Overview shift, some of it is Google's constant tinkering, some of it is auction pressure. The cause matters less than the response. When the output stops being predictable, you cannot manage it on a monthly check-in anymore. You have to stay on top of every small change, because any one of them can be the reason the number moved.
That cadence is not realistic by hand. It is very realistic when I can point a read-only model at the whole account and ask what actually changed. Running it this way is how the bottom-of-funnel number came back down, and how the volume got cleaner along with it. Not because the AI fixed anything. Because it showed me where to look, fast enough that I could fix things by hand before they turned into a bad month.
It builds the reports so I do not have to
The other thing it quietly gives me back is time.
I used to spend hours assembling the same reports. Pull the data from Ads, pull the data from Salesforce, line them up in a sheet, build the chart, and only then get to the part where I think. Now the model assembles the view and generates the visuals. Trend lines, source breakdowns, the before-and-after of a change I am considering. The graph that used to eat an afternoon shows up in a couple of minutes, and it is easier to read than what I would have hand-built anyway.
This is not about pretty charts. It is about where my attention goes. Every hour I am not spending clicking into individual settings and rebuilding the same report is an hour I spend on the actual question. What is going on, and what am I going to do about it.
The point
None of this replaces the operator. It sharpens one.
I wrote before that AI in marketing is a force multiplier for people who already know what they are doing and a chaos machine for people who do not. This is the same idea aimed at the account itself. Treat the model as a very fast analyst with read-only access. It can pull, cross-reference, and flag across more data than I could ever hold in my head. It cannot be trusted to interpret what it finds, and it does not get to touch the account.
The people getting suspended handed over the wrong half of the job. They gave the AI the execution and kept the reading for themselves, when it should be the exact opposite. Let it read everything. Keep the decisions, and the clicks, for yourself.