rocket
Meet
Merchant API
- the official successor to Content API for Shopping.
update
Get the latest
on new Merchant API features, bug fixes, and updates.
add_alert
Note: Content API for Shopping will be sunset on August 18, 2026.
Identify top products
Stay organized with collections
Save and categorize content based on your preferences.
You can use the best sellers
report to view the best-selling products on Google Shopping and in Shopping ads. You can use the information from this report to understand which products are performing well on Google, and whether you currently carry them.
See About the best seller report for more information.
Your account must meet minimum eligibility requirements, and you must ensure that your use, or any third party's use, of Market Insights data exported from your Merchant Center account complies with the Merchant Center terms and conditions.
Query
BestSellersProductClusterView
to view the best-selling products on Google.
Here's a sample you can use to view best-selling products. To make the request, pass the following Merchant Center Query Language statement to the reports.search
method:
SELECT
best_sellers.report_date, best_sellers.report_granularity,
best_sellers.country_code, best_sellers.category_id,
best_sellers.rank, best_sellers.previous_rank,
best_sellers.relative_demand, best_sellers.previous_relative_demand,
best_sellers.relative_demand_change,
product_cluster.title, product_cluster.brand, product_cluster.category_l1,
product_cluster.category_l2, product_cluster.category_l3,
product_cluster.variant_gtins, product_cluster.inventory_status,
product_cluster.brand_inventory_status
FROM BestSellersProductClusterView
WHERE best_sellers.report_date = '2022-10-10'
AND best_sellers.report_granularity = 'WEEKLY'
AND best_sellers.country_code = 'US'
AND best_sellers.category_id = 166
ORDER BY best_sellers.rank
You can change the values in the WHERE
clause to customize the report for
other dates, granularities, countries, and categories.
Run
Click Run to try the sample in the API Explorer. After you click
Run, update the merchant ID placeholder to your own merchant ID in the
request URL. You can modify the query. The full query must remain on one line to
work with the API explorer.
Here's a sample response from the preceding query:
{
"results": [
{
"bestSellers": {
"reportDate": "2022-10-10",
"reportGranularity": "WEEKLY",
"countryCode": "US",
"categoryId": "166"
"rank": "1",
"previousRank": "1",
"relativeDemand": "VERY_HIGH",
"previousRelativeDemand": "VERY_HIGH",
"relativeDemandChange": "FLAT"
}
"productCluster": {
"title": "Ugg Shoes Ugg Tasman",
"brand": "UGG",
"categoryL1": "Apparel & Accessories",
"categoryL2": "Shoes",
"categoryL3": "",
"variantGtins":
["00737872992873", "00737872992880", "00737872992866"],
"inventoryStatus": "NOT_IN_INVENTORY",
"brandInventoryStatus": "NOT_IN_INVENTORY"
}
},
{
"bestSellers": {
"reportDate": "2022-10-10",
"reportGranularity": "WEEKLY",
"countryCode": "US",
"categoryId": "166"
"rank": "2",
"previousRank": "8",
"relativeDemand": "VERY_HIGH",
"previousRelativeDemand": "HIGH",
"relativeDemandChange": "RISER"
}
"productCluster": {
"title": "UGG Women's s Classic Mini",
"brand": "UGG",
"categoryL1": "Apparel & Accessories",
"categoryL2": "Shoes",
"categoryL3": "",
"variantGtins":
["00194715081314", "00194715081246", "00194715081321"],
"inventoryStatus": "NOT_IN_INVENTORY",
"brandInventoryStatus": "NOT_IN_INVENTORY"
}
},
{
"bestSellers": {
"reportDate": "2022-10-10",
"reportGranularity": "WEEKLY",
"countryCode": "US",
"categoryId": "166"
"rank": "3",
"previousRank": "2",
"relativeDemand": "VERY_HIGH",
"previousRelativeDemand": "VERY_HIGH",
"relativeDemandChange": "FLAT"
}
"productCluster": {
"title": "Crocs Classic",
"brand": "Crocs",
"categoryL1": "Apparel & Accessories",
"categoryL2": "Shoes",
"categoryL3": "",
"variantGtins":
["00887350811209", "00191448903852", "00191448769090"],
"inventoryStatus": "NOT_IN_INVENTORY",
"brandInventoryStatus": "OUT_OF_STOCK"
}
}
]
}
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-13 UTC.
[null,null,["Last updated 2025-08-13 UTC."],[[["\u003cp\u003eThe Merchant API is the new version of the Content API for Shopping and represents the future of product data integration.\u003c/p\u003e\n"],["\u003cp\u003eUse the \u003ccode\u003eBestSellersProductClusterView\u003c/code\u003e query and the \u003ccode\u003ereports.search\u003c/code\u003e method to retrieve a report of the best-selling products on Google Shopping.\u003c/p\u003e\n"],["\u003cp\u003eThe report provides insights into product rankings, demand levels, and inventory status, allowing merchants to make informed decisions about their product offerings.\u003c/p\u003e\n"],["\u003cp\u003eCustomize the report by specifying the date, granularity, country, and category in the query's \u003ccode\u003eWHERE\u003c/code\u003e clause.\u003c/p\u003e\n"],["\u003cp\u003eReview the provided sample query and response to understand the structure and data available in the best sellers report.\u003c/p\u003e\n"]]],["The document introduces the Merchant API beta, the new version of the Content API for Shopping. It details how to use the \"best sellers\" report, accessible via the `BestSellersProductClusterView` query, to identify top-performing products on Google Shopping. Users can customize the report by date, granularity, country, and category. A sample query and response are provided, illustrating data on product rank, demand, and inventory status. Merchant accounts must meet eligibility requirements.\n"],null,["# Identify top products\n\nYou can use the [best sellers](//support.google.com/merchants/answer/9488679)\nreport to view the best-selling products on Google Shopping and in Shopping ads. You can use the information from this report to understand which products are performing well on Google, and whether you currently carry them.\n\nSee [About the best seller report](//support.google.com/merchants/answer/9488679) for more information.\n\n\nYour account must meet minimum eligibility requirements, and you must ensure that your use, or any third party's use, of Market Insights data exported from your Merchant Center account complies with the [Merchant Center terms and conditions](//support.google.com/merchants/answer/160173).\n\nQuery\n[`BestSellersProductClusterView`](/shopping-content/guides/reports/fields#bestsellersproductclusterview) to view the best-selling products on Google.\n\nHere's a sample you can use to view best-selling products. To make the request, pass the following Merchant Center Query Language statement to the [`reports.search`](/shopping-content/reference/rest/v2.1/reports/search) method: \n\n```gdscript\nSELECT\n best_sellers.report_date, best_sellers.report_granularity,\n best_sellers.country_code, best_sellers.category_id,\n best_sellers.rank, best_sellers.previous_rank,\n best_sellers.relative_demand, best_sellers.previous_relative_demand,\n best_sellers.relative_demand_change,\n product_cluster.title, product_cluster.brand, product_cluster.category_l1,\n product_cluster.category_l2, product_cluster.category_l3, \n product_cluster.variant_gtins, product_cluster.inventory_status, \n product_cluster.brand_inventory_status\nFROM BestSellersProductClusterView\nWHERE best_sellers.report_date = '\u003cvar class=\"edit\" translate=\"no\"\u003e2022-10-10\u003c/var\u003e'\n AND best_sellers.report_granularity = '\u003cvar class=\"edit\" translate=\"no\"\u003eWEEKLY\u003c/var\u003e'\n AND best_sellers.country_code = '\u003cvar class=\"edit\" translate=\"no\"\u003eUS\u003c/var\u003e'\n AND best_sellers.category_id = 166\nORDER BY best_sellers.rank\n```\n\nYou can change the values in the `WHERE` clause to customize the report for\nother dates, granularities, countries, and [categories](//support.google.com/merchants/answer/6324436).\n\n[Run](https://developers.google.com/shopping-content/reference/rest/v2.1/reports/search?apix=true&apix_params=%7B%22merchantId%22%3A0%2C%22resource%22%3A%7B%22query%22%3A%22SELECT%20%20best_sellers.report_date%2C%20best_sellers.report_granularity%2C%20%20best_sellers.country_code%2C%20best_sellers.category_id%2C%20%20best_sellers.rank%2C%20best_sellers.previous_rank%2C%20%20best_sellers.relative_demand%2C%20best_sellers.previous_relative_demand%2C%20%20best_sellers.relative_demand_change%2C%20%20product_cluster.title%2C%20product_cluster.brand%2C%20product_cluster.category_l1%2C%20%20product_cluster.category_l2%2C%20product_cluster.category_l3%2C%20%20%20product_cluster.variant_gtins%2C%20product_cluster.inventory_status%2C%20%20%20product_cluster.brand_inventory_status%20FROM%20BestSellersProductClusterView%20WHERE%20best_sellers.report_date%20%3D%20%272022-10-10%27%20%20AND%20best_sellers.report_granularity%20%3D%20%27WEEKLY%27%20%20AND%20best_sellers.country_code%20%3D%20%27US%27%20%20AND%20best_sellers.category_id%20%3D%20166%20ORDER%20BY%20best_sellers.rank%22%7D%7D)\n\nClick **Run** to try the sample in the **API Explorer** . After you click\n**Run** , update the merchant ID placeholder to your own merchant ID in the\nrequest URL. You can modify the query. The full query must remain on one line to\nwork with the **API explorer**.\n\nHere's a sample response from the preceding query: \n\n {\n \"results\": [\n {\n \"bestSellers\": {\n \"reportDate\": \"2022-10-10\",\n \"reportGranularity\": \"WEEKLY\",\n \"countryCode\": \"US\",\n \"categoryId\": \"166\"\n \"rank\": \"1\",\n \"previousRank\": \"1\",\n \"relativeDemand\": \"VERY_HIGH\",\n \"previousRelativeDemand\": \"VERY_HIGH\",\n \"relativeDemandChange\": \"FLAT\"\n }\n \"productCluster\": {\n \"title\": \"Ugg Shoes Ugg Tasman\",\n \"brand\": \"UGG\",\n \"categoryL1\": \"Apparel & Accessories\",\n \"categoryL2\": \"Shoes\",\n \"categoryL3\": \"\",\n \"variantGtins\":\n [\"00737872992873\", \"00737872992880\", \"00737872992866\"],\n \"inventoryStatus\": \"NOT_IN_INVENTORY\",\n \"brandInventoryStatus\": \"NOT_IN_INVENTORY\"\n }\n },\n {\n \"bestSellers\": {\n \"reportDate\": \"2022-10-10\",\n \"reportGranularity\": \"WEEKLY\",\n \"countryCode\": \"US\",\n \"categoryId\": \"166\"\n \"rank\": \"2\",\n \"previousRank\": \"8\",\n \"relativeDemand\": \"VERY_HIGH\",\n \"previousRelativeDemand\": \"HIGH\",\n \"relativeDemandChange\": \"RISER\"\n }\n \"productCluster\": {\n \"title\": \"UGG Women's s Classic Mini\",\n \"brand\": \"UGG\",\n \"categoryL1\": \"Apparel & Accessories\",\n \"categoryL2\": \"Shoes\",\n \"categoryL3\": \"\",\n \"variantGtins\":\n [\"00194715081314\", \"00194715081246\", \"00194715081321\"],\n \"inventoryStatus\": \"NOT_IN_INVENTORY\",\n \"brandInventoryStatus\": \"NOT_IN_INVENTORY\"\n }\n },\n {\n \"bestSellers\": {\n \"reportDate\": \"2022-10-10\",\n \"reportGranularity\": \"WEEKLY\",\n \"countryCode\": \"US\",\n \"categoryId\": \"166\"\n \"rank\": \"3\",\n \"previousRank\": \"2\",\n \"relativeDemand\": \"VERY_HIGH\",\n \"previousRelativeDemand\": \"VERY_HIGH\",\n \"relativeDemandChange\": \"FLAT\"\n }\n \"productCluster\": {\n \"title\": \"Crocs Classic\",\n \"brand\": \"Crocs\",\n \"categoryL1\": \"Apparel & Accessories\",\n \"categoryL2\": \"Shoes\",\n \"categoryL3\": \"\",\n \"variantGtins\":\n [\"00887350811209\", \"00191448903852\", \"00191448769090\"],\n \"inventoryStatus\": \"NOT_IN_INVENTORY\",\n \"brandInventoryStatus\": \"OUT_OF_STOCK\"\n }\n }\n ]\n }"]]