As you could imagine, Google has a lot of historical data about keywords and the traffic they generate. Harnessing this data can give you a helpful starting point when you're trying to choose cost-per-click (CPC) bid ranges and keywords for a new product, for which you have no historical keyword or bid data in your own account.
AdWords API users can access our trove of historical keyword and bid data via the Traffic Estimator Service, which gives detailed estimates of how much traffic a keyword may generate at various CPC values. The service is not only useful for new products or campaigns, but it can also estimate the impact of changing the Max CPC of existing keywords as well.
Let's say you'd like estimates for keywords in a new campaign. Below are some tips on deciding whether estimateKeywordList() or estimateCampaignList() is right for you. These two methods are similar, but vary in how much control you have to configure campaign settings when requesting estimates.
Method 1: estimateKeywordList()
Because there are only a few parameters to configure,
estimateKeywordList() is the most straightforward method to use. To estimate the traffic for the keyword
sample with
Broad matching and a Max CPC of $1.00 (
1,000,000 micros), you could use this SOAP body:
<estimateKeywordList>
<keywordRequests>
<maxCpc>1000000</maxCpc>
<text>sample</text>
<type>Broad</type>
</keywordRequests>
</estimateKeywordList>
However, it's important to understand the assumptions that are factored into that estimate, because they might not match the settings you'd like for your campaign. This method assumes that the
network targeting of the hypothetical campaign is
GoogleSearch, which means ads run only on Google search result pages. (Read more information on network targeting
here.) Also assumed in the keyword estimates are a
language targeting of 'English' (language code
en) and a location targeting of 'All Countries and Territories'.
The implicit Google search network and English language targeting mean that you'll often get much lower estimates from
estimateKeywordList() than you would expect--and sometimes, especially for non-English keywords, you won't get any meaningful results at all.
Method 2: estimateCampaignList()
If you expect your campaign to use different targeting options from those of
estimateKeywordList()'s defaults, you might want to use the more flexible
estimateCampaignList() method instead. To give a basic example, the following SOAP request is equivalent to the previous
estimateKeywordList() request and should give identical results:
<estimateCampaignList>
<campaignRequests>
<adGroupRequests>
<keywordRequests>
<text>sample</text>
<type>Broad</type>
</keywordRequests>
<maxCpc>1000000</maxCpc>
</adGroupRequests>
<networkTargeting>
<networkTypes>GoogleSearch</networkTypes>
</networkTargeting>
<languageTargeting>en</languageTargeting>
<geoTargeting>
<targetAll>true</targetAll>
</geoTargeting>
</campaignRequests>
</estimateCampaignList>
To expand on that basic example, let's say you're thinking of running a campaign that targets users in Mexico and Spain who speak Spanish. You'd like to run this campaign with both
SearchNetwork and
ContentNetwork targeting. A request that takes those constraints into account and provides an estimate for the
Broad-matched keyword
muestra with a Max CPC of
1,000,000 micros would look like the following:
<estimateCampaignList>
<campaignRequests>
<adGroupRequests>
<keywordRequests>
<text>muestra</text>
<type>Broad</type>
</keywordRequests>
<maxCpc>1000000</maxCpc>
</adGroupRequests>
<networkTargeting>
<networkTypes>SearchNetwork</networkTypes>
<networkTypes>ContentNetwork</networkTypes>
</networkTargeting>
<languageTargeting>es</languageTargeting>
<geoTargeting>
<countryTargets>
<countries>MX</countries>
<countries>ES</countries>
</countryTargets>
</geoTargeting>
</campaignRequests>
</estimateCampaignList>
The estimates this request returns will likely be different from the results of a generic
estimateKeywordList() call, and they'll be more accurate for your given scenario.
Estimating keyword traffic and CPC bids isn't an exact science, but if you use the right method of the TrafficEstimatorService, you'll often get valuable information that can help you plan your new campaigns. And although using
estimateCampaignList() requires a bit more configuration than the more straightforward
estimateKeywordList(), the extra effort is a worthwhile trade-off for the increased flexibility and accuracy when working with campaigns that have non-default settings.
--
Jeffrey Posnick, AdWords API Team