Report from UI different than API download

110 views
Skip to first unread message

adkcos...@gmail.com

unread,
Mar 30, 2016, 1:08:59 PM3/30/16
to AdWords API Forum


Hi,

I am trying to map a report from the UI to the API. Here is the report options I am using:



I created this RD XML based on the report:

<reportDefinition xmlns=\"https://adwords.google.com/api/adwords/reportdownload/v201603/reportDefinition.xsd\">
    <selector>
        <fields>Date</fields>
        <fields>AdNetworkType2</fields>
        <fields>Device</fields>
        <fields>KeywordMatchType</fields>
        <fields>Status</fields>
        <fields>Impressions</fields>
        <fields>Clicks</fields>
        <fields>Cost</fields>
        <fields>AveragePosition</fields>
        <predicates>
            <field>IsNegative</field>
            <operator>IN</operator>
            <values>TRUE</values>
            <values>FALSE</values>
        </predicates>
        <predicates>
            <field>Impressions</field>
            <operator>GREATER_THAN_EQUALS</operator>
            <values>1</values>
        </predicates>
        <dateRange>
            <min>20160329</min>
            <max>20160329</max>
        </dateRange>
    </selector>
    <reportName>Report</reportName>
    <reportType>KEYWORDS_PERFORMANCE_REPORT</reportType>
    <dateRangeType>CUSTOM_DATE</dateRangeType>
    <downloadFormat>CSV</downloadFormat>
</reportDefinition>

However, the total for the date 03-29-2016 and a few other dates I've tried appear to be different. The number of rows are different as well (please see attachment). Is there anything I am missing?

Thanks for the help.

API Download (03-29-2016).csv
Cost Import (03-29-2016).csv

Yin Niu

unread,
Mar 30, 2016, 2:13:03 PM3/30/16
to AdWords API Forum
Hi Jimmy, 

In your report definition, you have Average Position isNetgative in (True, False), which basically has no effect since both True and False values are accepted. For dateRangeType, you could use YESTERDAY. To exclude zero impression, you can set includeZeroImpression header to false or use a predicate like you did. 

For the data mismatch, AdNetworkType2 is a segment field. Also you might want to match keywords for both report types. 

Thanks,
Yin, AdWords API Team. 

adkcos...@gmail.com

unread,
Mar 30, 2016, 2:20:11 PM3/30/16
to AdWords API Forum
Hi,

Thanks for the quick reply. I tracked the difference down to a Display Keyword campaign. I realized the UI does not include this but KEYWORDS_PERFORMANCE_REPORT includes this Display Keyword Campaign. Is this correct? Thanks.

Yin Niu

unread,
Mar 30, 2016, 2:32:09 PM3/30/16
to AdWords API Forum
Hello, 

Keyword performance report is single attribute report. If a keyword triggers an ad on the Display Network or Youtube Network, the ID is represented as ID 3000000. 

In UI, you selected Network(with search partners), that might be the reason the display network keywords are not in the UI report. 

adkcos...@gmail.com

unread,
Mar 30, 2016, 3:09:09 PM3/30/16
to AdWords API Forum
H Yin,

So this means that the KEYWORDS_PERFORMANCE_REPORT includes all campaigns and keywords (marked with the keyword ID 3000000) and metrics from display networks? What does the Avg Position and Network(with search partners) mean for keywords from  the Display Network?

Yin Niu

unread,
Mar 30, 2016, 3:42:14 PM3/30/16
to AdWords API Forum
Hello, 

Please see Average Position help page. The keywords performance report does not have Network(Search Partner) field. You can filter it by using the AdNetworkType1 field. 
Reply all
Reply to author
Forward
0 new messages