# About A/B Testing ## Introduction Video script script style wistia-player[media-id='jjinz6381k']:not(:defined) { background: center / contain no-repeat url('https://fast.wistia.com/embed/medias/jjinz6381k/swatch'); display: block; filter: blur(5px); padding-top:56.25%; } ## Overview A/B testing helps marketers test treatments (for example, different marketing *Calls to Action* in an email) to determine which treatments perform better. With Treasure Data's A/B Testing, you can compare one to eight versions of something to determine which performs better. To accomplish this test, at a minimum, you need one test case and a control group to validate the results. A control group is important because it provides a benchmark against which to measure performance. A control group highlights what works as much as what doesn't. ![](/assets/image2023-7-10_15-35-36.e56a5c68b738d78e1d2d445aaa08178f64b30e3b1d2fd78b03a57e2059167e9e.9e7171ae.png) Journey's support the following A/B test capabilities: * **Unlimited A/B tests** : There is no maximum number of A/B tests that you can add to a journey stage. * **A/B test nesting** : You can add an A/B test to an A/B test. Journey Orchestration supports 4 layers of A/B test nesting. * **A/B test variants** : Each A/B test can have up to eight variants with a single control group. * **Customizable variant percentages** : By default, percentages are split equally among variants. However, you can add specific percentages for each variant. * **Unique ID field for consistency** : (Optional) Add a Unique ID field (attribute) to make A/B test assignment more consistent over time. * **Test group members' activation** : Select to send the A/B test and A/B test group names to an activation destination within an activation. * **Variant membership assignment** : After an A/B test is created and launched, Treasure Data saves the following information with the parent segment for individual profiles: * Profile ID * cdp_customer_id * Stable ID (Unique ID in A/B testing) * Journey * Journey stage * A/B test * Unique ID * Name * A/B test variant * Variant ID * Name ## How it Works Let's assume you have created your A/B tests and launched them within a live Journey. When a parent segment refreshes and the profiles move in the journey flow, any profiles in an A/B test step that are not assigned to a variant are assigned a variant. Journey Orchestration keeps these variant assignments static after they are assigned unless a profile drops out of the stage based on the following criteria: * If a profile drops out of a journey stage, the profile is removed from being a member of all the A/B tests within that journey stage. For example, if Beth is in both A/B test A and B variants in stage 1, if she drops out of stage 1, Beth is removed from both Test A and Test B. * If a profile is assigned a variant, drops out of the journey, and then re-enters the journey, the profile should stay with the same variant assignment previously assigned. See also [Journey FAQs](/products/customer-data-platform/journey-orchestration/batch/journey-faqs).