# Test whole flows

You'll compare two ways through a flow, see where visitors finish or stop, and publish the version you choose to keep.

Available on the Pro plan.

Compare different sequences of questions and offers to see which helps more visitors finish or convert. [WorkForge](https://workforge.rightmessage.com) could test its current qualification flow against a shorter version that reaches the demo offer sooner.

A whole-flow test copies the structure, not every shared question, form, or offer inside it. If you only want to compare wording, use a [question, form, or offer test](https://rightmessage.com/help/split-testing-questions-and-offers) instead.

## 1. Create an alternative flow

1. Open **Flows** and select a regular flow.
2. In **Build**, choose the flask button with the tooltip **A/B test this flow**.
3. In **Run A/B Test on This Flow**, choose **Create Test**.
4. Open **Variant A**, which starts as a copy of control's structure.
5. Change the sequence you want to test. You might reorder questions, remove a step, or move an offer earlier.
6. Switch between **Control** and **Variant A** to compare them.

![Run A/B Test on This Flow confirmation before a draft whole-flow test is created](https://rightmessage.com/help/screens/insights-flow-test-create.light.webp)

The toolbar now shows **Draft**. Changes to the sequence belong to that variant. Editing a shared question or offer can still change it elsewhere, so use a separate resource if one version needs its own content.

## 2. Check both paths

[Test the flow's visitor paths](https://rightmessage.com/help/best-practices-for-testing) and make sure a published widget can show the flow. Starting a test doesn't change the widget's targeting, trigger, or enabled state.

Finish structural edits before you start. The toolbar can still show editing controls during a running test, but the server rejects changes to started variants. End that test and create another if you need different variants.

## 3. Start and publish

1. Review both structures and let pending edits save.
2. Choose **Start Test**.
3. Check that the toolbar shows **Running**.
4. Choose **Publish** to include the active test on your site.

Publishing a draft test doesn't start it. Once you've started it, the next publication by any project collaborator can include it.

Visitors receive a randomly assigned version. RightMessage remembers that assignment in their browser, so they don't get a new version on every page view.

## 4. Compare the flows

Open **A/B Testing** under **Optimize**, then set **Display** to **Flow tests**. Use **Status** to find your running test.

Compare each version's **Visitors**, **Completed**, **Completion**, **Drop-off**, and **Avg Time**. Completion means the visitor reached the end. If any version contains an offer or form, the main conversion rate measures offer or form conversions instead. Otherwise, it measures completion.

A shorter time alone doesn't tell you which flow to keep. Whole-flow tests don't receive a statistics-engine verdict or automatically choose a winner, even though the creation dialog describes determining one. A card's **Statistical Confidence** display isn't a campaign-engine **Winner** or **Loser** decision.

[Read and manage your split tests](https://rightmessage.com/help/split-test-results-reference) explains the measurements, adding and naming variants, traffic weights, and deleting an unstarted test.

## 5. Keep a flow

1. Open the tested flow and choose **End Test**.
2. In **End Flow A/B Test**, select **Control (original flow)** or an alternative.
3. Choose **End Test** to confirm.
4. Review the draft, then choose **Publish**.

Control is selected by default. Keep it to retain the original structure. Choosing an alternative replaces that structure in the draft. It doesn't create a separate flow or publish it for you.

When visitors receive the selected flow instead of different test versions, your choice is live. The completed test stays in **A/B Testing**, but you can't restart or edit it. Create a new test for your next comparison.

Want random paths that keep running rather than a comparison you end? Use a [Split node](https://rightmessage.com/help/flow-node-random-split). It has no control version or winner to promote.
