Will those “This app may be delisted and new installs may be blocked” warnings be removed from partner dashboards? Or will they be kept until feature parity between REST and GraphQL is achieved? We are not able to migrate until then:
We still need to count products in a store with filters (published products) without the 10,000 limit, and we still use REST to count products in collections.
@Liam-Shopify I am in a similar situation. I’m working on the migration right now as this was an app I had recently acquired from the founder and it’s the highest earner of my portfolio, but I may not be able to complete it in time and would like to not have all my earnings and customers destroyed because of a technical migration. Any chance I could get the flag removed from my account as long as I continue to update with my progress towards completing the migration? I’m sure Shopify wants to be rid of REST entirely and I remember the days of Internet Explorer holding the entire Frontend community back. I will follow through on completing this migration if it helps the entire ecosystem stay on the bleeding edge of tech.
@Eng1neer@chrismgala - the banner will remain in your api health dashboard until you have migrated. It will not be seen by merchants and your apps will continue to work via REST after Feb 1. We appreciate both of you pushing forward on your migrations.
@Eng1neer for counting products in collections, have you attempted using the collections root node for you query? The following is not limited to 10k. Let us know if that doesn’t work for you for some reason.
We are facing a challenge while migrating our product count API from REST to GraphQL. Our application requires fetching the total active product count from a merchant’s store, as we charge merchants based on this number.
Currently, GraphQL provides a productsCount query with filters, but it returns a count with “AT_LEAST” precision, capped at 10,000, making it unreliable for stores with large inventories.
Here’s the query we attempted:
Hi @Tim-Shopify, from time to time we are still getting 10k / AT_LEAST as response. This is on v2024-10 API. Is unlimited count only part of later versions? We are using count of all products and all variants. Sometimes we use a collection_id filter on products.
This query for example always returns 10k / AT_LEAST count if number of updated products is > 10k.
@Tim-Shopify Wonderful, I did not know productsCount field is present on Collection objects as well, it worked great for me (though worth mentioning it does not accept any params like a top-level productsCount does).
Regarding published products, my use case is to count these to provide indexing estimation when reading products data and also the app’s plans are based on the number of published products (as the app is for the online store, we need to read only published products and count them towards a plan limit).
Regarding the 10,000 limitation for filtered productsCount, I ended up with a binary search (sort of) approach where I first query min and max product ids in the store and then recursively split the range into N subranges which I try to count directly and if the count is not exact, the process is repeated. Since you can parallelize it (query multiple ranges in one go) it actually ends up being not too bad – 200K products store is counted within a couple of seconds.
I only need this for about 1% of clients (most have less than 10,000 products and you can also try counting unpublished instead of published as that number is generally lower), but it’d be nice to get rid of this when Shopify releases unlimited filtered productsCount.
@Eng1neer@Parth_Diyora@Dennis_D and anybody else who has a need for exact counts with filters: I’m looking for a list of use cases for counts with filters to validate potential options. Could y’all share your use cases with me? (i.e. how are counts with filters being leveraged in your apps?)
Below are the key use cases where exact counts with filters are critical for our app:
Merchant Billing Based on Active Product Count
Our app charges merchants based on the total number of active products in their store.
Inventory & Sync Progress Tracking
We display a real-time progress bar during product sync.
The total count helps in estimating time remaining and providing a better UX.
After the product sync completes, we send a total active product submission report to merchants, ensuring transparency and accuracy in the sync process.
We need the number of published products to show it to the merchant just after installation in our preferences dashboard. Our apps are recommendations apps and we need to inform about the number of products that can be taken into account when calculating recommendations:
Hi @Darius-Shopify, is there any news on counting the products with collection id in the query? It’s returning 10k and it’s hard to deal with. Is there a workaround to count the real amount at 2025-04 API?
Any news on this topic? It’s been a long time since the last post and counting orders and products (with query) with GraphQL is still limited to 10K.
Alternatively: migration to GraphQL was key some months ago, new deadlines were going to be announced in February… and suddenly everything seems paralyzed, no changes, no news… Is something happening?
Furthermore, and more important: I just saw that the 2025-07 release candidate API version has the 10K limit again when counting products with no query:
Hi folks - happy to share that as of the 2025-07 API release, we now support uncapped counts in GraphQL across all count APIs.
This did require a breaking change to how limits work, in 2025-07 the default is 10K, and you have to pass in null to the limit argument to get uncapped counts.