Getting total variant count

Is there anyway to get a total count of variants in a store?

I need to display the current amount to a customer in my app to help them decide on which plan to choose. Once I’ve synced all their data into my database I’m able to calculate this, but until that happens I won’t have the total count.

I’m aware of productVariantsCount - GraphQL Admin but does this impose the same 10,000 limit at productCount?

EDIT: If it does impose the 10,000. Shopify what the hell is going on? How can you provide this endpoint which won’t return true data. This needs to be sorted asap. I’ve seen the same frustrations from others with the productCount endpoint.

1 Like

Hi Luke,

I’ve confirmed with the product team in this area that there is currently no limit on the productVariantsCount query, so you should be able to retrieve over 10K variants with this.

Okay great thanks Liam. why is the variant one not limited but the products one is?

I also posted another issues related to this where its returning the wrong count → productVariantsCount returning wrong value

Hi @Liam-Shopify,

This:

{
  productsCount {
    count
    precision
  }
  productVariantsCount {
    count
    precision
  }
}

returns this:

{
"productsCount":{"count":10000,"precision":"AT_LEAST"},
"productVariantsCount":{"count":858207,"precision":"EXACT"}
}

Are there any plans to remove the limit on that like the productVariantsCount?

1 Like

You can set the limit in the argument field, as the example below, you can set the limit to 100k

{
productsCount {
count
precision
}
productVariantsCount(limit:100000){
count
precision
}
}

Good catch, that discrepancy between productsCount and productVariantsCount is still confusing for a lot of devs.

As of 2025, productVariantsCount can indeed return an exact value for large datasets because it uses a different internal resolver that doesn’t hit the same 10K soft limit applied to productsCount ( productVariantsCount - GraphQL Admin ). The productsCount query continues to use an indexed estimate above that threshold to optimize performance on large catalogs ( Paginating results with GraphQL )

If you need exact counts across both, a practical workaround is to paginate through products with first + cursors and sum the total. Otherwise, use productVariantsCount when precision matters. For teams dealing with hundreds of thousands of variants, two-way sync solutions like Stacksync handle this scale automatically while keeping counts consistent across systems.