Craftshift logo

You have 200 Shopify products that need color swatches. Here is how to set them all up at once.

You have been adding products to your Shopify store for months. Maybe years. You now have 200 products, or 500, or more. Many of them are variations of the same item: the same shirt in different colors, the same table in different finishes, the same candle in different scents.

Shopify products being automatically grouped into organized color swatch groups using bulk grouping

You want to connect them with color swatches so customers can switch between options on the product page. You install Rubik Combined Listings. You create your first product group. It takes about a minute. That feels fine.

Then you look at the rest of your catalog and do the math. 200 products, grouped in sets of 4 or 5, means roughly 40 to 50 groups. At one minute each, that is an hour of clicking, selecting, and naming. Nobody wants to spend their afternoon on that.

That is exactly the problem bulk grouping solves. Instead of creating groups one at a time, you run detection on your entire catalog, review the results, and create all the groups at once. The whole process takes a few minutes regardless of how many products you have.

How bulk grouping works

Bulk grouping follows four steps:

  1. Choose a detection method. The app can analyze your product titles, read specific product tags, or check metafield values. Title pattern matching is the most common choice and works for most stores without any preparation.
  2. Configure your options. Pick a separator character (or let the app auto-detect), set the option name (like “Color” or “Material”), and choose the minimum group size.
  3. Review detected groups. The app shows you every group it found. You can rename groups, remove products, add missing ones, or deselect groups you do not want to create.
  4. Create all groups at once. The app creates your groups in the background. You get an email when it is done.

The detection step does the heavy lifting. It scans your entire product catalog and figures out which products belong together based on patterns in your data. Let’s look at each detection method.

Title pattern matching: the one that works for most stores

Most Shopify merchants already have a naming convention in their product titles. You might not think of it as a “pattern,” but it is one. If your products are named things like:

Then the app can see that “Summer Shorts” is the group name and “Yellow,” “Blue,” and “Green” are the option values. The dash is the separator. That is title pattern matching in its simplest form.

But it goes much further than simple dash splitting.

Multiple separator types

The app recognizes three separator characters:

You can choose a specific separator if you know which one your titles use. Or you can choose Auto-detect, which tries all three and picks up whichever patterns exist in your catalog. If some products use dashes and others use pipes, auto-detect handles both.

Reverse detection

Not every store puts the group name first. Some merchants name their products the other way around:

Here the option value (the color) comes before the separator, and the group name comes after. The app handles this automatically. It first tries the normal direction (group name before separator). For any products that do not match, it tries the reverse direction. The result is the same: a group called “Sport Leggings” with values “Red,” “Green,” and “Black.”

Fuzzy word matching: no separator needed

This is where it gets interesting. Many stores do not use separators at all. The color or variant is just part of the title:

No dash, no pipe, no slash. Just words. The app still detects these. It compares product titles word by word and finds the longest shared portion. In this case, “Sport Leggings” is the shared suffix. The remaining word (“Red,” “Green,” “Black”) becomes the option value.

This works in both directions. If the shared part is at the beginning of the title, that becomes the group name:

The shared prefix is “Mountain Sunset Poster.” The differing words (“Large,” “Medium,” “Small”) become the option values. No configuration needed.

Longest match wins

The matching algorithm always chooses the longest possible shared portion. This matters for products with long, specific names. Take these sneakers:

A naive algorithm might match on “New Balance” and try to throw every New Balance shoe into one group. The app does not do that. It finds the longest shared prefix: “New Balance 990v2 MiUSA Teddy Santis.” Only products that share that full prefix get grouped together. Your other New Balance shoes stay in their own groups.

Auto-detect: the four-pass cascade

When you choose Auto-detect as your separator, the app does not just try one method. It runs four passes on your catalog, each one picking up products that previous passes missed:

  1. Separator, normal direction. Tries dash, pipe, and slash. Everything before the separator is the group name.
  2. Separator, reverse direction. Same separators, but now everything after the separator is the group name. Catches products like “Red – Sport Leggings.”
  3. Word matching by shared prefix. For remaining unmatched products, finds groups that share the same starting words.
  4. Word matching by shared suffix. For any still unmatched, finds groups that share the same ending words.

Each pass only looks at products that were not already grouped by a previous pass. This means a store with mixed naming conventions (some products using dashes, some using no separators) still gets fully detected in a single run.

Case does not matter

All matching is case-insensitive. “Boots – Green” and “boots – blue” are recognized as the same group. The app uses the casing from the first product it encounters as the group name, but it will not create duplicate groups just because one title is capitalized differently.

Product tags: for stores with structured tagging

If your products already have tags that indicate which group they belong to, you can use tag-based detection instead of title matching. This is useful when your product titles do not follow a consistent pattern but you have already organized products with tags.

The tag format is:

RUBIK::GroupName::OptionName::OptionValue

For example, a blue summer shorts product would have the tag:

RUBIK::Summer Shorts::Color::Blue

You can also include color values for visual swatches during the review step:

RUBIK::Summer Shorts::Color::Blue::#3B82F6

This method gives you full control over group names and option values. It requires adding tags to your products beforehand, but the naming does not need to follow any title convention. Products can be called anything.

Metafields: for advanced setups

If your store uses Shopify metafields to store product relationships or attributes, you can group products by shared metafield values. You specify which metafield contains the group identifier and which one contains the option value. Products that share the same group metafield value get grouped together.

This is the most flexible method but also the most technical. It is best suited for stores that already have metafield data set up through another app or a custom workflow.

The review step: check everything before creating

After detection runs, you see every group the app found. Nothing is created yet. This is your chance to review and adjust.

Each detected group shows the group name, the number of products, and a checkbox. You can:

The review step also warns you if any products already belong to an existing group. You will see a warning banner with a link to the existing group’s edit page, so you can decide what to do.

Background creation and email notification

When you click create, the app starts building your groups in the background. You see a progress bar showing how many groups have been created so far. You do not need to keep the page open. The app sends you an email when all groups are done.

If you change your mind mid-way, you can cancel the job. Groups that were already created stay. The remaining ones are skipped.

What this looks like with real product titles

Here are some real naming patterns from Shopify stores and what the app detects from each one:

Fashion store with dash separators:

Furniture store without separators:

Sneaker store with long product names:

Candle store with color-first titles:

Print-on-demand store with Printify titles:

In every case, the app extracts the group name and option values automatically. You just review and confirm.

Tips for getting the best results

Try it on your store

Bulk grouping is available on all plans. The number of groups you can create depends on your plan, but the detection and review features work the same way regardless.

If you have not installed the app yet, install Rubik Combined Listings from the Shopify App Store. Once installed, go to Product Groups and click the “Bulk create groups” button at the top of the page.

For a detailed walkthrough of each step, see the bulk grouping documentation.

If you already have the app and have been creating groups one at a time, give bulk grouping a try. It will save you a lot of time.

Our Shopify Apps

Smart Bulk Image Upload

Bulk upload product images from Google Drive & save time!

Rubik Variant Image & Swatch

Show only relevant variant images on your product pages.

Rubik Combined Listings Swatch app

Rubik Combined Listings

Link separate products as variants with beautiful swatches

CS – Export Product Images

Bulk export product images by vendor, collection or status

Blog Posts