Skip to content


Use checkboxes to toggle between checked and unchecked states in a list or as a standalone form field

Default example

The Checkbox component can be used in controlled and uncontrolled modes.

Checkbox components should always be accompanied by a corresponding label to improve support for assistive technologies.

Indeterminate example

An indeterminate checkbox state should be used if the input value is neither true nor false. This can be useful in situations where you are required to display an incomplete state, or one that is dependent on other input selections to determine a value.

Component props

Native <input> attributes are forwarded to the underlying React input component and are not listed below.

checkedBooleanundefinedOptional. Modifies true/false value of the native checkbox
defaultCheckedBooleanundefinedOptional. Checks the input by default in uncontrolled mode
onChangeChangeEventundefinedOptional. A callback function that is triggered when the checked state has been changed.
disabledBooleanundefinedOptional. Modifies the native disabled state of the native checkbox
indeterminateBooleanundefinedOptional. Applies an indeterminate state to the checkbox

Component status


  • Component props are documented on
  • Component does not have any unnecessary third-party dependencies.
  • Component can adapt to different themes.
  • Component can adapt to different screen sizes.
  • Component has 100% test coverage.


  • Component is used in a production application.
  • Common usage examples are documented on
  • Common usage examples are documented in storybook stories.
  • Component has been reviewed by a systems designer and any resulting issues have been addressed.
  • Component has been manually reviewed by the accessibility team and any resulting issues have been addressed.


  • Component API has been stable with no breaking changes for at least one month.
  • Feedback on API usability has been sought from developers using the component and any resulting issues have been addressed.
  • Component has corresponding design guidelines documented in the interface guidelines.
  • Component has corresponding Figma component in the Primer Web library.
Edit this page on GitHub
1 contributorrezrah
Last edited by rezrah on November 24, 2021