Blog
/
Editorial

Shopify’s product overhaul: 2,000 variants, new GraphQL mutations, and a farewell to REST

Published
February 14, 2024
Last updated
December 20, 2024
We go through the details on some of the product changes Shopify announced as part of the 2024 Winter Editions, including the increased variant limit.

Shopify’s 2024 Winter Editions focused on improving the foundations of the platform. And what is more foundational to ecommerce than products? Shopify announced one major change to how products are going to be handled in the platform going forward, which is accompanied by a bunch of changes to the underlying product APIs.

As always, that means many of these changes will affect developers. So let’s dig into what’s different.

100 → 2,000 product variants

At long last, Shopify has finally chosen to increase the product variant limit to 2,000 variants. This is great news for both developers and merchants, as it shifts variant management to Shopify’s infrastructure, so merchants no longer require custom applications to get around the 100 variant limit. Merchants selling products that naturally have many different combinations and options, such as sizes, colors, and styles, will massively benefit from this limit increase.

The 2,000 variant limit isn’t live for production stores yet, but that doesn’t mean Shopify Partner developers can’t start testing out the changes on a development store. 

To start testing the 2,000 variant limit:

  1. Create a new development store
  2. Select the Extended Variants developer preview

Note: Shopify’s documentation calls this preview the Increased Variants developer preview, instead of the Extended Variants naming displayed in the Partners dashboard when creating a new dev store.

Once your new development store is created, you can add up to 2,000 variants per product by adding multiple product options as you normally would. Clothing options are a good place to start when generating test data. For example, you could create a shirt product that comes in multiple different colors, has a range of different sizes, and has multiple different styles, for example, crew neck, v-neck, henley, and long-sleeved versions. Immediately, by offering 10 colors, 6 sizes, and 6 styles, you’ve created 360 possible variants (10 x 6 x 6) of this single product, which wouldn’t have worked with Shopify’s old 100 variant limit!

All of these variants will be visible as options on the product page in the storefront without any additional changes being required. No changes to Liquid or theme app extensions necessary.

Note: When adding a large number of variants, some additional loading is required on product pages in the admin. This will not be the case on the storefront itself.

Shopify is currently working with select partners to adopt this change in the variant limit and will be rolling this variant increase out across 2024.

Updates for merchandising additional variants

With this increase in variants, merchants will also need to be able to properly merchandize all of the different variants and options that now exist for a single product. They may require dedicated URLs and SEO tags for product options, and certain product options or variants may need to be added to collections that are part of targeted marketing or discount campaigns. 

Shopify has launched the Combined Listings app to help display these additional variants in the storefront. It allows for flexibility in listing different options separately and provides proper SEO support for individual options and variants.

Available for Plus merchants only, this app allows merchants to create child products under a single parent product, ensuring that each child has its own dedicated URL, media carousel, and description, while still being included as an option on a single product page. This means that merchants can take full advantage of the additional variant limit without sacrificing on their SEO strategies or losing the flexibility required by some product options.

Product and variant API updates 

In addition to the variant limit increasing, the product endpoints and data models are getting an overhaul as well. In version <inline-code>2024-01<inline-code>, the <inline-code>/product<inline-code> and <inline-code>/variant<inline-code> endpoints will be deprecated in the REST Admin API.

Additionally, the Shopify product data model and GraphQL Admin API are getting an overhaul, with additional fields and mutations being added allowing for bulk changes to product data. Of particular interest, there is going to be a <inline-code>productSet<inline-code> mutation added that allows for product information to be pushed in bulk from external sources, such as ERPs, to Shopify. Product options are also being elevated to first-class entities in the data model, which means that there will be a set of new mutations and fields for manipulating product option data.

You can read Shopify’s documentation to get all the details on the API changes for the updated product model.

How is Gadget adapting to these changes?

Gadget apps connected to Shopify will automatically handle any incoming product webhooks, and will store product, options, and variant information in a hosted and scaled Postgres database. There is also a historical data sync that will pull in all existing product data to the database, whether there are 100 variants, or 2,000. You can test out the data sync today by connecting your Gadget app to a development store on the Extended Variants preview.

Gadget also helps with upgrading your Shopify API version. When 2024-04 is released next quarter, you can be sure that the product and variant model changes will be reflected in your Gadget apps and any underlying database migrations will be run automatically.

We will have more information about the changes as we get closer to the release of API version <inline-code>2024-04<inline-code>. If you want the most up-to-date information, check out our Shopify API changelog or join our developer Discord.

Riley Draward
Author
Reviewer
Try Gadget
See the difference a full-stack development platform can make.
Create app

Shopify’s product overhaul: 2,000 variants, new GraphQL mutations, and a farewell to REST

We go through the details on some of the product changes Shopify announced as part of the 2024 Winter Editions, including the increased variant limit.
Problem
Solution
Result

Shopify’s 2024 Winter Editions focused on improving the foundations of the platform. And what is more foundational to ecommerce than products? Shopify announced one major change to how products are going to be handled in the platform going forward, which is accompanied by a bunch of changes to the underlying product APIs.

As always, that means many of these changes will affect developers. So let’s dig into what’s different.

100 → 2,000 product variants

At long last, Shopify has finally chosen to increase the product variant limit to 2,000 variants. This is great news for both developers and merchants, as it shifts variant management to Shopify’s infrastructure, so merchants no longer require custom applications to get around the 100 variant limit. Merchants selling products that naturally have many different combinations and options, such as sizes, colors, and styles, will massively benefit from this limit increase.

The 2,000 variant limit isn’t live for production stores yet, but that doesn’t mean Shopify Partner developers can’t start testing out the changes on a development store. 

To start testing the 2,000 variant limit:

  1. Create a new development store
  2. Select the Extended Variants developer preview

Note: Shopify’s documentation calls this preview the Increased Variants developer preview, instead of the Extended Variants naming displayed in the Partners dashboard when creating a new dev store.

Once your new development store is created, you can add up to 2,000 variants per product by adding multiple product options as you normally would. Clothing options are a good place to start when generating test data. For example, you could create a shirt product that comes in multiple different colors, has a range of different sizes, and has multiple different styles, for example, crew neck, v-neck, henley, and long-sleeved versions. Immediately, by offering 10 colors, 6 sizes, and 6 styles, you’ve created 360 possible variants (10 x 6 x 6) of this single product, which wouldn’t have worked with Shopify’s old 100 variant limit!

All of these variants will be visible as options on the product page in the storefront without any additional changes being required. No changes to Liquid or theme app extensions necessary.

Note: When adding a large number of variants, some additional loading is required on product pages in the admin. This will not be the case on the storefront itself.

Shopify is currently working with select partners to adopt this change in the variant limit and will be rolling this variant increase out across 2024.

Updates for merchandising additional variants

With this increase in variants, merchants will also need to be able to properly merchandize all of the different variants and options that now exist for a single product. They may require dedicated URLs and SEO tags for product options, and certain product options or variants may need to be added to collections that are part of targeted marketing or discount campaigns. 

Shopify has launched the Combined Listings app to help display these additional variants in the storefront. It allows for flexibility in listing different options separately and provides proper SEO support for individual options and variants.

Available for Plus merchants only, this app allows merchants to create child products under a single parent product, ensuring that each child has its own dedicated URL, media carousel, and description, while still being included as an option on a single product page. This means that merchants can take full advantage of the additional variant limit without sacrificing on their SEO strategies or losing the flexibility required by some product options.

Product and variant API updates 

In addition to the variant limit increasing, the product endpoints and data models are getting an overhaul as well. In version <inline-code>2024-01<inline-code>, the <inline-code>/product<inline-code> and <inline-code>/variant<inline-code> endpoints will be deprecated in the REST Admin API.

Additionally, the Shopify product data model and GraphQL Admin API are getting an overhaul, with additional fields and mutations being added allowing for bulk changes to product data. Of particular interest, there is going to be a <inline-code>productSet<inline-code> mutation added that allows for product information to be pushed in bulk from external sources, such as ERPs, to Shopify. Product options are also being elevated to first-class entities in the data model, which means that there will be a set of new mutations and fields for manipulating product option data.

You can read Shopify’s documentation to get all the details on the API changes for the updated product model.

How is Gadget adapting to these changes?

Gadget apps connected to Shopify will automatically handle any incoming product webhooks, and will store product, options, and variant information in a hosted and scaled Postgres database. There is also a historical data sync that will pull in all existing product data to the database, whether there are 100 variants, or 2,000. You can test out the data sync today by connecting your Gadget app to a development store on the Extended Variants preview.

Gadget also helps with upgrading your Shopify API version. When 2024-04 is released next quarter, you can be sure that the product and variant model changes will be reflected in your Gadget apps and any underlying database migrations will be run automatically.

We will have more information about the changes as we get closer to the release of API version <inline-code>2024-04<inline-code>. If you want the most up-to-date information, check out our Shopify API changelog or join our developer Discord.

Interested in learning more about Gadget?

Join leading agencies making the switch to Gadget and experience the difference a full-stack platform can make.