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

For examples and details on the usage of this React component, visit the component demo pages:

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 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

The following class names are useful for styling with CSS (the state classes are marked).
To learn more, visit the component customization page.

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

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