> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arouter.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Uptime Optimization

> How ARouter tracks provider availability and maximizes uptime for your applications.

ARouter continuously monitors the health and availability of all upstream AI providers to ensure maximum uptime for your applications.

## How It Works

ARouter tracks response times, error rates, and availability across all providers in real time. This data drives intelligent routing decisions and helps surface reliability information in your [Activity](https://arouter.ai/activity) feed.

When a provider experiences degraded performance or an outage, ARouter automatically adjusts routing weights to deprioritize that provider — without any change required on your side.

## What ARouter Monitors

For each provider and model, ARouter continuously tracks:

* **Success rate**: Percentage of requests that complete without error
* **Time to first token (TTFT)**: Latency from request submission to first streaming token
* **Total response time**: End-to-end latency for non-streaming responses
* **Error types**: Distinguishes between transient errors (5xx, rate limits) and permanent errors (invalid model, bad request)

## Automatic Routing Around Outages

When ARouter detects that a provider is degraded:

1. The provider's routing weight is reduced or zeroed temporarily
2. Subsequent requests are routed to other healthy providers serving the same model family
3. The provider is re-evaluated periodically and reintroduced once health metrics recover

This happens transparently — your requests continue to succeed even during provider incidents.

## Customizing for Higher Availability

### Use Ordered Candidate Model Lists

For critical workloads, specify an ordered list of models. ARouter tries each in sequence until one succeeds:

```json theme={null}
{
  "models": [
    "anthropic/claude-sonnet-4-6",
    "openai/gpt-5.4",
    "google/gemini-2.5-pro"
  ],
  "route": "fallback"
}
```

This ensures your application keeps working even if the primary model's providers are fully unavailable.

See [Model Routing](/en/model-routing) for the full configuration reference.

### Use Auto Routing

Set `model: "auto"` to let ARouter dynamically select the best available model based on current provider health, cost, and capability:

```json theme={null}
{ "model": "auto" }
```

See [Model Routing — Auto Routing](/en/model-routing#auto-routing).

### Use `:floor` for Cost-Stable Routing

The `:floor` suffix routes to the lowest-cost provider serving a model, which is often a different provider than the default — providing natural diversity:

```json theme={null}
{ "model": "anthropic/claude-sonnet-4-6:floor" }
```

## Monitoring Provider Health

View real-time provider health data in the [ARouter Dashboard](https://api.arouter.ai). The dashboard shows per-model availability and latency trends so you can make informed decisions about model selection for your workloads.
