What businesses actually want from Google Ads automation

Nobody I talk to asks for an "AI agent". They describe a problem, and it is almost always one of these four:

  • Paying more per click than the market asks. A bid ceiling set once and never revisited quietly drifts above what the clicks are worth.
  • Budget leaking into searches that were never meant for you. The ad shows for a product you do not sell, and every click is paid at full price.
  • Nobody has time to read the search terms report. It is the most useful page in the account and the one that gets opened least.
  • Small budgets rarely fit an agency retainer. A Google Ads budget of a few euros a day rarely justifies a full-service retainer.

An AI agent is a reasonable answer to all four, because the recurring work is reading, comparing and making small adjustments. That is exactly what software does well. The open question is not whether an agent can do it. The open question is what stands between the agent and your money.

Why you should not plug an AI agent straight into Google Ads

Start with what Google itself says. Google's official Google Ads MCP server is read-only in the current release. Its documentation calls it "strictly read-only" and states that it cannot modify bids, pause campaigns or create new assets. It offers three tools: list the accessible accounts, run a query in Google's query language (GAQL) and read resource metadata. That is useful for reports and audits, and nothing more.

So the moment you want the agent to change something, it needs write access to the Google Ads API itself. Two facts from Google's developer documentation matter here:

  • The API has no object locking. If two edits hit the same object at the same time, the API answers with a CONCURRENT_MODIFICATION_ERROR instead of protecting you.
  • Google recommends that you use test accounts, prefer read-only requests where possible, set validate_only on change requests, and review the change history afterwards.

Read between the lines: the API executes what it is sent. It does not know that a bid is absurd for the product you sell. It does not know your business.

What can go wrong in plain words

  • The agent raises a bid ceiling by a large jump because a report looked good for two days.
  • The agent enables a campaign that you paused on purpose.
  • The agent edits the wrong field and overwrites a setting you never meant to touch.

None of these are exotic. They are what happens when a capable tool has permission and no rules. A generic Google Ads MCP server with write access gives the agent the permission. It cannot give it your rules, because it has never seen your business.

What a safe Google Ads MCP setup looks like

The agent never touches the Google Ads API. It talks to my backend: a custom MCP server with business logic in front of the API. The backend decides what is allowed, and the API only ever sees requests that passed. In practice this means five rules, written in plain words:

1. A health check before any work Before the agent may use a single ad tool, it must pass a check of the tooling, of changes made outside the agent, and of the process state. If something looks off, the owner has to confirm before work continues.
2. Hard bid limits and small steps A bid ceiling has a floor and a ceiling that live in code, and it can only move in small steps. A big jump is not something the agent can talk its way into.
3. Negative keyword lists per country, plus duplicate detection Each country has its own list of searches you never want to pay for. The backend also finds keywords that compete against each other across your own campaigns.
4. Change only the named field Every change says exactly which setting it touches. Everything else in the campaign stays as it was.
5. A journal of every action Every call is written down with the time, the tool, whether it only read or really changed something, the result and a trace ID. You can answer "what happened and why" weeks later without asking anyone.

For the technical reader

The backend is a Python MCP server built on FastMCP. The facts, as of 13.10.2026:

  • 36 tools: reports, search term mining, negative keywords, bid ceiling steps, ad rotation, change history, observability.
  • Preflight gate: until the health check passes, every ad tool answers PREFLIGHT_REQUIRED. In the state ATTENTION the owner confirms before work continues. The journal shows 3 such refusals in October.
  • Bid ceiling hard limits in code: 0.10 to 3.00 EUR, moving only in steps of 0.05 EUR. On 05.10.2026 the validation layer rejected a malformed ceiling change and nothing was changed.
  • Every change sends an explicit update mask, so only the named field changes.
  • Audit journal, 01.10-13.10.2026: 229 entries, 208 reads, 21 changes. Each entry has timestamp, tool, READ or MUTATION, result, latency and trace ID.

Read the engineering deep dive: the Google Ads MCP server โ†’

Google Ads cost: buying clicks at the low end of the market

The account is a real one: MoonBloom, an Etsy shop for children's wallpapers, with campaigns in Germany, Austria, Spain and France. The bid strategy is Maximize clicks with a CPC ceiling per campaign. In plain terms: Google may buy as many clicks as the budget allows, but never above the price I set for each campaign.

Here is how the average Google CPC moved:

  • 0.82 EUR before the cleanup (120.03 EUR for 147 clicks, 05.07-04.08.2026, 2 campaigns).
  • 0.53 EUR for the same 2 campaigns once the cleanup had started (21.07-04.08.2026).
  • 0.47 EUR across all 6 spending campaigns (276.66 EUR for 592 clicks, 18.08-17.09.2026). Per campaign the range was 0.45 to 0.55 EUR.

The Google Ads budget behind this is small: 276.66 EUR in 31 days, about 8.92 EUR per day across 4 countries.

A conscious trade-off, not a bidding war

In September the impression share was 10 to 20 percent, and the share lost to ad rank was 63 to 80 percent (18.08-17.09). That looks bad until you know the plan. The plan said: do not chase the maximum bid, take 10 percent impression share with a CPC in range instead.

The audit also showed why. Raising the ceiling without improving the landing pages would only burn money. We do not pay for top positions, and a low ad rank is a useful signal: it tells us where the landing pages need work before more money goes in.

Google Ads plus GA4: see what the traffic does

Clicks are only half of the picture. I join Google Ads with GA4, so the agent sees not just what a click cost, but what the visitor did afterwards. For 05.07-04.08.2026 the join shows 235 sessions from google/cpc, 72 percent of them engaged, with an average of 1m30s on the site.

The same join catches leaks that a cost report alone never shows. The agent reviewed 909 real search queries from 30 days (mid-July to 15.08.2026), and a negative keyword shield of 21 terms went live for the DE and AT campaigns. What the review found:

  • A wrong-product leak. Searches for "Wandtattoo" and "Wandsticker" are a different product than wallpaper. On 04.08.2026 they had cost 22.07 EUR for 11 clicks and 0 sales, which is 18.4 percent of the 30 day spend. That ad group was paused the same day.
  • 36 duplicate keywords that competed with each other were paused (04.08.2026). Your own keywords should not compete against each other.
  • 3 broad keywords that had cost 44.85 EUR in 30 days were paused.

No single item here is dramatic. Together they are the difference between an account that drifts and one that is looked after every day.

The results, honestly

Every figure below comes from the account, with its time window. I did not round them differently and I did not add benchmarks from elsewhere.

MetricValueWindow
Average CPC, 2 campaigns, before cleanup0.82 EUR (120.03 EUR / 147 clicks)05.07-04.08.2026
Average CPC, same 2 campaigns, cleanup started0.53 EUR21.07-04.08.2026
Average CPC, all 6 spending campaigns0.47 EUR (276.66 EUR / 592 clicks), 0.45 to 0.55 EUR per campaign18.08-17.09.2026
Spend per day, 4 countriesabout 8.92 EUR (276.66 EUR in 31 days)18.08-17.09.2026
Impression share / share lost to ad rank10 to 20 percent / 63 to 80 percent18.08-17.09.2026
Sessions from google/cpc in GA4235 sessions, 72 percent engaged, average 1m30s05.07-04.08.2026
Search queries reviewed909, plus 21 negative terms for DE and AT30 days, mid-July to 15.08.2026
Wrong-product leak stopped22.07 EUR, 11 clicks, 0 sales (18.4 percent of 30 day spend)paused 04.08.2026
Duplicate keywords paused3604.08.2026
Broad keywords paused3, which had cost 44.85 EUR30 days before the pause

The two CPC windows before and after use different campaign counts, 2 campaigns and then 6, so read the drop as a direction, not as a controlled experiment. Sales for this shop happen on Etsy, so Google Ads does not attribute them. That is why I measure cost per click, waste removed and engaged traffic, and why I make no claims about sales or return on ad spend.

Why this is engineering work, not a plugin, and who it suits

You cannot install safe Google Ads management as a plugin. The value sits in the rules: how high a bid may go, how fast it may move, which searches you never want, and who has to confirm when something looks off. Those rules are different in every business, so somebody has to write them down and build them into the tooling. That is the engineering work I do.

It suits you if:

  • You spend roughly 5-50 EUR a day in the DACH region and want control over where it goes.
  • You want routine Google Ads management done every day, not whenever somebody has a free hour.
  • You want to see what was changed and why, in a journal you can read yourself.

It does not suit you if you want a full-service agency that also handles strategy, creative and client meetings. For that, hire an agency. If the business-side question is where your money leaks across all channels, start with the article One control panel for every ad channel you run.

Want to know what your own account is leaking?

In 30 minutes we look at your search terms and your bid ceilings and decide whether an agent backend makes sense for you. If it does not, you still leave with a list of what to block.

Questions people ask before letting an AI agent touch their ads

Can an AI agent manage my Google Ads account on its own?
Yes for the routine work: reading reports, finding wasted spend, adding negative keywords and moving a bid ceiling in small steps. No for unsupervised access to the raw API, because the API executes whatever it is sent. The agent should talk to a backend that holds your rules, checks its own state before it starts and writes a journal of every action.
Is the official Google Ads MCP server enough?
For reading, yes. Google's docs describe the official server as strictly read-only: it lists accounts, runs GAQL queries and returns resource metadata, but it cannot modify bids, pause campaigns or create assets. To change anything, an agent needs mutate access to the Google Ads API, and that is where your own backend with business rules comes in.
What does Google Ads cost with a small budget?
It depends on your market, so I only quote my own account. A children's wallpaper shop on Etsy spent 276.66 EUR in 31 days, about 8.92 EUR per day across Germany, Austria, Spain and France, at an average CPC of 0.47 EUR. Small budgets work when waste is removed early and bid ceilings stay low.
Can Claude manage Google Ads?
A model like Claude can read reports, spot patterns in search terms and propose changes. What it may actually change depends on the tools behind it. Connected straight to the API it can break things, so I put a backend between the agent and Google Ads: hard bid limits, a health check before work and a journal of every call.
How do I stop an AI agent from overspending?
Do not rely on the model being careful. Put the limits in code. In my setup a bid ceiling cannot leave the range of 0.10 to 3.00 EUR and moves only in steps of 0.05 EUR. On 05.10.2026 a malformed ceiling change was rejected and nothing was changed. Every call is written to a journal you can read.
Do I still need a Google Ads agency?
It depends on what you need. If you want a full-service agency for strategy, creative and reporting, an agent setup is not a replacement. If you run a small or mid-size account and want control over routine checks, search terms and bid ceilings, a custom agent backend covers that work, and you can see every action in the journal.
Let an agent do the routine, keep the decisions

Tell me your daily budget and your countries. We check whether a safe agent setup is worth it for your account.

โ† Back to articles