> ## Documentation Index
> Fetch the complete documentation index at: https://docs.callers.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Versions and Split Traffic

> Edit agents safely with draft and published versions, restore earlier versions, and A/B test two versions by splitting traffic between them.

Versions let you change a live agent without affecting the conversations it's already having. You edit a **draft**, test it, and **publish** it when it's ready. With **Split Traffic**, you can run two published versions side by side and compare their results before choosing a winner. For how versions fit into a safe rollout, see [Path to production](https://docs.callers.ai/documentation/best-practices/path-to-production.md#start-small-then-scale).

> [!NOTE]
>
> Versions and Split Traffic are enabled per account. Contact [support@callers.ai](mailto:support@callers.ai) to turn them on.

<ol />

## How versions work

* Every agent starts with version **V1**.
* When you save changes to a published version, Callers creates a new **Draft** with the next number (V1 → V2, v1.2 → v1.3). The published version keeps running unchanged.
* Live conversations always use the **Published** version. Drafts are only used by test calls you point at them.
* Each version stores its own script and scenarios, which workflow items it uses, and which knowledge bases are connected.

### What's shared by all versions

Many settings belong to the agent as a whole, not to a version: **General Settings**, **Availability**, **Channels**, the voice and conversation parameters, and the workflow catalog (triggers, pre-call actions, in-call actions, and webhooks). Each version chooses which catalog items it uses. To compare two voices or patience levels, run the versions as separate agents instead.

When you change a shared setting, Callers shows "These changes will be applied to all versions:" with an **Undo** option per category. Click **Apply to all versions** to confirm.

## Manage versions

Click **Versions** in the editor header. Versions are grouped into **Published**, **Drafts**, and **Previously Published**. The header shows a **Draft** or **Published** badge for the version you're editing.

| Action | What it does |
| - | - |
| **Publish** | Makes a draft the live version. Also available as the **Publish** button in the header once your changes are saved. |
| **Unpublish** | Takes a version out of service. |
| **Split Traffic** / **Change traffic %** | Runs this version alongside another. See [Split Traffic](#split-traffic). |
| **Edit Name** | Renames the version. |
| **Duplicate** | Copies the version as **name (copy)**. |
| **Delete Version** | Deletes a draft or previously published version. Published versions can't be deleted, and deleted versions can't be restored. |

![Versions History drawer listing V5 and V2 under Published with 10% and 90% traffic badges, V7 and Test scenarios under Drafts with Draft badges, and V3 under Previously Published, each with a date, author, and a menu button](https://mintcdn.com/voxiaai/UGuY0UNIphM-6pUX/images/documentation/build-your-agent/versions-history-drawer.png?fit=max\&auto=format\&n=UGuY0UNIphM-6pUX\&q=85\&s=1f95b209b57afd64bfeb028033aed751)

The Versions History drawer, grouped into Published, Drafts, and Previously Published, with traffic shares on the published versions.

### Publish a version

**1. Save your draft**

Make your changes and click **Save**. The **Publish** button appears when there are no unsaved changes.

**2. Test the draft**

Click **Test** and pick the draft in the version dropdown. See [Test your agent](https://docs.callers.ai/documentation/build-your-agent/testing-your-agent.md).

**3. Publish**

Click **Publish**. If the agent is running, Callers warns that publishing stops the running version and applies all settings from the new one.

**4. Restart**

After publishing, choose **Start Campaign** to start the agent again, or **Not Now**.

Publishing is blocked if a required integration isn't connected ("Cannot publish version") or if the agent has no phone number ("Please assign a phone number before publishing this version.").

> [!TIP]
>
> Name versions after what changed, such as `V3 – shorter intro` or `V4 – new pricing objection`. It makes comparisons and rollbacks much easier.

### Roll back

To return to an earlier version, open **Versions**, find it under **Previously Published**, and **Publish** it again. Or **Duplicate** it to start a new draft from that point.

## Version history

Accounts that don't use draft and published versions have **Versions History** instead. It lists saved snapshots of the agent, with the newest marked **Latest**.

* Click a snapshot to view it ("You're now viewing one of your old versions"). Click **Back to latest** to return.
* Choose **Restore** to replace the agent with that snapshot. "Restoring will replace all current Agent data with the selected version."

## Split Traffic

Split Traffic sends a share of contacts to each of two published versions so you can A/B test a script change: a new opening, a different pitch, a shorter flow.

**1. Prepare two versions**

Have one published version and a second version (draft or published) to test against it.

**2. Open Split Traffic**

In **Versions**, open the second version's menu and choose **Split Traffic**. The **Split your campaign traffic** dialog opens.

![Versions History drawer with the draft V5 selected and its menu open, offering Publish, Split Traffic, Edit name, Duplicate, and Delete Version](https://mintcdn.com/voxiaai/UGuY0UNIphM-6pUX/images/documentation/build-your-agent/versions-draft-menu-split-traffic.png?fit=max\&auto=format\&n=UGuY0UNIphM-6pUX\&q=85\&s=85772453fa642941be25bb48f0748e76)

A draft version's menu: Publish, Split Traffic, Edit name, Duplicate, and Delete Version.

**3. Set percentages**

Enter a whole-number percentage for each version. They must add up to exactly 100. A new split defaults to 50/50.

**4. Approve**

Click **Approve and Publish**. If the agent is running, Callers asks you to confirm because publishing stops it. Start the agent again to run the test.

### Rules

* Up to **2 versions** can receive traffic (1% or more) at the same time. To publish a third, set one of the two to 0% first.
* Each new contact is assigned to a version at random, weighted by the percentages.
* A contact stays on its assigned version for all retries, as long as that version keeps at least 1% of traffic.
* To end a test, set the losing version to 0% (or **Unpublish** it with **Approve and Unpublish**).

### Compare results

Turn on **Insights Mode** and open the **Analytics** tab. For each published version you'll see **Total Contacts**, **Connect Rate**, **Success Rate**, **Call Volume Hourly**, **Calls Duration**, **Failed Call Reason**, and **Failed vs successful call trend**.

> [!TIP]
>
> Change one thing per test and let each version reach a meaningful number of connected calls before deciding. Timing matters too: compare versions over the same days and hours.

## FAQ

> **Do contacts or results belong to a version?**
>
> Contacts belong to the agent. Each call records which version handled it, so results and insights can be broken down by version.

> **Does editing a draft affect live calls?**
>
> No. Live calls use the published version until you publish the draft.

> **Why did my agent stop when I published?**
>
> Publishing a new version stops the running agent so all its settings apply cleanly. Start it again from the publish confirmation or the status menu.

> **Which variables do contacts need when versions differ?**
>
> Uploads are checked against the variables of every published version combined.

## Related

> **[Test your agent](https://docs.callers.ai/documentation/build-your-agent/testing-your-agent.md)**
>
> Test drafts before publishing.

> **[Agent results and insights](https://docs.callers.ai/documentation/using-callers/agent-insights.md)**
>
> Insights Mode and per-step statistics.

> **[Knowledge base](https://docs.callers.ai/documentation/using-callers/knowledge-base.md)**
>
> Connect knowledge bases per version.

> **[Agent settings](https://docs.callers.ai/documentation/build-your-agent/agent-setup.md)**
>
> Which settings are shared across versions.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.