---
title: Radio Group
description: A set of checkable buttons—known as radio buttons—where no more than one of the buttons can be checked at a time.

link:
  doc: https://kobalte.dev/docs/core/components/radio-group
  api: https://kobalte.dev/docs/core/components/radio-group#api-reference
---

<ComponentPreview name="radio-group-demo">

```tsx file=<rootDir>/apps/docs/src/registry/examples/radio-group-demo.tsx

```

</ComponentPreview>

## Installation

<ComponentInstallation>

<Step>

<StepItem>Copy and paste the following code into your project:</StepItem>

  <ComponentSourceTabs>

    ```tsx title="components/ui/radio-group" file=<rootDir>/apps/docs/src/registry/ui/radio-group.tsx

    ```

    ```tsx title="components/ui/radio-group" file=<rootDir>/apps/unocss-playground/src/registry/ui/radio-group.tsx

    ```

  </ComponentSourceTabs>

</Step>

</ComponentInstallation>

## Usage

```tsx
import {
  RadioGroup,
  RadioGroupItemControl,
  RadioGroupItemIndicator,
  RadioGroupItemInput,
  RadioGroupItemLabel,
  RadioGroupItems,
  RadioGroupLabel,
} from "@components/ui/radio-group"
```

```tsx
<RadioGroup>
  <RadioGroupLabel />
  <RadioGroupItems>
    <RadioGroupItem>
      <RadioGroupItemInput />
      <RadioGroupItemControl>
        <RadioGroupItemIndicator />
      </RadioGroupItemControl>
      <RadioGroupItemLabel />
    </RadioGroupItem>
  </RadioGroupItems>
</RadioGroup>
```

## Changelog

#### 2025-11-13 Separate `<RadioGroup.ItemInput />` from `<RadioGroup.Item />`

The `<RadioGroup.ItemInput />` component has been separated from the `<RadioGroup.Item />` component for better flexibility and customization.
