React Confidence / Uncertainty Meter
A single confidence number invites false precision, and a confident-looking green bar on a wrong answer is exactly the failure this component exists to prevent. So it draws the calibrated band around the estimate, not just a point — and never signals the level by colour alone.
Verify this before relying on it — the model is not confident.
Installation
Props
| Prop | Type | Description |
|---|---|---|
| value | number | Point estimate, 0–1 |
| range | [number, number] | Calibrated band; defaults to symmetric ±0.08 |
| variant | "full" or "badge" | Full meter or compact inline badge |
| label | string | What the confidence is about |
The band is the honesty
A model that says "92%" is really saying "somewhere around 92%", and rendering it as a single hard line implies a precision the number doesn't have. The meter shades the calibrated band — the range the true value likely falls in — behind the point marker, and prints it (88–96%) so the reader sees the spread, not just the midpoint. A wide band on a high number is a very different thing to act on than a tight one.
Never colour alone
The level (High / Moderate / Low) is carried three ways at once: a word, a shield icon whose shape changes, and the bar treatment. That redundancy is not decoration — it is the Kelvin house rule that a colour-blind reader, a greyscale print, or a glance too quick to register hue must still get the message. And low confidence doesn't merely turn red; it says, in text, verify this before relying on it, because the whole point of surfacing uncertainty is to change what the reader does with the answer.
New components every week
Get the week's new Kelvin UI components and templates in one short email. No spam, unsubscribe anytime.