Skip to content
ABTO Guide
abto.app
Start free

Dashboard guide

Compare

Decide which variant does better on real traffic.

Compare is where you go a few days after splitting traffic in Routing, to read the result. It is also the screen to watch in the first days after a new variant starts taking traffic, in case error rate or latency spikes. Per-variant numbers are read here, side by side.

AreaWhat you seeHow to read it
Basis selectorChoose an event’s conversion rate or a success metric as the basis, and pick the two variants to compareA Primary metric, if there is one, is selected from the start
ChartThe chosen basis over time, one line overlaid per variantRead a difference only when the lines separate and hold their gap
Variant cardsPer variant: cost per request, average latency, error rate, and the value of the basis you choseFour numbers, read side by side. The first three average one request across every node in the feature
Per-run comparisonPer variant: run count, requests per run, and cost per runA variant that is cheaper per request can still cost more per run when each run sends more requests. Read it next to the cost per request on the variant cards
Node detailsPer node and variant: request count, cost per request, average latency, p50, p95, p99, and error rateWhen node request counts differ between variants, the variant cards move with them. This table compares node with node

The per-run comparison counts one agent or workflow run as the unit. It counts only calls for which your server SDK sends a run ID, and the table does not appear when no call carries one. A variant with successful requests whose cost is unknown shows no cost per run. To group several requests into one run, see the server SDK docs for JavaScript, Python, or JVM.

The variant cards and node details count one request your app sent as the unit.

  • Request count: a request ABTO retried still counts once.
  • Average latency: the time a successful request takes to get its response, including time spent on retries. Failed requests are left out.
  • Cost per request: based on requests whose cost is known.
  • Error rate: the share of requests that ended in a provider error (5xx), a timeout, a connection failure, or an ABTO internal error. Rate limits (429), malformed requests, API key or billing problems, and requests your app cancelled are not the variant’s fault, so they are not counted. You can find those failures on the Requests screen.

ABTO does not hand down statistical verdicts like p-values. It shows the numbers as they are.

OrderMetricThe call
1Error rateA variant with visibly higher errors is out, regardless of outcomes
2Success metric or conversionIs the new candidate level with or ahead of the incumbent
3Cost per requestAt similar outcomes, pick the cheaper one

If conversion is slightly higher at several times the cost, whether that is worth it is a business decision. Once the choice is settled, go back to Routing and move the traffic.