This page explains the differences when working with a keyword plan using the Google Ads API versus the UI. We also give some recommendations on how to avoid mismatches in historical metrics when mixing usage.
As of version v11 of the Google Ads API,
exposes only a
forecast_period setting at the plan level.
Other settings such as geo targets, network settings, and language targets
are available only at the
The Google Ads UI exposes these settings at the plan level and doesn't expose the
The difference between how the API and UI treat keyword plans can result in seeming discrepancies when comparing results between the two. To avoid misinterpreting the results, keep the following rules in mind:
The Google Ads API always uses the settings at the
The Google Ads UI always uses the settings at the
KeywordPlanlevel. However, these settings are not currently accessible to the API.
If you create a
KeywordPlanusing the Google Ads API, it shows up in the UI as targeting all locations and languages.
The UI also shows various metrics for all locations and languages; the settings at the underlying
KeywordPlanCampaignare ignored by the UI. The UI might also prevent you from editing these keyword plans.
If you create a
KeywordPlanusing the UI, the Google Ads UI sets geo targets for the underlying
KeywordPlanCampaignunder certain conditions.
These settings are not presented to you on the UI, which can lead to a mismatch in metrics when comparing them against the values retrieved using the API.
Editing the keyword plan settings in the UI can also cause the API and UI metrics to diverge.
When possible, avoid mixing the keyword plans created by the API and the UI.
When investigating metric mismatches between the API and the UI for a given keyword plan, take these steps:
KeywordPlanusing the following query.
SELECT keyword_plan.resource_name, keyword_plan.name FROM keyword_plan WHERE keyword_plan.name = 'YOUR_PLAN_NAME'
KeywordPlanCampaignusing the following query.
SELECT keyword_plan_campaign.resource_name, keyword_plan_campaign.geo_targets, keyword_plan_campaign.keyword_plan_network, keyword_plan_campaign.language_constants FROM keyword_plan_campaign WHERE keyword_plan.resource_name = 'YOUR_PLAN_RESOURCE_NAME'
Create a new keyword plan in the UI using these settings and use it to compare the results.