
Any metric becomes a target, and any target gets gamed — Goodhart's law is a design constraint. How a focus score survives its users' cleverness with diminishing returns, caps and diversity weighting.
Goodhart's law meets the habit tracker
When a measure becomes a target, it ceases to be a good measure. Habit trackers meet this law faster than most software because the user is also the auditor: the moment a score matters to someone, that person starts discovering its exploits. A naive focus score — points per blocked site — is defeated by its own user in one bored afternoon of toggling blocks.
FocusTube's dashboard needed a number that survives this. Not because users are cheaters, but because a score that can be gamed will be gamed unconsciously — optimized into meaninglessness without a single bad intention. Designing against that is a mathematical problem before it's a moral one.
Diminishing returns, daily caps, diversity
The Focus Score applies three guards. Diminishing returns: the tenth deflected ad counts less than the first, so repeated identical actions flatten toward zero marginal gain. Daily caps: no category of action can single-handedly max the score, so "Block 30 minutes" pressed a hundred times cannot buy a 100. Diversity weighting: a day mixing deflections, focus minutes and saved minutes outscores a day of one trick, which matches the intuitive shape of a genuinely focused day.
Together they encode a philosophy: the score estimates the quality of protected attention, not the volume of interactions with the extension. The best possible day is one where varied protections each did their job — not one where a button was abused.
Why the rings don't guard themselves
A subtle split: the rings display raw behavior while the score underneath grades it. The rings are honest counters — you did twelve deflections today, and twelve is twelve. Anti-gaming lives only in the score, where comparisons across days and people actually happen. Separating display from grading lets the rings stay satisfying and truthful while the headline number stays resistant to manipulation.
It also localizes failure. If an exploit surfaces — and on a DOM-touching platform, something always surfaces — the fix patches the scoring function, not the event record. The history stays clean; only the interpretation improves.
The next signal is quality, not quantity
The roadmap's top research item is wiring Watch Intent's match rate into the score as its first quality signal — the difference between sixty planned minutes and sixty drifted ones, finally visible in the headline number. It's the logical end of the anti-gaming arc: the hardest thing to fake has always been knowing why you're here, and a score that captures even a fraction of that is a score worth closing rings for.

