# ExperimentVariantResult

> Tracon documentation. Tracon is a .NET package family that adds a control
> plane on Microsoft Agent Framework, published as NuGet packages that run
> inside your own ASP.NET Core application.
>
> Page: https://tracon.dev/http-api/schemas/experimentvariantresult/
> Summary: OpenAPI request or response schema for ExperimentVariantResult, including required fields, defaults, constraints, and linked nested types.

[← All HTTP schemas](/http-api/schemas/)

Summarizes run results for an experiment variant (calculated in the store).

**Shape:** `object`

| Property | Required | Type | Description | Rules |
|---|---|---|---|---|
| `variant` | yes | `string` | Gets the variant name. | — |
| `version` | yes | `integer (int32)` | Gets the definition version served by the variant. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `totalRuns` | yes | `integer (int64)` | Gets the total number of runs assigned to this variant. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `completedRuns` | yes | `integer (int64)` | Gets the number of successfully completed runs. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `failedRuns` | yes | `integer (int64)` | Gets the number of runs that ended with an error. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `canceledRuns` | yes | `integer (int64)` | Gets the number of cancelled runs. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `inputTokens` | no | `integer (int64)` | Gets the total input tokens. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `outputTokens` | no | `integer (int64)` | Gets the total output tokens. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `totalTokens` | no | `integer (int64)` | Gets the total tokens. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `totalCost` | no | `number (double)` | Gets the total cost for this variant. Returns `null` when pricing is undefined. | pattern `^-?(?:0\\|[1-9]\d*)(?:\.\d+)?$` |
| `currency` | no | `string` | Gets the currency. It is populated when `TotalCost` is populated. | — |
| `currencyCount` | no | `integer (int32)` | Gets the number of currencies this variant's runs are priced in. | pattern `^-?(?:0\\|[1-9]\d*)$` |
| `averageDurationMs` | no | `number (double)` | Gets the average duration of settled runs in milliseconds. Returns `null` when no run is settled. | pattern `^-?(?:0\\|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$` |
| `errorRate` | no | `number (double)` | Gets the error rate among settled runs, from 0 through 1. It uses the same calculation as `RunStatistics.ErrorRate`. | pattern `^-?(?:0\\|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$` |
| `averageScore` | no | `number (double)` | Gets the average numeric score from 0 through 100 for runs assigned to this variant. It uses the `RunScoreKind.Numeric` scores written by online evaluation. Returns `null` when no run is scored. This is not `0`; it means unknown, consistent with the existing `RunCost` contract. | pattern `^-?(?:0\\|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$` |
