Shopify’s product overhaul: 2,000 variants, new GraphQL mutations, and a farewell to REST
Tags: shopify, webdev, graphql, restapi
Published: 2024-06-10 16:18:36

[Shopify’s 2024 Winter Editions](https://www.shopify.com/ca/editions/winter2024) 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.


![Oprah giving out more Shopify extensions](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sioeb19uelu0lcule0ea.png)

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:

- Create a new development store
- Select the Extended Variants developer preview

![the Extended Variants developer preview in Shopify](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qik2sa1tiib7eq6457jt.png)

>  **Note:** [Shopify’s documentation](https://shopify.dev/docs/api/release-notes/developer-previews#increased-variants-developer-preview) 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.

![Loading Variants in Shopify](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8m37a891s6xoc5hprewk.png)

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](https://www.shopify.com/ca/enterprise/blog/combined-listings) 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](https://shopify.dev/docs/apps/build/product-merchandising/combined-listings), 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 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 `2024-01`, the `/product` and `/variant` endpoints will be [deprecated in the REST Admin API](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model#whats-changing).

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 `productSet` mutation added that allows for product information to be [pushed in bulk from external sources](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model#database-sync-workflow), 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](https://shopify.dev/docs/apps/build/graphql/migrate/new-product-model/api-updates) to get all the details on the API changes for the updated product model.