KeywordPerformanceReportRequest Data Object - Reporting

Defines a keyword performance report request. Use this report to find out which keywords are performing well and those that are not.

You can request impressions, clicks, spend, and average cost per click for your landing pages. Once downloaded, this data can be sorted by keyword, account, campaign, and ad group.

To request a report of this type, pass this object to the SubmitGenerateReport operation.


You should not use this report to get performance data for Microsoft Shopping Campaigns. It is only applicable for other campaign types.


<xs:complexType name="KeywordPerformanceReportRequest" xmlns:xs="">
  <xs:complexContent mixed="false">
    <xs:extension base="tns:ReportRequest">
        <xs:element name="Aggregation" type="tns:ReportAggregation" />
        <xs:element name="Columns" nillable="true" type="tns:ArrayOfKeywordPerformanceReportColumn" />
        <xs:element minOccurs="0" name="Filter" nillable="true" type="tns:KeywordPerformanceReportFilter" />
        <xs:element minOccurs="0" name="MaxRows" type="xs:int" />
        <xs:element name="Scope" nillable="true" type="tns:AccountThroughAdGroupReportScope" />
        <xs:element minOccurs="0" name="Sort" nillable="true" type="tns:ArrayOfKeywordPerformanceReportSort" />
        <xs:element name="Time" nillable="true" type="tns:ReportTime" />


The KeywordPerformanceReportRequest object has the following elements: Aggregation, Columns, Filter, MaxRows, Scope, Sort, Time.

Element Description Data Type
Aggregation The type of aggregation to use to aggregate the report data. For example, you can aggregate the report data by day or week, or request a summary report.

The default aggregation is Summary. It is important to note that if you do not include TimePeriod in the list of Columns, the aggregation you chose will be ignored and Summary aggregation will be used regardless.
Columns The list of attributes and performance statistics to include in the report. The report will include the columns in the order that you specify them. KeywordPerformanceReportColumn array
Filter The filter information to use to filter the report data. KeywordPerformanceReportFilter
MaxRows The top number of data rows to return in the report. int
Scope The entity scope of the report.

Use this element to limit the report data to specific accounts, ad groups, or campaigns.
Sort A list of the columns to sort, and the corresponding sort order. KeywordPerformanceReportSort array
Time The time period to use for the report. You can specify a custom date range or select a predefined date range, for example, Today or ThisWeek.

For a list of the time periods that you can specify for each aggregation type, see Aggregation and Time.

You can set the time zone within the ReportTime object, which helps you accurately scope data for the requested time period.

If you do not choose a time zone, the Reporting service uses PacificTimeUSCanadaTijuana by default.

The KeywordPerformanceReportRequest object has Inherited Elements.

Inherited Elements

Inherited Elements from ReportRequest

The KeywordPerformanceReportRequest object derives from the ReportRequest object, and inherits the following elements: ExcludeColumnHeaders, ExcludeReportFooter, ExcludeReportHeader, Format, FormatVersion, ReportName, ReturnOnlyCompleteData. The descriptions below are specific to KeywordPerformanceReportRequest, and might not apply to other objects that inherit the same elements from the ReportRequest object.

Element Description Data Type
ExcludeColumnHeaders Determines whether or not the downloaded report should contain header descriptions for each column. The report column header matches the requested column name e.g. Impressions and Clicks.

Set this property true if you want the report column headers excluded from the downloaded report. The default value is false.
ExcludeReportFooter Determines whether or not the downloaded report should contain footer metadata such as Microsoft copyright (@2020 Microsoft Corporation. All rights reserved.).

Set this property true if you want the report footer metadata excluded from the downloaded report. The default value is false.
ExcludeReportHeader Determines whether or not the downloaded report should contain header metadata such as report name, date range, and aggregation.

Set this property true if you want the report header metadata excluded from the downloaded report. The default value is false.
Format The format of the report data. For example, you can request the data in comma-separated values (Csv) format or tab-separated values (Tsv) format.

The default value is Csv.

All downloaded files are ZIP compressed.
FormatVersion Determines the format for certain fields in the downloaded report file.

The data format for certain fields can be updated within the current API version without breaking existing client applications. You can get the latest data format by setting this optional request field to 2.0. If you do not set this field, the service defaults to version 1.0.

For details about changes between format versions, see Report Format Version.
ReportName The name of the report. The name is included in the report header. If you do not specify a report name, the system generates a name in the form, ReportType-ReportDateTime.

The maximum length of the report name is 200.
ReturnOnlyCompleteData Determines whether or not the service must ensure that all the data has been processed and is available.

If set to true and if the system has not finished processing all the data based on the requested Aggregation, Scope, and Time, the service returns error code NoCompleteDataAvaliable (2004). Otherwise by default the request can succeed, there is no indication as to whether the data is complete, and the report will contain only the data that the system has finished processing at the time of the request.

Please note that because today is still in progress and data is not complete, you cannot set this element to true if the Time period (whether custom or predefined date) includes today's date. For more information, see Time Zones in Reporting.


Service: ReportingService.svc v13