Skip to content

Checkbox

Edit on GitHub

An input for choosing from predefined options, either as a standalone toggle or as part of a group where users can select multiple values from a list.

@volvo-cars/css v3.1.0@volvo-cars/react-forms v3.1.0
  • A user can select multiple, independent options from a list. Checking one has no effect on the others.
  • The selection is part of a form and only takes effect on submit, not immediately, such as preferences saved with a “Save” button.
  • Indicating agreement or consent, such as accepting terms and conditions.
  • Filtering or batch-selecting rows in a table or list, including with the indeterminate state for a parent checkbox whose children are partially selected.
  • A parent/child list of sub-selections where a single checkbox can bulk-select or bulk-deselect a nested group.
  • A single, standalone on/off setting inside a form that’s saved together with other fields.
  • Only one option can be selected from the set. Use radio buttons instead. They make mutual exclusivity visually clear and prevent multi-select.
  • The change should take effect immediately, with no separate save or submit step, such as toggling a setting on or off. Use a switch instead.
  • Selecting an option changes the state or view of other content on the page, rather than just recording a value to submit. Use a button group or segmented control pattern instead.
  • The options live outside a form, as a menu of actions or filters rather than values to submit. Use a menu or dropdown pattern instead.
  • The list of options is long and needs to stay compact, or benefits from search. Showing dozens of checkboxes inline doesn’t scale. Use a multiselect or searchable list pattern instead.
  • The action is destructive or requires explicit confirmation, such as permanently deleting data. Pair a checkbox with a confirmation button or dialog rather than relying on the checkbox alone to trigger the action.

Keep labels short and specific, max 40 characters, so users can scan a list of options quickly. Keep hint text under 150 characters.