Skip to content

Badge API

API reference docs for the React Badge component. Learn about the props, CSS, and other APIs of this exported module.

Demos

Import

import Badge from '@mui/material/Badge';
// or
import { Badge } from '@mui/material';

Learn about the difference by reading this guide on minimizing bundle size.

Props

Props of the native component are also available.

NameTypeDefaultDescription
anchorOrigin{ horizontal: 'left'
| 'right', vertical: 'bottom'
| 'top' }
{ vertical: 'top', horizontal: 'right', }

The anchor of the badge.

badgeContentnode-

The content rendered within the badge.

childrennode-

The badge will be added relative to this node.

classesobject-

Override or extend the styles applied to the component.

See CSS classes API below for more details.

color'default'
| 'primary'
| 'secondary'
| 'error'
| 'info'
| 'success'
| 'warning'
| string
'default'

The color of the component. It supports both default and custom theme colors, which can be added as shown in the palette customization guide.

componentelementType-

The component used for the root node. Either a string to use a HTML element or a component.

components{ Badge?: elementType, Root?: elementType }{}

The components used for each slot inside.
This prop is an alias for the slots prop. It's recommended to use the slots prop instead.

componentsProps{ badge?: func
| object, root?: func
| object }
{}

The extra props for the slot components. You can override the existing props or add new ones.
This prop is an alias for the slotProps prop. It's recommended to use the slotProps prop instead, as componentsProps will be deprecated in the future.

invisibleboolfalse

If true, the badge is invisible.

maxnumber99

Max count to show.

overlap'circular'
| 'rectangular'
'rectangular'

Wrapped shape the badge should overlap.

showZeroboolfalse

Controls whether the badge is hidden when badgeContent is zero.

slotProps{ badge?: func
| object, root?: func
| object }
{}

The props used for each slot inside the Badge.

slots{ badge?: elementType, root?: elementType }{}

The components used for each slot inside the Badge. Either a string to use a HTML element or a component.

sxArray<func
| object
| bool>
| func
| object
-

The system prop that allows defining system overrides as well as additional CSS styles.

See the `sx` page for more details.

variant'dot'
| 'standard'
| string
'standard'

The variant to use.

The ref is forwarded to the root element.

Theme default props

You can use MuiBadge to change the default props of this component with the theme.


CSS classes

These class names are useful for styling with CSS. They are applied to the component's slots when specific states are triggered.

Class nameRule nameDescription
.MuiBadge-anchorOriginBottomLeftanchorOriginBottomLeftStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'left' }}.
.MuiBadge-anchorOriginBottomLeftCircularanchorOriginBottomLeftCircularStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'left' }} overlap="circular".
.MuiBadge-anchorOriginBottomLeftRectangularanchorOriginBottomLeftRectangularStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'left' }} overlap="rectangular".
.MuiBadge-anchorOriginBottomRightanchorOriginBottomRightStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'right' }}.
.MuiBadge-anchorOriginBottomRightCircularanchorOriginBottomRightCircularStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'right' }} overlap="circular".
.MuiBadge-anchorOriginBottomRightRectangularanchorOriginBottomRightRectangularStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'right' }} overlap="rectangular".
.MuiBadge-anchorOriginTopLeftanchorOriginTopLeftStyles applied to the badge span element if anchorOrigin={{ 'top', 'left' }}.
.MuiBadge-anchorOriginTopLeftCircularanchorOriginTopLeftCircularStyles applied to the badge span element if anchorOrigin={{ 'top', 'left' }} overlap="circular".
.MuiBadge-anchorOriginTopLeftRectangularanchorOriginTopLeftRectangularStyles applied to the badge span element if anchorOrigin={{ 'top', 'left' }} overlap="rectangular".
.MuiBadge-anchorOriginTopRightanchorOriginTopRightStyles applied to the badge span element if anchorOrigin={{ 'top', 'right' }}.
.MuiBadge-anchorOriginTopRightCircularanchorOriginTopRightCircularStyles applied to the badge span element if anchorOrigin={{ 'top', 'right' }} overlap="circular".
.MuiBadge-anchorOriginTopRightRectangularanchorOriginTopRightRectangularStyles applied to the badge span element if anchorOrigin={{ 'top', 'right' }} overlap="rectangular".
.MuiBadge-badgebadgeStyles applied to the badge span element.
.MuiBadge-colorErrorcolorErrorStyles applied to the badge span element if color="error".
.MuiBadge-colorInfocolorInfoStyles applied to the badge span element if color="info".
.MuiBadge-colorPrimarycolorPrimaryStyles applied to the badge span element if color="primary".
.MuiBadge-colorSecondarycolorSecondaryStyles applied to the badge span element if color="secondary".
.MuiBadge-colorSuccesscolorSuccessStyles applied to the badge span element if color="success".
.MuiBadge-colorWarningcolorWarningStyles applied to the badge span element if color="warning".
.MuiBadge-dotdotStyles applied to the badge span element if variant="dot".
.MuiBadge-invisibleinvisibleState class applied to the badge span element if invisible={true}.
.MuiBadge-overlapCircularoverlapCircularStyles applied to the badge span element if overlap="circular".
.MuiBadge-overlapRectangularoverlapRectangularStyles applied to the badge span element if overlap="rectangular".
.MuiBadge-rootrootStyles applied to the root element.
.MuiBadge-standardstandardStyles applied to the badge span element if variant="standard".

You can override the style of the component using one of these customization options: