Listing group filters in batch jobs

When working with listing group filters in the context of an AdGroupCriterion.listing_group or an AssetGroupListingGroupFilter, there are a few considerations you should take into account when designing your integration.

Batch splitting

If there are any operations in a batch job that contain ad group criteria or asset group listing group filters, the operations in the batch job are split into multiple sub-batches when received by the Google Ads API server. Note that unlike standard operations in a batch job, each sub-batch containing listing group filter operations is treated atomically.

The way in which batch jobs containing listing group filters are split into sub-batches is determined by the following factors:

  1. Type of listing group filter
  2. The AdGroupCriterion or AssetGroup the listing group filter is targeting
  3. Order of operations

Keep in mind these points on how operations are grouped:

  • All consecutive AssetGroupListingGroupFilterOperation operations targeting the same AssetGroup are grouped together in an atomic sub-batch (no partial failure behavior).
  • All consecutive AdGroupCriterionOperation operations that contain a listing_group targeting the same AdGroup are grouped together in an atomic sub-batch (no partial failure behavior).
  • All other consecutive operations are grouped together in non-atomic sub-batches (partial failure behavior).

The diagram below illustrates this concept. Each of the gray boxes represents a batch job as submitted using the Google Ads API. Within the gray boxes, the individual operations are grouped by color to represent the sub-batches that the Google Ads API server creates. The order of the operations in each of the gray boxes corresponds to the order in which the operations would have been added to the batch job.

image

Limitations

When working with listing group filters in the context of batch jobs, the following limitations apply:

  • A single batch of AssetGroupListingGroupFilterOperation operations containing a listing_group and targeting the same AdGroup cannot exceed 20,000 operations in length. However, it is recommended not to exceed 10,000 operations.
  • A single batch of AssetGroupListingGroupFilterOperation operations targeting the same AssetGroup cannot exceed 10,000 operations.
  • Violating either of these conditions results in the entire batch job failing.