# Devices

Devices shows error and crash health per device model, built from what the mobile SDKs already send. Every event and every session carries the device model, OS version and app version, so nothing extra is enabled in the app.

## What you see

One row per device model and OS version, over a window of 1, 7, 30 or 90 days, filtered by environment and platform:

- **Error rate**: errors divided by sessions on that device. This is the number that says a phone is broken rather than popular.
- **Crash-free**: sessions that did not end in a crash.
- **Errors** and **share of errors**: absolute volume and the device's slice of everything in the window.
- **Sessions**: the denominator, so a 100% rate on two sessions reads differently from 12% on 5,000.
- **Highest error rate**: the summary card only considers devices with at least 5 sessions.

[Issues](/issues) on a row opens the issue list filtered to that device (`device.model:<model>`); every issue also carries `platform`, `os.version` and `app.version` tags for the same kind of filtering.

## Alerting on it

Create a **Device error rate** rule under Alerts to be notified when any device, or one specific model, crosses a rate you choose. See [Alerts](/alerts).

## How it is computed

The worker rolls sessions and errors into one row per project, environment, platform, device model, OS version and UTC day. Rates are computed at read time over the days you select, which keeps the page fast at any volume and keeps a day's numbers stable once the day is over.
