Google Ads guide
How to run Google Ads from Claude
Claude cannot see a Google Ads account on its own; a connector gives it one. Google's open source server reads with GAQL and changes nothing. The Adrails MCP server, added to Claude as a custom connector, reads results over exact dates, looks up Keyword Planner volumes, builds Search, Display, Demand Gen and Performance Max campaigns and edits what runs, each change prepared in the chat and applied in Adrails within fixed safety limits. This guide covers the setup, prompts that map to real tools, and the limits. Google Ads opens once Google finishes verifying Adrails. Connect Meta for now.
By Thomas, founder of Adrails · Reviewed Oct 6, 2026
Prompts to copy
Nine prompts for Claude with Google Ads connected
Name the account, the dates and the metric. Ask for the table first, then the reading, and ask which result a figure came from.
| Prompt | Tool | What comes back |
|---|---|---|
| Which Google Ads accounts are connected to my workspace? | accounts_list | Each account with its platform, currency, time zone and last snapshot |
| Spend, conversions, CPA and ROAS per campaign on our Google Ads account for 1 to 30 September, next to the same dates in August. | performance_period | One table with both ranges and each campaign's change |
| Show how the Generic Search campaign is built: ad groups, keywords with match types and quality scores, and the ads. | campaigns_structure | The structure as of the last sync, with the IDs later changes use |
| Monthly searches and top-of-page bids for these 20 keywords in the United States, in English. | google_keyword_planner | Volumes and bid ranges from Keyword Planner on your own account |
| Read https://shop.example.com and suggest Search keywords, headlines and descriptions for it. | site_brief | Brand, products, keywords, headlines of 30 characters and descriptions of 90 |
| Build a Search campaign for the trail shoes collection: 40 dollars a day, United States, two ad groups. | google_ads_build | A link to the change in Adrails; once applied, everything is created paused |
| Set the target CPA of Generic Search to 34 dollars. | google_ads_edit | A link to the change; Google validates it now and again when it is applied |
| Pause the Display campaign that spent 300 dollars this month without a conversion. | campaigns_set_status | A link to the pause; nothing changes on Google Ads until it is applied |
| Lower the daily budget of Generic Search by 20%. | campaigns_change_budget | A link to the budget move, refused above 30% in one change |
Tools and their behavior from the Adrails MCP tools reference on 6 October 2026. Claude picks the tool from the sentence; naming it is never needed.
01
Who this is for
This guide is for people who already run Google Ads and already use Claude, and want the first inside the second: a founder who manages a Search campaign between other jobs, an in-house marketer who reports every Monday, an agency team with a dozen client accounts. What it changes is the work around Google Ads: pulling figures for exact dates, comparing periods, researching keywords, writing ad copy, building a campaign from a brief, and making the routine pauses and budget moves.
It is not for a team that wants Claude to write into Google Ads with nothing in between. With Adrails, Claude prepares a change and it goes live from Adrails, inside fixed safety limits, once an owner or admin of the workspace applies it. It is also not the shortest path to a one-off report on a field nobody packaged as a tool, such as the account's change history: Google's own read-only server, with its GAQL queries, does that well.
02
Two ways to give Claude a Google Ads account
On its own, Claude reads what you paste or upload and nothing else: no live account, no change. A connector is what gives it the account. Every connector is a remote MCP server: Claude lists its tools, picks one from your question, the server calls the Google Ads API and the answer comes back in the conversation.
Google publishes an open source Google Ads MCP server with three tools: list the accounts your credentials reach, run a GAQL query, and read resource metadata. It is read-only in its current release, and you run it yourself, locally over stdio or on Cloud Run, with an OAuth client or a service account from a Google Cloud project. Adrails is a hosted server at https://adrails.ai/api/mcp that you sign in to from the browser, with tools that read, research, build and edit. The two are compared tool by tool in the article on Google's server and a hosted one.
03
Set it up in Claude
Start in Adrails: a workspace with Google Ads connected under Ad accounts. Google Ads opens once Google finishes verifying Adrails. Connect Meta for now. A workspace that already connected Google Ads can follow every step below today. Google Ads is connected once, in Adrails, which holds the API access. Claude signs in to Adrails, never to Google, so there is no developer token, Google Cloud project or credential file to set up.
Then add the connector in Claude, on claude.ai or the desktop app. Claude's help center lists custom connectors on the Free plan, limited to one, and on Pro, Max, Team and Enterprise. On Team and Enterprise, an owner of your Claude organization adds the connector first, under Organization settings, then Connectors. In Claude Code the same server is one command, claude mcp add --transport http adrails https://adrails.ai/api/mcp, followed by /mcp to sign in.
- 1. In Claude, open Customize, then Connectors, choose Add, then Add custom connector
- 2. Name it Adrails, paste https://adrails.ai/api/mcp and keep Use Claude's published identity under OAuth client
- 3. Connect it: Adrails opens, you sign in, choose the workspace and the permissions, then Allow access
- 4. In a conversation, open the plus menu, then Connectors, and turn Adrails on
- 5. Ask which Google Ads accounts are connected, to check what Claude can reach
04
Choose what Claude may do
The consent screen asks for one workspace and a set of permissions. Read workspace data is required and covers every ad account of that workspace, Google Ads and Meta alike. Prepare advertising changes is separate, starts unselected, and only an owner or admin can grant it: without it, Claude never sees a tool that changes a campaign. Manage integrations lets Claude queue a refresh of an account with meta_sync, which despite its name refreshes Google Ads accounts too.
Claude adds its own control on top. Under Customize, Connectors, each tool of a connector can be set to Always allow, to Blocked, or to ask each time. Allowing a call in Claude is Claude's setting and applies nothing to Google Ads: the change still waits on its page in Adrails. A permission never goes beyond your role in the workspace, and a connection stays in the workspace you chose.
05
Read results without an export
performance_period reads one Google Ads account over an exact date range, up to 400 days, at the account, campaign, ad group, asset group or ad level: spend, results, revenue, ROAS, CPA, impressions, clicks, CTR, CPC and CPM. Give it a second range and it returns each entity's change, the week on week or month on month table most reviews start from. reporting_overview reads every connected account of the workspace at once over its latest synced window, Google Ads and Meta side by side.
campaigns_structure returns how the account is built as of the last sync: each campaign's type, status, budget and bidding, each ad group's keywords with match types and quality scores, and each ad's headlines, descriptions, final URL and review status. findings_review returns what the Adrails rule engine found on the Google Ads campaigns, each finding with its evidence and snapshot date. With Shopify or Stripe connected, store_revenue sets the store's gross, refunded and net revenue next to the spend for the same dates.
One read is Meta only. budget_recommend, which says whether to keep, raise, cut or investigate a budget, reads Meta's daily rows. For a Google Ads budget question, Claude compares two complete periods with performance_period against the campaign's bidding target from campaigns_structure, which is what the tool itself tells it to do.
06
Research keywords and copy before you build
google_keyword_planner runs Google's Keyword Planner on your own account. In volumes mode it returns the monthly searches and the top-of-page bid range of up to 200 keywords; in ideas mode it suggests keywords from a few words or a page of your site, most searched first. Counts are for the countries and the language you name, or everywhere.
site_brief reads a public page or store you name and, for a Google Ads account, suggests Search keywords, headlines of 30 characters and descriptions of 90 for a build. google_ads_library lists the account's pictures and audiences so a new campaign reuses them, and targeting_options looks up the real IDs of locations and languages. None of these changes anything, so a read-only connection can do all of it.
07
Build and edit campaigns from the chat
google_ads_build prepares a new Search, Display, Demand Gen or Performance Max campaign with its ad groups, keywords and ads or its asset groups, new ad groups under an existing campaign, or new ads in an existing ad group. A responsive search ad takes 3 to 15 headlines of 30 characters and 2 to 4 descriptions of 90. A Google Drive folder of creatives becomes a Demand Gen campaign or a Performance Max asset group; its videos need their YouTube IDs, because Google plays video from YouTube only. Everything is created paused, and nothing spends until someone switches it on.
google_ads_edit changes what already runs: headlines, descriptions, paths and final URLs, keywords added or removed, names, campaign dates, target CPA or target ROAS, Performance Max asset group texts, extensions, locations and languages, search themes and audience signals. Google validates the edit when Claude prepares it and again when it is applied, all or nothing. campaigns_duplicate_to_draft copies a Google Ads campaign, paused, with its targeting, bidding, budget, extensions, keywords and ads, and campaigns_split_test tests new headlines and descriptions against a responsive search ad that already runs.
Two campaign types stay outside the chat. Shopping campaigns are built in the Adrails campaign editor, and Video campaigns are read and edited, not created.
08
Pause, resume and move budgets
campaigns_set_status pauses or resumes one campaign, ad group or ad. campaigns_change_budget raises or lowers a campaign's daily budget by an amount or a percentage. Google Ads keeps budgets on campaigns, so a budget shared between campaigns is refused.
The same limits hold whoever asks. The evidence behind a change is at most 24 hours old. A budget moves by at most 30% in one change and stays at or under 100,000 a day in the account's currency, and an increase needs at least one result and spend of at least one daily budget. After a pause, a resume or a budget move goes live, Adrails measures the results 24 hours, 3 days and 7 days later, and actions_recent brings them back into the chat.
09
What happens between the chat and Google Ads
A tool that changes Google Ads returns a link instead of a result. The Review advertising change page in Adrails names the AI client, the workspace and the Google Ads account, and shows the change field by field. An owner or admin of the workspace applies it or declines it there. On apply, Adrails reads Google Ads again and applies the exact change once, or blocks it if the campaign changed in the meantime. A proposal expires after 30 minutes, so an old suggestion cannot go live by accident.
A pause, a resume or a budget move can be undone with actions_undo while Google Ads still holds what Adrails wrote; a later change made directly in Google Ads is never overwritten. New campaigns and Google Ads edits cannot be undone: pause or edit them instead.
- Claude prepares the exact change and returns its link
- An owner or admin applies it in Adrails within 30 minutes
- Adrails reads Google Ads again, then applies it once or blocks it
- Pauses, resumes and budget moves: measured at 24 hours, 3 days and 7 days, and reversible
- Builds are created paused; edits are validated twice, all or nothing
10
Keep it running when the chat is closed
A conversation ends; the account keeps spending. workflows_manage creates an automation from one of the workspace's templates, such as Weekly review or CPA alert, and its ad steps can read Google Ads instead of Meta. channels_manage sets up the Slack, Discord or email channel it posts to. Both need the Manage automations permission, granted by an owner or admin, and an enabled automation acts only within its product limits.
11
Limits worth knowing
A connection works in one workspace and runs one call at a time; a second call sent meanwhile is refused and can be sent again. Each access token makes at most 60 calls a minute, and at most 10 of them can be changes. A result over 256,000 bytes is refused whole rather than cut, so ask for a shorter period or fewer campaigns. Structure and findings come from the last sync, while performance_period reads Google Ads itself.
A tool call uses no Adrails agent credit, because Claude's model does the reasoning. The free Preview is read-only, so preparing a change needs a paid plan, from $149 a month with unlimited ad accounts. For a report no tool covers, add Google's server next to Adrails: Claude Code accepts both at once and picks the tool from your question.
Read or change
What Claude reads and what it can change on Google Ads
Reads run as soon as Claude calls them. Every change is prepared in the chat and applied in Adrails.
| Job | Tool | Reads or changes | Limit |
|---|---|---|---|
| Results over exact dates | performance_period | Reads | 400 days at most per range |
| Every account at once, and findings | reporting_overview, findings_review | Reads | Latest synced window |
| How the account is built | campaigns_structure | Reads | As of the last sync |
| Keyword volumes and ideas | google_keyword_planner | Reads | Up to 200 keywords per call |
| Pictures, audiences, locations, languages | google_ads_library, targeting_options | Reads | Candidates, not choices |
| New campaign, ad groups or ads | google_ads_build | Changes, prepared | Created paused, no undo |
| Ad texts, keywords, targets, extensions | google_ads_edit | Changes, prepared | All or nothing, no undo |
| Pause or resume | campaigns_set_status | Changes, prepared | Undo while Google Ads still matches |
| Daily budget | campaigns_change_budget | Changes, prepared | 30% per change, no shared budgets |
| Copy of a campaign | campaigns_duplicate_to_draft | Changes, prepared | Built paused, needs fresh data |
From the Adrails MCP tools reference and the undo rules in the Adrails docs, on 6 October 2026.
Go further
Read more
- Claude and AdrailsAdd Adrails in Claude, step by step, and what Claude can do on your accounts.
- Google Ads in AdrailsWhat Adrails reads and does on Google Ads, and whether new connections are open.
- Connect Meta Ads and Google Ads to Claude and ChatGPTAdd the Adrails server to Claude, Claude Code, ChatGPT or Codex, then choose the permissions.
- Undo and safety limitsWhat a change shows, the limits it stays within, and what can be undone.
- MCP tools referenceEvery tool, its inputs, what it reads or changes and who can call it.
FAQ
Common questions
Can Claude manage Google Ads?
Not on its own: Claude cannot reach a Google Ads account without a connector. With the Adrails MCP server it reads results, researches keywords, and prepares builds, edits, pauses and budget moves that go live once an owner or admin applies them in Adrails.
Is there an official Google Ads connector for Claude?
Google publishes an open source Google Ads MCP server with three read-only tools. You run it yourself, locally or on Cloud Run, with credentials from a Google Cloud project, and it changes nothing. Adrails is hosted, signs in from the browser, and also builds and edits.
Do I need a Google Ads developer token or a Google Cloud project?
Not with Adrails. Google Ads is connected once in the Adrails workspace, and Claude signs in to Adrails with OAuth. Tool results never contain Google credentials.
Which Claude plans can add the connector?
Claude's help center lists custom connectors on Free, limited to one, and on Pro, Max, Team and Enterprise. On the Adrails side a tool call uses no agent credit, and preparing a change needs a paid plan, from $149 a month.
Does allowing a tool call in Claude change my campaign?
No. The prompt is Claude's own setting. The change waits on its page in Adrails until an owner or admin applies it, and expires after 30 minutes if nobody does.
Can I connect Google Ads to Adrails today?
Not yet for a new workspace. Google Ads opens once Google finishes verifying Adrails. Connect Meta for now. A workspace that already connected Google Ads can use every tool in this guide today.
Next