RADIO
LISTENERS
Signal in the Static
on air
DECOUPLE
scroll for measurements & caveats ↓
SURFACE
WIDTH pt
COUNT
DATAlang

WHAT THIS IS

The radio listener count, previewed at the app's real geometry before anything ships. Decided behaviour: hidden below two listeners (at one, the card is exactly today's card); from two upward the number appears, sitting in the live ring. The count exists only while the radio is live, and the expanded Orbital player is the only radio surface that can be live — so this page previews that card, on both of its hosts (Signal tab and Base tab).

Everything is decided: the CAPTION form — the count in the ring's lower opening, the word beneath it at a tightened line box; threshold below two (at one listener this is exactly today's card); abbreviation from 10,000; unknown shows nothing — no dash, no held value; no tilde cue; refresh once per minute, fetched only while the surface is visible plus once on becoming visible. This page now shows that one shape; the remaining toggles are the ones still worth eyes: count, width, surface, language, live vs unknown. The wording is approved (2026-08-29): EN LISTENERS, DE HÖRER, ES OYENTES.

PLACEMENT

The volume gauge sweeps 300° starting at 210° (bottom-left), so the track, all 52 level bars, and the knob's whole travel leave one 60° opening at the bottom of the ring. The badge sits on the track's own circle (r 135.5) at the bottom of that opening — the knob's orbit, in the one region of the ring band where nothing is ever drawn. Measured clearances at the largest ladder step (39 pt capsule at 9999): 4.5 pt to the live disc above it, ≈48 pt to the nearest track cap. The 26 pt badge clears the dashed live ring (r 120.5 ± 0.5) by 1.5 pt, and the caption sits entirely below the ring band — its top edge is 29.5 pt below the dashed ring's lowest point. Neither element occludes anything that carries state. (The stacked variant, which breached that ring, was not chosen and is gone.)

THE SIZE LADDER — MEASURED (CoreText, CourierNewPSMT, advance 0.6001 em; badge = max(26, ceil(text)+12))

displayglyphstext pt @11badge ptshape
2 … 916.6026circle
47213.2026circle
999319.8032oval
1234 / 9999426.4039oval
12K / 99K319.8032oval
width budget108a chosen budget, not a wall — no ring element actually caps the oval (a wider capsule slides ≈2 pt beneath the track caps without touching them); the card itself is the hard stop

The ring is a fixed 290 pt on both surfaces and never scales with the card, so the ladder is identical on Signal and Base and at every device width. The card widths differ — Signal min(W−48, 344), Base W−48 uncapped — but the oval grows into the gauge's own opening, and nothing else owns that space: no element gives, at any step. At 320 pt the card clips the ring 9 pt per side on device (RN clips at the border box; this page's CSS clips at the padding box — 10 pt here, a known 1 pt divergence); the bottom opening is untouched either way. Abbreviation — decided: below 10,000 the raw digits ride (they fit with better than half the measured cap to spare); from 10,000 the value goes through formatDiffFloor unchanged — truncate toward zero, never round up: 19,999 → 19K, never 20K. The helper and its twelve miner call sites are untouched.

THE CAPTION — THE DECIDED SHAPE, MEASURED

word (draft)width pt @6.5/2ink top, of the 5.41 pt ascent
EN LISTENERS53.13.80
DE HÖRER29.54.75 — the Ö dieresis, the tallest ink
ES OYENTES41.33.80

The caption's line box is tightened from the card's 1.32 house box to Courier New's own ascent-plus-descent: 1.1328 em = 7.36 pt at size 6.5 — the smallest box that still contains every glyph. The clipping warning does not arise: all three words are caps-only (no descenders exist to cut), and the tallest ink, HÖRER's dieresis at 4.75 pt, sits 0.66 pt under the ascent. Clearance to the title slot: 0.9 pt at the 1.32 house box, 2.1 pt at the tightened box, and 3.1 pt after the 1 pt caption lift (badge-to-caption gap 2 → 1, decided 2026-08-29) — identical at every device width (the ring, the 15 pt card gap and the one-line nowrap caption are all width-fixed) and in all three languages (same box height, no descenders). Measured to the title's own glyph box the margin is 4.6 pt. Only the caption moved: the badge stays at r 135.5 with its 1.5 pt dashed-ring clearance, the ring and the card width are untouched.

The card cannot grow, by construction: the badge and the caption are absolutely positioned inside the fixed 290 pt ring box and take no layout space, the caption is one line and nowrap, and the card width is min(W−48, 344) on Signal / W−48 on Base — no content term exists in either chain. The app carries the same structural guarantee: the ring box is a fixed 290×290 and everything painted inside it is absolute.

THE PAUSED CLAIM

Separately reported and not fixed here: the live dressing keeps spinning while the stream is paused (live has no paused term). Does a label make that worse? The count is a claim about the station — N people listening — and it stays true while your own playback is paused; pausing does not falsify it. The chosen caption is a word form, so it sets an explicit, true, present-tense claim (“47 LISTENERS”) beside the dressing's implicit false one — corroborating detail that lends the false reading credibility. Whether a paused client counts itself in N belongs to the data path.

HOW THE NUMBER CHANGES

WHERE THIS PAGE CAN LIE TO YOU