Skip to content

Build a search terms dashboard in Claude

Builds the Get MCP Ads Search terms template as a Claude dashboard: the top search terms by spend across Search (Dynamic Search Ads and AI Max included), Shopping and Performance Max, each with campaign, ad group, match type, matched keyword, keyword and negative status, brand or non-brand, spend, conversions, value, CTR, CPC, CPA and ROAS, against an equivalent comparison period; spend by campaign type, match type and brand, terms spending without converting, words and word pairs, Performance Max search categories, and what Google does not list reconciled to the campaigns' own totals.

Recipe, Google Ads

Intent A live page showing which real searches the Google Ads money goes to and what they return, so the team can add negatives, promote terms to keywords, tighten match types and weigh brand against non-brand spend.

Steps
5
Tools
2
Rules
6
Failure modes
4
skills/search-terms-dashboard.md

When to use it

Use it when

  • Someone asks where their Google Ads search money goes, which negatives to add, which search terms to turn into keywords, how much broad match or AI Max spends on irrelevant searches, or for a search terms report they can keep in Claude.
  • Before a negative keyword or match type cleanup, and to check afterwards what changed.

Do not use it when

  • Adding negatives or keywords: the dashboard reads only; changes go through the Google Ads tools with preview and confirmation.
  • One search term's figures: answer in the conversation.
  • Hosts without Claude's Dashboard artifact type: answer in the conversation with the matching reports instead.

What it needs first

Required Google Ads

Optional Search Console

Preconditions

  • The organisation is on Team or Enterprise: ready-made dashboards are not offered on Free or Pro.
  • The account is among the chosen accounts, confirmed via list_accounts.

Evidence every conclusion must carry

  • Every figure carries its account, metric and window.
  • Anything below a readable sample size is reported as unjudged, not as zero.
Inputs
InputRequiredWhat it is
brand_termsOnly when the person names them: otherwise detect_brand_terms finds the advertiser's own brand names.

Procedure

In order. Every tool named is one the gateway ships, and links to its reference.

Steps

  1. Resolve the client's workspace and its Google Ads account with list_accounts.
  2. Detect the brand without asking first: detect_brand_terms with the workspace and that Google Ads account returns the brand terms, their evidence and a hand-over line. If it finds none, build without them.detect_brand_terms
  3. Fetch the search-terms template with the Google Ads account (accounts, with its currency) and the brand_terms found.get_dashboard_template
  4. Create a Dashboard artifact, write every document exactly as given in one batch, read its check, hand over with the lines given.
  5. In the hand-over, say which brand terms split brand from non-brand and why, and that the person can ask to add or remove one.

Decision rules

The observable condition, what it lets you conclude, and what takes the conclusion back.

  • When The template is refused with PLAN_REQUIREDConclude Say the dashboards come with Team and Enterprise and that only the account owner changes the plan; answer the question in the conversation meanwhile.
  • When The person asks which negatives to addConclude Start from the terms flagged no_conversions and the n-grams spending without converting, within one campaign type; check is_keyword and is_excluded first (they are today's state), and prefer a phrase negative on a word pair over many exact negatives. Then propose the change through the Google Ads tools, with preview.
  • When The person asks which terms to promote to keywordsConclude Take converting terms with is_keyword no, triggered by broad match, AI Max or Dynamic Search Ads, and say which ad group they would join; Performance Max and Shopping terms have no keyword to promote from.
  • When A large part of spend is unlistedConclude Say Google lists a term only when enough people searched it; the unlisted part is real spend on searches nobody can name, so judge shares on the listed spend and use the Performance Max search categories, which cover every search, for themes.
  • When The person asks to add or remove a brand termConclude Rebuild with get_dashboard_template and the new brand_terms: the advertiser's own names and spellings only.
  • When A reader sees a source fail to loadConclude Their own Get MCP Ads access decides: check that their connection covers this client's workspace and that their plan includes dashboards before changing the dashboard.

Where the agent stops

The readout changes nothing. Any change it motivates goes through Safe Writes: preview, human confirmation, then apply.

How it goes wrong quietly

The cases where the analysis is wrong and still looks right. Read them before trusting a number.

  • Editing the template's page or queries by hand loses the provenance of each figure: ask for changes by name instead.
  • Adding n-gram rows together: a term counts in every word and word pair it holds.
  • Calling a term new because it has no comparison figure: it may have been under Google's privacy threshold or below the rows read then.
  • Spreading the unlisted spend over the listed terms, or reading a share of listed terms as a share of all search spend.

What the answer contains

What Search terms dashboard returns
SectionWhat it holds
ReadoutThe figures, with windows and accounts named.
FlagsWhat deserves a deeper skill or a human decision.

Manage your ads from your AI assistant

Start for free

Free with 1 ad account, no card. Pro is free for 7 days.