# Output formats
`bee-check` emits results in one of two formats, selected with
`--output`.
## `--output text` (default)
Human-readable, terminal-friendly. Roughly:
```
ref c79394a6c311f816373ec9945365325e7fc0784cfa9a62deec1524d2c2bdc36a
status Retrievable
vantages:
http://localhost:1633 retrievable 312 ms nb 71 PO 3
https://b.example retrievable 1102 ms nb 4a PO 0
gateways:
https://api.gateway.ethswarm.org retrievable 480 ms HTTP 200
```
If `--per-chunk` was used, additional tables follow for chunk stats
per vantage, per neighborhood, and (verbose mode) the full chunk
matrix.
This format is for **eyes**, not scripts. It's not stable across
versions — the JSON format is.
## `--output json`
Machine-readable, stable shape. Emits the full report as a JSON
object matching [`spec_version: 1`](../reference/report-shape.md):
```json
{
"reference": "c79394a6c311f816373ec9945365325e7fc0784cfa9a62deec1524d2c2bdc36a",
"status": "retrievable",
"vantages": [
{
"bee_url": "http://localhost:1633",
"retrievable": true,
"elapsed_ms": 312,
"overlay": "7179...6c9a",
"bee_version": "2.7.2-rc1-868c1d52",
"proximity_to_root": 3
}
],
"spec_version": 1
}
```
Canonical scripting pattern:
```bash
bee-check <ref> --per-chunk --output json | jq '.chunk_stats.per_neighborhood'
```
The JSON output is also what `bee-check-web` consumes via drag-and-
drop, so you can share a report file with a teammate who'll then
visualize it in the browser without re-running the probe.
## Stability guarantees
- **New fields** may appear in any release without bumping
`spec_version`. Consumers must ignore unknown fields.
- **Renamed or removed fields** bump `spec_version`.
- The text format has **no stability guarantee** — don't grep it for
scripting. Use `--output json`.