Standard versus Advanced A/B Testing
Both tests can be enabled at the same time. Advanced rules run first. If no advanced rule matches, CallKaro continues to the standard A/B test and published-version lookup.
Before you start
- Create the agent versions you want to route calls to.
- Include the values used by your conditions in the call’s
metadataobject.
Configure an Advanced A/B Test
- Open your agent.
- Open Manage Versions.
- Select Advanced A/B Test.
- Enter the condition for the first IF block.
- Choose whether the block returns a Version or a Language.
- Select one target, or choose a split and assign percentages to multiple targets.
- Add ELSE IF rules for additional customer groups.
- Optionally add an ELSE block to handle every remaining call.
- Open Test & Preview and enter sample metadata on your conditions.
- Select Save & Enable.
Write conditions
Every comparison must be wrapped in parentheses and must contain at least onemetadata.variable_name value.
Use uppercase
AND or OR. Do not mix AND and OR at the same bracket level; add brackets to make the intended order explicit.
Text comparisons are case-insensitive. Numeric-looking values are compared as numbers. A missing metadata value does not match
==, >, <, >=, or <=, but it does match != when compared with a present value.Choose what a rule returns
Return a version
The selected agent version runs the call immediately. This bypasses the standard A/B test and published-version lookup. Use this when the rule identifies the exact prompt and configuration that should handle the customer.Return a language
The rule changes the call language, then CallKaro selects a version using this order:- Standard A/B test versions for that language.
- The published version for that language.
- The agent’s default-language configuration if no suitable version is available.
Split traffic inside a rule
A matching block can return multiple versions or languages. Assign a percentage to each target; all shares must be whole numbers greater than zero and total exactly 100%. For example, an enterprise rule could send:- 70% of matching calls to
Enterprise v2. - 30% of matching calls to
Enterprise v3.
Routing priority
CallKaro resolves the version in this order:- A version explicitly supplied with the call request.
- The first matching Advanced A/B rule.
- An eligible previous version for repeat-caller handling.
- The standard ratio-based A/B test for the selected language.
- The published version for the selected language.
- The default-language fallback.
Test before enabling
The Test & Preview tab evaluates the unsaved rules using sample call metadata. You can enter values manually, use saved metadata presets, or import JSON, CSV, or Excel data. The preview shows:- Which rules matched, did not match, or were skipped.
- Which block won.
- The version or language targets returned by that block.
- A sample weighted result when the block contains a split.
Edit or disable the test
Return to Manage Versions and select Edit Advanced A/B Test to change the rules. Selecting Disable stops rule evaluation but keeps the configuration so it can be enabled again later. Versions referenced by saved rules cannot be deleted or deactivated, even while the test is disabled. Remove the version from every advanced rule before deleting or deactivating it.Availability and limitations
- Direct and regular outbound calls can evaluate the
metadatasupplied with the request. - Inbound routing does not currently receive call metadata. An
ELSEblock provides the most predictable inbound fallback. - If no rule matches and there is no
ELSEblock, the call continues through standard A/B and published-version resolution.
Example
Suppose an agent has three active versions:Enterprise EnglishStandard EnglishHindi Sales
For this call metadata:
Enterprise English. The second rule is not evaluated after the first match.