Day rating is a label, not a magic number
`day_rating` is a composite label: poor, marginal, fair, good, or excellent. Under the hood it comes from an internal score, but the API returns a readable label. Here is how to interpret it without being misled.
`day_rating` is one of five labels at a point: `poor`, `marginal`, `fair`, `good`, or `excellent`. It is the field pilots glance at when deciding whether to look harder at the forecast. It is also the field most likely to be misread, because it compresses several interacting signals into one short word.
How it is built. Under the hood, the exporter computes an internal score from `wstar_ms`, `hglider_agl_m`, buoyancy-to-shear ratio, and `convergence_ms`, then penalises the result for boundary-layer cloud and rain. That score is then mapped to labels: below 1 is `poor`, 1 to 2 is `marginal`, 2 to 3 is `fair`, 3 to 4 is `good`, and 4 or above is `excellent`.
The important point is that it is a summary, not a substitute for the underlying fields. A day with strong thermals can still end up only `fair` if cloud cover is suppressing heating or rain is clipping the useful window. The label is there to help you triage the day quickly, not to hide the meteorology.
What `excellent` means. The internal score is at the top end: strong thermals, high usable ceiling, a clean enough shear profile, and little enough cloud or rain penalty to spoil it. In the UK these days are rare. If the forecast says `excellent`, the flying should feel obviously better than a normal good day.
What `good` means. A proper cross-country day is on, but one part of the picture is keeping it short of exceptional. Often that is decent but not outstanding `wstar_ms`, or a ceiling that is solid rather than huge. These are still the days you clear your calendar for.
What `fair` means. Flyable, but with a real limiter. Often that limiter is ceiling, sometimes weak thermals, sometimes cloud suppressing the heating cycle. A `fair` day can still be worth a site flight, but it is not a day to read as quietly amazing.
What `marginal` means. One or more of the ingredients are close to not working: weak lift, low ceiling, too much cloud, too much shear, or patchy rain. Some sites and some pilots will still make something of it. Most will not.
What `poor` means. The score has been dragged down hard by the basics: rain, unusable ceiling, very weak lift, or a generally shut-down day. Stay home unless you know exactly what special case you are exploiting.
What `day_rating` does not tell you. It does not tell you about timing: a day can be `good` for four hours either side of a brief `excellent` window, or `good` for only 45 minutes between overdevelopment. Hourly values help here. It does not tell you about spatial variation: the label is for one grid cell, and an adjacent cell might differ. It does not tell you about forecast uncertainty: a confident `fair` and a shaky `good` both come back as a single label. Future work on ensembles will give us a confidence interval, but that is a 2026 roadmap item.
Pair `day_rating` with at least `wstar_ms` and `cloudbase_agl_ft` in any pilot-facing display. Showing it alone invites the misreading that `good` automatically means smooth, easy, high flying when the real limiter might still be low ceiling or a short weather window. Full documentation on the API reference.