HOW VERDICTS WORK

Show the working.
Always.

Threshold makes a verdict every time data refreshes. This page is the engine, documented in pilot-facing language. Every rule below is auditable from the app. Tap any metric on a verdict screen and Threshold shows you the exact line of METAR or TAF that produced it, with a link back to the rule on this page.

The three states

GO
All metrics inside your active minima, with no TAF deterioration in the next 2 hours.

Cloudbase, visibility, wind, crosswind, and gust all comfortably within the preset you chose on the ground. No BECMG, FM, or PROB40 group in the next 2 hours that would push any metric over.

HOLD
Any metric within 10% of your minima, OR the TAF predicts a violation in the next 2 hours.

Marginal now or marginal soon. Threshold names the metric that triggered HOLD and the time of the predicted change so you can plan around it.

NO
Any metric outside your minima now.

The line you drew, crossed. Threshold names the metric, the observed value, and the limit. The decision is yours; the data is honest.

Edge cases (the unglamorous half)

Most of the engine is straightforward. The interesting work is in the edge cases. Every one of these is documented below, and every one is reachable from the verdict screen with one tap.

Stale data

METAR under 1 hour old: compute normally. 1 to 3 hours old: compute, but render with a prominent STALE · {N}m tag. Over 3 hours old: render ? (unknown). Never silently use ancient data.

Missing metric

If any of the 5 minima inputs cannot be parsed from the latest METAR, Threshold renders ? and labels which input is missing. Never infer.

TAF probability handling

Inside the 2-hour look-ahead window:

  • BECMG group: treated as definite at the midpoint of its transition window.
  • TEMPO that violates minima: HOLD.
  • PROB40 that violates minima: HOLD.
  • PROB30: ignored.

No nearby feed

If your nearest licensed airfield has no METAR/TAF, Threshold falls back to the nearest aerodrome with data within 15 NM, with the source labelled prominently (e.g. “Source: EGLL · 12 nm SE”). Beyond 15 NM, Threshold renders no nearby data. Never invent a verdict.

Active runway selection

Crosswind is computed against the runway with the highest headwind component for the reported wind. The chosen runway is shown alongside the crosswind value. Pro users may override per-airfield.

METAR amendments

AMD and SPECI replace the cached METAR if their issue time is later. The verdict re-computes immediately and a flip notification fires if the new verdict differs from the old.

Tie-break for “nearest”

When two airfields are equidistant: prefer the one with a current METAR feed. If both have one, alphabetical ICAO wins.

Movement debouncing

“Nearest airfield” recomputes only after 1 km of device movement or 5 minutes elapsed, whichever first. Stops the active-airfield from flickering as you drive.

Personal minima: the contract

Threshold doesn't decide. You decide, once, on the ground, calm. Five sliders. Four presets. The app enforces what you said when no one was rushing you. If you nudge a limit while a verdict is HOLD or NO, Threshold notices and surfaces it in Settings. Not a banner. Not a notification. A single quiet row that says: “you raised this limit while the verdict was HOLD. Was that the call you wanted?”

Cloudbase

500 to 5,000 ft AGL. Checked against METAR BKN/OVC ceiling.

Visibility

1.5 to 10 km. Checked against METAR visibility.

Wind

5 to 40 kt. Checked against METAR wind speed.

Crosswind

0 to 25 kt. Computed against the active runway.

Gust

5 to 40 kt. Checked against METAR gust.

Sources

Threshold reads from public aviation weather feeds. We never invent or interpolate values.

  • METAR aviationweather.gov global ADDS feed; EUROCONTROL B2B for UK and EU
  • TAF same as above, every 6 hours plus amendments
  • AIRFIELDS OurAirports static database, 928 UK and EU entries, refreshed per release
  • RUNWAYS Same source. Bearings, designators, and surface types for crosswind computation.

Last reviewed 2026-05-13. Versioned with the app. Open /press for the press kit. Back to Threshold.