Getting different results for Traffic Estimate from API compared to Google Ads UI

69 views
Skip to first unread message

Suresh Kumar Shenbagam

unread,
Nov 27, 2019, 9:38:36 AM11/27/19
to AdWords API and Google Ads API Forum
Hi,

I am trying to retrieve traffic estimate for a particular keyword, but the results are different from API against Ads UI.
Here is my SOAP request: I can send the customer id privately.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <soapenv:Header>
        <ns1:RequestHeader xmlns:ns1="https://adwords.google.com/api/adwords/o/v201809" soapenv:mustUnderstand="0">
            <ns2:clientCustomerId xmlns:ns2="https://adwords.google.com/api/adwords/cm/v201809">XXXXX</ns2:clientCustomerId>
            <ns3:developerToken xmlns:ns3="https://adwords.google.com/api/adwords/cm/v201809">REDACTED</ns3:developerToken>
            <ns4:userAgent xmlns:ns4="https://adwords.google.com/api/adwords/cm/v201809">unknown (AwApi-Java, AdWords-Axis/4.8.0, Common-Java/4.8.0, Axis/1.4, Java/1.8.0_202, maven)</ns4:userAgent>
            <ns5:validateOnly xmlns:ns5="https://adwords.google.com/api/adwords/cm/v201809">false</ns5:validateOnly>
            <ns6:partialFailure xmlns:ns6="https://adwords.google.com/api/adwords/cm/v201809">false</ns6:partialFailure>
        </ns1:RequestHeader>
    </soapenv:Header>
    <soapenv:Body>
            <selector>
                <campaignEstimateRequests>
                    <adGroupEstimateRequests>
                        <keywordEstimateRequests>
                            <keyword>
                                <ns7:text xmlns:ns7="https://adwords.google.com/api/adwords/cm/v201809">agency</ns7:text>
                                <ns8:matchType xmlns:ns8="https://adwords.google.com/api/adwords/cm/v201809">BROAD</ns8:matchType>
                            </keyword>
                        </keywordEstimateRequests>
                        <maxCpc>
                            <ns9:microAmount xmlns:ns9="https://adwords.google.com/api/adwords/cm/v201809">4000000</ns9:microAmount>
                        </maxCpc>
                    </adGroupEstimateRequests>
                </campaignEstimateRequests>
            </selector>
        </get>
    </soapenv:Body>
</soapenv:Envelope>

---------------------------------

API response: (min ~ max = avg) - As instructed here, money value is divided by 1000000 to return correctly
Estimated average CPC: 1.15 ~ 1.41 = 1.28
Estimated ad position: 1.41 ~ 1.15 = 1.28
Estimated daily clicks: 126.27 ~ 154.33 = 140.30
Estimated daily cost: 161.84 ~ 197.81 = 179.83
Estimated impressions: 2910.54 ~ 3557.32 = 3233.93
Estimated clickthroughrate: 0.04 ~ 0.05 = 0.04

-----------------------------------
Google Ads UI result

agency_broad_keyword_plan.png

Please let me know how to achieve the same results from API as Ads UI.



Suresh

Google Ads API Forum Advisor Prod

unread,
Nov 27, 2019, 2:23:30 PM11/27/19
to suresh.s...@cloudsense.com, adwor...@googlegroups.com

Hi Suresh,

As you have already seen that the returned object KeywordEstimate in the response from a TrafficEstimatorService request will only contain estimates at the keyword level, so it won't give you the headings you see in the Google Ads UI. Please check out this guide for Estimating Traffic for the overview of the service and mapping between API and Keyword Planner tool.

Thanks and regards,
Xiaoming, Google Ads API Team



ref:_00D1U1174p._5001UODOUk:ref

Suresh Kumar Shenbagam

unread,
Nov 28, 2019, 2:13:06 AM11/28/19
to AdWords API and Google Ads API Forum
Hi,

Thanks for the response. I went thru the guide you mentioned, but need more clarification on the point,

"To use the TrafficEstimatorService for this, you need to specify either a pre-existing campaign, or create a mock campaign, complete with ad groups and keywords:" - Does this mean, is it mandatory to set the campaign id and agroupid in CampaignEstimateRequest and AdGroupEstimateRequest respectively? what do you mean by create a mock campaign?

What is the default value for MaxCPC in AdGroupEstimateRequest, if not provided?

How can I set existing adgroup id and campaign id in google ads ui keyword planner tool  ?

What are the parameters has to be set in TrafficEstimatorService API to retrieve results same as Google Ads UI?

Suresh

Suresh Kumar Shenbagam

unread,
Nov 28, 2019, 5:51:52 AM11/28/19
to AdWords API and Google Ads API Forum
Hi,

And one more thing,

Clicks, Impressions, Cost are not completely matching. Am able to get the results close by doing the following calculation, let me know if that's right.

To calculate,

Average CPC: ( (min money + max money) / 2 )  / 1000000
average position: (min value + max value) / 2
clicks:  ( ( (min value + max value) / 2 )  / 5 )  * 100 - not sure what 5 is - but it does give me the result almost matching
cost:  ( ( min value + max value ) / 2 ) / 10000
impressions: (min value + max value ) * 10 - also not sure why 10 - it does give me the expected close result
CTR: (  (min value + max value) / 2  )  * 100 

Please let me the know the above calculations are right.

Suresh

Suresh Kumar Shenbagam

unread,
Nov 29, 2019, 5:37:45 AM11/29/19
to AdWords API and Google Ads API Forum
Hi,

How to download Traffic Estimator Service response as CSV using Google Adwords Java API?

Suresh

Google Ads API Forum Advisor Prod

unread,
Dec 2, 2019, 3:50:53 PM12/2/19
to suresh.s...@cloudsense.com, adwor...@googlegroups.com

Hi Suresh,

1. To retrieve traffic estimates, you must either specify existing campaigns and ad groups, or configure proposed campaigns and ad groups by setting the CampaignEstimateRequest and AdGroupEstimateRequest.

2. Create a mock campaign means if you don’t have pre-existing campaigns and ad groups you have to create them by configuring proposed campaigns and ad groups by setting the CampaignEstimateRequest and AdGroupEstimateRequest.

3. The value for MaxCPC in AdGroupEstimateRequest needs to be specified manually. If not specified, there won’t be any value for the MaxCPC in AdGroupEstimateRequest.

4. You won’t be able to set existing adgroup id and campaign id in Google Ads UI keyword planner tool.

5. Please follow this guide to submit the request to get the traffic estimates.

6. The returned object KeywordEstimate in the response from a TrafficEstimatorService request will only contain estimates at the keyword level, so it won't give you the headings you see in the Google Ads UI. The calculation of the avg based on the max and min is not accurate.

7. Please refer to this code example on how to generate results in CSV format.



Thanks and regards,
Xiaoming, Google Ads API Team



ref:_00D1U1174p._5001UODOUk:ref
Reply all
Reply to author
Forward
0 new messages