I understand that historically shopify had a 100 variant limit for each product, but I’ve seen information that it’s been recently raised to 2000. It appears in the graphql documentation:
https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/api-updates
specifically:
“The productSet mutation has an input limit of 2K variants when run asynchronously and only 100 variants when run synchronously.”
I can confirm that this doesn’t work. Here’s my query (note “synchronous”: false):
It has 1001 variants, e.g.
"variants": [
{
"optionValues": [
{
"optionName": "Size",
"name": "9"
},
{
"optionName": "Type",
"name": "Sterling Silver"
},
{
"optionName": "Add Gold Rims Mens Ring",
"name": "No Thanks"
}
],
"sku": "TJHG038-9-SS-NO",
"price": 220
},
...
I get the 'ol VARIANTS_OVER_LIMIT error:
I contacted support and got a very vague answer. Basically they told me to try “Shopify Experts”, which is some kind of paid service. I’m not trying to do anything special, just trying to create products via graphql and I’m following what the documentation says.
Them: The error message you are encountering, VARIANTS_OVER_LIMIT, suggests that you are exceeding
the allowed number of product variants for the productSet mutation. Based on the documentation,
the productSet mutation allows up to 2,000 variants when run asynchronously and only 100 variants
when run synchronously.
However, it appears that your mutation is being processed synchronously, as you are receiving a
notification stating that you can only specify a maximum of 100 product variants. This mismatch
indicates that you are trying to submit 1,001 variants, which surpasses the synchronous limit of
100 variants.
To address this issue, you may need to either reduce the number of variants in your request to
100 or ensure that you are utilizing the asynchronous method to handle up to 2,000 variants.
I recommend reviewing your implementation to determine if you are utilizing the appropriate
method for your requirements.
Me: see the "synchronous": false" portion (bottom left) in the query request in this screenshot
I am running it asynchronously
Them: Got it, so let me check here
Me: I asked your AI chatbot this same question and it told me "Check Shop Configuration:
The increased variant limit might not be enabled for your shop. Contact Shopify Support to
confirm if the shop is configured to allow up to 2,000 variants per product."
when I run a resource limit query: query ShopResourceLimits { shop { resourceLimits {
maxProductVariants maxProductOptions } } }
I get a response: "resourceLimits": { "maxProductVariants": 100, "maxProductOptions": 3 }
which seems to indicate a configuration change needs to happen on the shopify end
Them: I understand your situation. In this case, I can provide you with general information,
but since this involves coding, our support team isn't specifically trained in that area.
I recommend reaching out to a Shopify Expert who has the expertise to assist you with this
Me: can you check this? "Contact Shopify Support to confirm if the shop is configured to allow up to
2,000 variants per product." the store is xxxxxx-cz.myshopify.com
Them: Let me see
I really appreciate your patience. After checking, I found that the variant limit is set due
to how our API functions and the total allowable data size of each call. Each API call can handle
a maximum of 250 products and 100 variants per product, totaling 25,000 variants per call.
Increasing this limit could lead to longer completion times for API calls.
These changes are not supported by Shopify, and we recommend consulting Shopify experts for any
API or theme code modifications.
Has anyone been able to successfully create more than 100 variants for a product WITHOUT using an app?

