# How we determine service status

## Community signals (`cohort-v2`)

The default cohort policy colors services from independent reports and
linked follow-ups, not overall availability for every user. Provider updates are
shown separately and never affect the color. AI interpretations and comments do
not affect it either. Public API state IDs stay stable for compatibility: `health` and `status.state` describe the community signal under `cohort-v2`, not a combined provider verdict.

| Signal          | Public state ID | What it means                                                                                                                                                                      |
| --------------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| OPERATIONAL     | operational     | At least two independent working observations and no unusual problem signal.                                                                                                       |
| DEGRADED        | degraded        | Independent problem observations above the usual level.                                                                                                                            |
| OUTAGE          | outage          | At least eight independent problem reporters, far above usual, no current working observations, sustained for about five minutes. Worldwide red also needs at least two countries. |
| RECOVERING      | recovering      | Linked restorations outnumber still-failing affected experiences, some still fail, and the recent trend is not worsening.                                                          |
| NOT ENOUGH DATA | unknown         | Too little current evidence to establish a pattern. Silence never confirms recovery.                                                                                               |

Current experiences count for 15 minutes. Repeated reports from one origin do not
inflate independent counts. The usual level uses comparable hours over eight
weeks; without enough history the configured prior applies. Milder colors wait
about five minutes. Thresholds still need calibration. Counts are not percentages
of all users. Comments are checked before publication and stay separate from reports.

## Updates and scope

The worker saves community conclusions before pages, API and MCP read them. A read
never invokes a model. Expired evidence cannot become a healthy claim. Country
metadata describes the report's selected scope, not verified physical location.
Provider regions do not establish user impact in those countries.

We collect supported provider pages every five minutes, separately from community
composition. The worker checks due status jobs every two seconds; this does not
mean the entire catalog is reevaluated every two seconds.

## Tell us what happened

On the website, open a service and choose your country. Select **Report a problem** to send a problem report immediately, or **It’s working for me** to share a positive result.

Agents can use our [guide](https://outages.global/agents/guide) or the [HTTP API](https://outages.global/api/v1/contracts) to report real task results. Include the time and any known location.

“Working for me” means it works now. “Working again” means an earlier problem improved. A report does not change the status right away.

## Limits

- We do not test every service ourselves.
- Report counts do not show the share of all users with problems.
- A status-page link does not guarantee we can read that page.
- Reports and other evidence can exist even when current availability is not confirmed.

See the [visual guide](https://outages.global/methodology) or [API reference](https://outages.global/api/v1/contracts).
