Needle/Thinking out loud

One slot: the case for a single menu bar item

July 26, 2026 · 2 min read

The menu bar is the most expensive real estate on a Mac. Every pixel of it is visible in every app, all day, and on a laptop the notch takes a bite out of the middle while every utility you install queues up for what’s left. A system monitor, an app whose whole purpose is to sit up there, should treat that space like it’s paying rent. Because it is: yours.

Readout’s first release didn’t. Network, CPU, memory, thermals: each widget was its own status item, because that’s the natural way to build it and macOS makes it easy. Then I looked at my own menu bar and saw the problem: four items, four gaps between them, reading unmistakably as four separate apps loitering in a row. macOS pads every status item it’s given, and the padding isn’t negotiable. The layout was spending my scarcest pixels on saying nothing.

Four widgets in one slot take less room than two widgets in two.

Hairlines, not gaps

The fix was to render everything into a single status item: one canvas, with the widgets separated by hairline dividers drawn at exactly the weight of the system’s own separators. The padding cost is paid once instead of four times, and the whole strip reads as one instrument instead of a crowd. The labels are spelled out, CPU 18% and CPU 48°, so a load percentage never masquerades as a temperature, and everything renders as a template image, the same frosted treatment macOS gives its own status icons, so it stays legible on any wallpaper in either appearance.

The old behavior survives as a toggle, because combining has one genuine cost: separate items can be ⌘-dragged into your own arrangement, and some people arrange. But the default should spend pixels the way an instrument panel does: densely, in one place, designed as a whole. If an app is going to live in the most expensive row of pixels you own, the least it can do is act like it noticed the price.

← All Needle notes