google_ads_get_geo_performance

Get Google Ads Geographic Performance

Google

Description

Get geographic performance data from the geographic_view resource. Only ONE geo level per query. Returns both AREA_OF_INTEREST and LOCATION_OF_PRESENCE location types with auto-resolved location names. Includes a parallel conversion action breakdown. Location names are resolved automatically from criterion IDs.

Read-onlyIdempotentOpen-world

Usage

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "google_ads_get_geo_performance",
    "arguments": {
      "customer_id": "1234567890",
      "date_preset": "LAST_7_DAYS",
      "geo_level": "country",
      "reason": "Compare spend by country"
    }
  }
}
hopkin google geo-performance get
FlagTypeRequiredDescription
--customer-idstringRequiredThe Google Ads Customer ID (10 digits, with or without dashes)
--login-customer-idstringOptionalMCC (Manager) Customer ID; required for managed accounts
--date-presetstringOptionalPredefined date range: TODAY, YESTERDAY, LAST_7_DAYS, LAST_30_DAYS, THIS_MONTH, LAST_MONTH
--date-rangeobjectOptionalCustom date range {start_date, end_date} in YYYY-MM-DD
--geo-levelstringOptionalGeographic granularity. "country" uses geographic_view.country_criterion_id; others add a segments.geo_target_* drill-down. Only one geo level per query.
--levelstringOptionalEntity breakdown level
--segmentsarrayOptionalAdditional non-geo segments: date, device, ad_network_type
--campaignstringOptionalFilter to a specific campaign ID
--ad-group-idstringOptionalFilter to a specific ad group ID
--limitnumberOptionalMax rows returned (default 50, max 200)
--include-all-conversionsbooleanOptionalWhen true, includes an additional all-conversions breakdown (metrics.all_conversions, all_conversions_value, value_per_all_conversions) segmented by conversion_action_name. This captures ALL conversion actions including those not marked "Include in Conversions".
{
  "mcpServers": {
    "google-ads": {
      "url": "https://mcp.hopkin.ai/google-ads/mcp",
      "transport": "sse"
    }
  }
}
  • Country performance
  • City-level breakdown
  • Country by campaign

Parameters

NameTypeRequiredDescription
customer_id string Required The Google Ads Customer ID (10 digits, with or without dashes)pattern: ^[\d-]+$
reason string Required Why this tool call is neededminLength: 1, maxLength: 500
Optional parameters (10)
NameTypeRequiredDescription
login_customer_id string Optional MCC (Manager) Customer ID; required for managed accountspattern: ^[\d-]+$
date_preset string Optional Predefined date range: TODAY, YESTERDAY, LAST_7_DAYS, LAST_30_DAYS, THIS_MONTH, LAST_MONTH
TODAY YESTERDAY LAST_7_DAYS LAST_30_DAYS THIS_MONTH LAST_MONTH
date_range object Optional Custom date range {start_date, end_date} in YYYY-MM-DD
geo_level string Optional Geographic granularity. "country" uses geographic_view.country_criterion_id; others add a segments.geo_target_* drill-down. Only one geo level per query.
country geo_target_city geo_target_region geo_target_state geo_target_metro geo_target_province geo_target_county geo_target_district geo_target_most_specific_location geo_target_postal_code geo_target_airport geo_target_canton
level string Optional Entity breakdown level
ACCOUNT CAMPAIGN AD_GROUP
segments array Optional Additional non-geo segments: date, device, ad_network_type
campaign_id string Optional Filter to a specific campaign IDpattern: ^\d+$
ad_group_id string Optional Filter to a specific ad group IDpattern: ^\d+$
limit number Optional Max rows returned (default 50, max 200)min: 1, max: 200
include_all_conversions boolean Optional When true, includes an additional all-conversions breakdown (metrics.all_conversions, all_conversions_value, value_per_all_conversions) segmented by conversion_action_name. This captures ALL conversion actions including those not marked "Include in Conversions".

Examples

Country performance

{
  "customer_id": "1234567890",
  "date_preset": "LAST_7_DAYS",
  "geo_level": "country",
  "reason": "Compare spend by country"
}

hopkin google geo-performance get --customer-id 1234567890 --date-preset LAST_7_DAYS --geo-level country

City-level breakdown

{
  "customer_id": "1234567890",
  "date_preset": "LAST_30_DAYS",
  "geo_level": "geo_target_city",
  "level": "CAMPAIGN",
  "reason": "City performance analysis"
}

hopkin google geo-performance get --customer-id 1234567890 --date-preset LAST_30_DAYS --geo-level geo_target_city --level CAMPAIGN

Country by campaign

{
  "customer_id": "1234567890",
  "date_preset": "LAST_7_DAYS",
  "geo_level": "country",
  "level": "CAMPAIGN",
  "segments": [
    "date"
  ],
  "reason": "Daily country trends per campaign"
}

hopkin google geo-performance get --customer-id 1234567890 --date-preset LAST_7_DAYS --geo-level country --level CAMPAIGN --segments date