Skip to Content
Google Ads keyword research

Get keyword metrics

Get average monthly searches, competition and bid ranges for a specific list of up to 200 keywords, with no expansion.

POSThttps://api.rankparse.com/v1/google-ads/keyword-metricsFree (daily caps apply)API key + connected Google Ads account

Returns metrics for an explicit list of keywords, with no expansion into related terms. Use it when you already have keywords and want them sized. It returns volume and competition, never rankings. To discover new keywords, use Get keyword ideas.

Each call counts as one request against your daily cap, whether it carries 1 keyword or 200, and only after Google answers successfully.

Body parameters

Send JSON with Content-Type: application/json. A body that is not valid JSON returns 400 invalid_json.

keywordsarray of stringsrequired

Keywords to look up. Blank entries are ignored. At most 200 are used: the rest are dropped and truncated is true. An empty or missing list returns 400 missing_keywords.

languagestringdefault languageConstants/1000

Google language resource name. 1000 is English. Must match languageConstants/<digits>, otherwise 400 invalid_language.

geo_target_constantsarray of stringsdefault ["geoTargetConstants/2840"]

Google location resource names. 2840 is the United States. Each must match geoTargetConstants/<digits>, otherwise 400 invalid_geo_target. Only the first 10 are used.

keyword_plan_networkstringdefault GOOGLE_SEARCH

GOOGLE_SEARCH or GOOGLE_SEARCH_AND_PARTNERS. Any other value falls back to the default.

include_adult_keywordsbooleandefault false

Only the literal true turns it on. The REST route accepts it; the MCP tool does not expose it.

Response

dataarray

One entry per keyword Google returned metrics for.

Show properties
keywordstring

The keyword text.

close_variantsarray of strings

Close variants Google groups with this keyword. Empty when none.

metricsobject

avg_monthly_searches, competition, competition_index, low_top_of_page_bid_micros and high_top_of_page_bid_micros. Any can be null. Field meanings are on Get keyword ideas.

totalinteger

Entries in data.

requestedinteger

Keywords actually sent to Google, after trimming to 200.

truncatedboolean

true when you sent more than 200 keywords. Treat the missing ones as "not asked for", not "no data".

max_keywordsinteger

The per-call limit (200).

customer_idstring

The Google Ads account the call ran against.

Errors

HTTPCodeWhen
400invalid_jsonThe request body is not valid JSON.
400missing_keywordskeywords is missing, not an array, or has no non-blank entry.
400invalid_languagelanguage is not a resource name like languageConstants/1000.
400invalid_geo_targetgeo_target_constants is not an array of names like geoTargetConstants/2840.
400google_ads_not_connected, google_ads_no_account_selectedConnect Google Ads, or select an account, in the dashboard.
429google_ads_user_quota_exceeded, google_ads_daily_quota_exceededA daily cap was reached. See retry_after.

The other Google Ads errors (token, access and quota failures) are listed in the overview.

MCP tool: get_google_ads_keyword_metrics (accepts keywords, language, geo_target_constants, keyword_plan_network).