rocket
Meet
Merchant API
- the official successor to the Content API for Shopping.
updateGet the latest
on new features, bug fixes, and release updates of the Merchant API.
point_of_sale
Learn how to manage your business and products on Google and how to get programmatic access to
data, insights, and unique capabilities at scale.
Get started with Merchant API today!
Stay organized with collections
Save and categorize content based on your preferences.
Summary
You can use inventory filters to exclude certain products from a Shopping
campaign.To exclude products from Smart Shopping Campaigns, use negative
criteria for listing groups instead.
You can create an inventory filter based on one or more values from
fields like Custom label (0-4) or Product type. When you apply an
inventory filter to a campaign, only offers that match the filter are
advertised. You can create an inventory filter in the Google Ads UI.
The steps in this section use Custom label as an example. You can also do
this with other supported feed attributes, like Product type, Brand, or
Google product category.
Filters follow AND logic. You only see results that match all of the
criteria in your filter.
Manual steps
Here's an example of the manual steps, using the attribute Custom label:
Set the product_custom_attribute.index to 0 (0-4 are
supported).
Set the product_custom_attribute.value to your desired value for the
custom label.
Set the campaign field to the resource_name of the
campaign_criterion you created in the preceding step.
Custom label values can be 1 to 100 characters in length, and there can
be up to 1,000 unique values account-wide for each custom label attribute (up to
5,000 labels total).
[null,null,["Last updated 2025-08-28 UTC."],[[["\u003cp\u003eUse inventory filters to include or exclude specific products from Shopping campaigns, ensuring only relevant offers are advertised.\u003c/p\u003e\n"],["\u003cp\u003eFilters can be created based on attributes like Custom label, Product type, Brand, or Google product category, utilizing 'AND' logic for precise targeting.\u003c/p\u003e\n"],["\u003cp\u003eYou can manage inventory filters manually through the Google Ads UI or automatically via the Google Ads API using listing scopes.\u003c/p\u003e\n"],["\u003cp\u003eCustom labels offer flexibility, allowing up to 1,000 unique values per attribute for refined product categorization within campaigns.\u003c/p\u003e\n"],["\u003cp\u003eRefer to the provided resources for detailed instructions, examples, and further information on implementing inventory filters effectively.\u003c/p\u003e\n"]]],[],null,["# Filter products\n\nSummary\n-------\n\nYou can use inventory filters to exclude certain products from a Shopping\ncampaign.To exclude products from Smart Shopping Campaigns, use [negative\ncriteria for listing groups](/google-ads/shopping/full-automation/articles/t20) instead.\n\nYou can create an [inventory filter](https://support.google.com/google-ads/answer/2382954) based on one or more values from\nfields like **Custom label (0-4)** or **Product type** . When you apply an\ninventory filter to a campaign, only offers that match the filter are\nadvertised. You can create an inventory filter in the [Google Ads UI](https://ads.google.com/).\n\nThe steps in this section use **Custom label** as an example. You can also do\nthis with other supported feed attributes, like Product type, Brand, or\nGoogle product category.\n| **Key Term:** In the Google Ads API, inventory filters are referred to as *listing\n| scopes*.\n\nFilters follow `AND` logic. You only see results that match all of the\ncriteria in your filter.\n\nManual steps\n------------\n\nHere's an example of the manual steps, using the attribute **Custom label**:\n\n1. [Link Merchant Center to Google Ads](/google-ads/shopping/full-automation/articles/t15).\n2. Sign in to the [Google Ads account](https://ads.google.com/).\n3. Click an existing campaign that uses your Merchant Center products, or [create a new one](/google-ads/shopping/full-automation/articles/t18).\n4. Click **Settings** in the left sidebar.\n5. Expand the **Additional settings** dropdown menu.\n6. Click **Inventory filter**.\n7. In the boxes shown:\n 1. Select **Custom label 0** . **Custom label 0-4** are supported.\n 2. Enter a value for the custom label.\n8. To filter by multiple values, click **AND** and repeat the preceding step.\n\nAutomatic steps\n---------------\n\nYou can only apply one listing scope per campaign. Each listing scope can\ninclude multiple product filters.\n\nHere's an example of the automatic steps, using `product_custom_attribute` as an\nexample:\n\n1. Make sure you've successfully created a campaign and have a campaign ID.\n2. Call [`MutateCampaignCriteriaRequest`](/google-ads/api/reference/rpc/latest/MutateCampaignCriteriaRequest) as follows:\n 1. Set the `campaign_criterion_operation` to `create`.\n 2. Set the `product_custom_attribute.index` to `0` (`0`-`4` are supported).\n 3. Set the `product_custom_attribute.value` to your desired value for the custom label.\n 4. Set the `campaign` field to the `resource_name` of the `campaign_criterion` you created in the preceding step.\n\n[Custom label](https://support.google.com/merchants/answer/6324473) values can be 1 to 100 characters in length, and there can\nbe up to 1,000 unique values account-wide for each custom label attribute (up to\n5,000 labels total).\n\nSee the [Google Ads Shopping example](https://github.com/googleads/google-ads-python/blob/main/examples/shopping_ads/add_listing_scope.py) for examples of other kinds of inventory\nfilters and more detail."]]