google_ads_search_terms_analyze
Analyze Google Ads search term overlap and N-gram distribution to find keyword and negative keyword candidates, with insights on cost and conversions.
Instructions
Analyze keyword/search-term overlap and N-gram distribution for a Google Ads campaign. Returns {campaign_id, period, registered_keywords_count, search_terms_count, overlap_rate (0.0-1.0), ngram_distribution:{unigrams, bigrams, trigrams} (each top-10 of {text, count, cost, conversions}), keyword_candidates:[{search_term, conversions, cost, clicks}] (CV>0 and not yet registered), negative_candidates:[{search_term, cost, clicks, impressions}] (top 20 by cost with cost>0 and conversions=0), insights:[strings]}. Read-only. For rule-scored add/exclude/watch buckets use google_ads_search_terms_review; for the raw unscored term log use google_ads_search_terms_report.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Reporting window for the metrics. Default 'LAST_30_DAYS'. Use a shorter window (LAST_7_DAYS / LAST_14_DAYS) when diagnosing recent changes; use LAST_90_DAYS for trend baselines. Also accepts an explicit range in GAQL spelling — "BETWEEN 'YYYY-MM-DD' AND 'YYYY-MM-DD'", both endpoints inclusive, in the account's time zone — for a window no trailing constant can reach (e.g. a single past calendar month). One asymmetry to know about: every constant except LAST_90_DAYS is resolved by Google Ads in the account's reporting time zone, whereas LAST_90_DAYS has no API constant and is expanded by mureo into the 90 days ending yesterday **on the server's date**, so its edges can differ by a day when the server and the account are in different zones. Pass an explicit range when the exact boundary matters. | |
| campaign_id | Yes | Campaign ID as a numeric string without dashes (e.g. '23743184133'). Obtain via google_ads_campaigns_list. | |
| customer_id | No | Google Ads customer ID as a 10-digit string without dashes (e.g. '1234567890'). Optional — falls back to GOOGLE_ADS_CUSTOMER_ID / GOOGLE_ADS_LOGIN_CUSTOMER_ID from the configured credentials when omitted. |