# Concepts

### **Variant groups**

* Variants live inside a **group** that inherits the name of the original template.
* Each variant is marked as `var1`, `var2`, and so on.
* You can preview individual variants and see group-level status in the dashboard.

### **What can change vs. what cannot**

* **You can edit:** Body text and footer.
* **You cannot change:** Header type, number of variables, button structure (these must match the parent template).

### Categories & status

A group can contain **Utility**, **Marketing**, or a **mix** of both.

A group may be:

* **Marketing** (all variants are Marketing),
* **Utility** (all variants are Utility), or
* **Mixed** (contains both). The UI shows “Mixed” with an info note in that case.

<figure><img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FkgFvs660BtkyYJiYfqgG%2Fimage%20(1).png?alt=media&#x26;token=81ec4634-7a7d-464b-ba97-0ae8bad8cefb" alt=""><figcaption></figcaption></figure>

### Status in a Group

Each variant has a Meta status. The group’s overall status surfaces by priority:

* **Approved** (shown even if only one is approved; an alert icon appears if not all are approved),
* **Pending** (shown if none are approved yet), or
* **Rejected** (shown if all are rejected).

<figure><img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FH92ki35B8kRuH8IQHHnN%2Fimage%20(2).png?alt=media&#x26;token=455004fe-e62c-4bdb-a5e6-4d096cc5b89d" alt=""><figcaption></figcaption></figure>

### Fallback order

* On a send, if the primary template is paused/disabled, the system picks the next **approved** variant.
* When both Utility and Marketing variants exist, the system prefers **Utility** first, then **Marketing**; within the same category, the approved template, in order of creation (oldest to newest), variant is chosen.
* Retries reuse the **active** variant. If all retries fail due to healthy-ecosystem errors, the **Utility fallback** is used. Alerts are raised if all variants in a group are rejected.

### Where can you use it?

Variant groups are selectable in **Journeys**, **Broadcasts** and **Conversations**. The preview shows the **active** variant that would be sent right now.
