> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.linkedoption.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Automatically create single-option product groups via product title pattern matching

This automation feature allows you to automatically create product groups based on the structure of your product titles.
There are **two matching modes** available:

1. **Simple Pattern Matching** — recommended for most stores.
2. **Regular Expression Matching** — for advanced users with complex product title structures.

### 1. Simple Pattern Matching

In this mode, you can define how your product titles are structured using variables.
We provide two variables:

- `{{group_name}}` — required
- `{{variant_name}}` — optional

![Automate via product title](https://helpkit.getalltool.com/api/media/file/image-106.png)

The system will analyze your product titles and automatically group products that share the same `group_name`.

![Presets simple pattern](https://helpkit.getalltool.com/api/media/file/image-107.png)

Below are common title structures we support:

#### Pattern 1

`{{group_name}} - {{variant_name}}`

**Example:**

```
Cotton T-shirt - Red
Cotton T-shirt - Blue
Cotton T-shirt - Green
```

**Result:**
A product group **Cotton T-shirt** will be created automatically with option values: **Red, Blue, Green**

---

#### Pattern 2

`{{group_name}} | {{variant_name}}`

**Example:**

```
Cotton T-shirt | Red
Cotton T-shirt | Blue
Cotton T-shirt | Green
```

**Result:**
A product group **Cotton T-shirt** with option values **Red, Blue, Green**

---

#### Pattern 3

`{{group_name}} / {{variant_name}}`

**Example:**

```
Cotton T-shirt / Red
Cotton T-shirt / Blue
Cotton T-shirt / Green
```

**Result:**
A product group **Cotton T-shirt** with option values **Red, Blue, Green**

---

#### Pattern 4

`{{group_name}} ({{variant_name}})`

**Example:**

```
Cotton T-shirt (Red)
Cotton T-shirt (Blue)
Cotton T-shirt (Green)
```

**Result:**
A product group **Cotton T-shirt** with option values **Red, Blue, Green**

---

#### Pattern 5

`{{group_name}}`

**Example:**

```
Cotton T-shirt
Cotton T-shirt
Cotton T-shirt
```

**Result:**
A product group **Cotton T-shirt** will be created for all identical titles.

---

### 2. Regular Expression Matching

For complex product titles, you can use **Regular Expressions** to define your matching logic.
We support **named capturing groups** to extract product group and variant names.

Available named groups:

- `(?<group_name>)` — required
- `(?<variant_name>)` — optional

![Regex matching rule](https://helpkit.getalltool.com/api/media/file/image-108.png)

**Example:**

Pattern: `^(?<group_name>.*) - (?<variant_name>.*)$`
Title: Cotton T-shirt - Red

**Result:**
Group name: **Cotton T-shirt**
Variant name: **Red**

---

### Test Your Rule

To verify if your rule works correctly:

1. Go to **Use a sample product title to test the rule**.
2. Enter a product title (e.g. “Cotton T-shirt - Blue”).
If the rule matches successfully, the system will display the extracted product group name and option value.

![Test rule](https://helpkit.getalltool.com/api/media/file/image-109.png)

---

### Product Range Filter

To improve performance, you can **limit the product search scope**.
Only products within your defined range will be included in the automation process.

![Product range](https://helpkit.getalltool.com/api/media/file/image-110.png)

---

### Option Appearance

Select a display template for how the option appears on the product page.
You can set an **Option Name** such as “Color”, “Size”, etc.

#### Option Value Source

When using **Regular Expression Matching**, you can define how the automation rule retrieves the **Option Value**.
There are **three available sources** for the Option Value:

##### 1. Named Capture Group

The Option Value is captured directly from the named capturing group `(?<variant_name>)` in your regular expression.

**Example:**

- Product title:
`Cotton T-shirt - Black`
- Regular expression:
`^(?<group_name>.*?) - (?<variant_name>.*?)$`

**Result:**
Group name → `Cotton T-shirt`
Option value → `Black`

In this mode, both named capturing groups `(?<group_name>)` and `(?<variant_name>)` are used to extract values automatically.

##### 2. Metafield

In this mode, the Option Value is retrieved from a **product metafield** you specify.
You need to define the metafield that stores the Option Value for each product.

For example:

- Metafield namespace: `custom`
- Key: `color`

If a product has the metafield `custom.color = "Red"`, the automation rule will use **Red** as its Option Value.

![Metafield](https://helpkit.getalltool.com/api/media/file/image-112.png)

##### 3. Variant Option

If your products already include a defined **variant option**, you can use it as the source for the Option Value.

For example, if your products have a variant option called **Color**, and you want to link products within the same group by their color option, you can set the **Variant option name** to `Color`.
The automation rule will automatically read the **first option value** from the product’s variant option named “Color”.

**Example:**

- Product variant option: `Color: Blue`
- Result: Option value → `Blue`

![Variant option](https://helpkit.getalltool.com/api/media/file/image-111.png)

---

### Additional Settings

**Ignore product groups with only one product**
If the matched group contains only one product, it will be ignored to avoid unnecessary product groups.

**Remove products from other product groups**
Since each product can belong to only one group, when a new automation rule matches a product, it will be automatically removed from its previous group and added to the new one.

**Replace the existing product group**
When unchecked (default), automation will not overwrite existing product groups with the same name.
Useful if you’ve manually edited product groups after the initial automation.

**Update product information if it already exists in a group**
When enabled, the system will update existing product group information, such as swatch colors, swatch images, etc.

**Group status**
You can define whether automatically created product groups are **Active** or **Inactive**.
To prevent errors, we recommend setting new groups as **Inactive** first, reviewing them, and then manually activating thecorrect ones.