E3.02.2radio cannot deselect to emptydesign

A selected option cannot be cleared to empty

Aliases: sticky radio · cannot uncheck · no empty-by-reclick

What it is

Once a radio group has a selected option, clicking that same option does not bounce it back to “nothing chosen.” Cannot deselect to empty is the pointer difference from a checkbox: a checkbox turns off on a second click; a radio can only move the value to another item. People arriving from checkbox habits hammer the selected item hoping to clear it; if the UI neither switches nor acknowledges, they assume the click was dropped.

This is not a defect. It is the operational corollary of a mutex: empty is not a state the control can walk into. If empty is a legal answer, offer a named empty option rather than teaching the selected item to clear itself.

Why it happens

A radio stores the current value on the group, not on the item. A click writes that group-level value; a second click on the same item writes the same value, so nothing changes. A checkbox stores the value on the item, so a second click negates. The write sites differ while the gesture looks identical, which is why transfer errors cluster on “I want this empty.”

Platform widgets almost never treat a second click as clear. A custom control that secretly allows it fights native radios on the same page: some groups peel off, some do not, and prediction collapses. When clearing fails, people hunt for an out-of-group reset, or they treat the selected item as a broken button.

Where it stops holding

An explicit “none” or “not now” looks like clearing but is a move to a named value; the group is still non-empty. Arrow keys move selection inside the group and likewise never reach empty; focus can leave, the value stays. Keeping the group empty until the first click does not contradict “cannot clear after selection” — empty exists only before the first write. A custom list that selects on click and cancels on a second click is already not a radio; drop the dots and use a cancellable model so the glyph does not promise a value that cannot be peeled off.

Applying it

  • Keep the platform default: a second click on the selected radio does nothing; only another item may take the value.
  • Do not invent second-click-to-clear on some radio groups; mixed with native widgets, prediction dies.
  • When someone is clearly hammering the selected item, a short line can tell them to pick another item, or point at the option named “none.”
  • How to check: have someone pick one item, then ask them to return to nothing selected. If they can only refresh the page, a clear path was never designed; if a second click actually clears, the control has stopped being a radio.

Related

  • Within the group: E3.02.1 Radios mean exclusive and exactly one · E3.02.3 If empty is needed, add an explicit empty option
  • Adjacent: E3.01 Checkboxes · E3.11 Default-Value Strategy
  • Search terms: radio deselect · cannot uncheck radio · sticky selection

Cards in the same group

Quick Actions

Share

Share this page

ios_share

https://hci.top/en/handbook/E3.02.2