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';
You can 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.

Rule nameGlobal classDescription
root.MuiBadge-rootStyles applied to the root element.
badge.MuiBadge-badgeStyles applied to the badge span element.
dot.MuiBadge-dotStyles applied to the badge span element if variant="dot".
standard.MuiBadge-standardStyles applied to the badge span element if variant="standard".
anchorOriginTopRight.MuiBadge-anchorOriginTopRightStyles applied to the badge span element if anchorOrigin={{ 'top', 'right' }}.
anchorOriginBottomRight.MuiBadge-anchorOriginBottomRightStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'right' }}.
anchorOriginTopLeft.MuiBadge-anchorOriginTopLeftStyles applied to the badge span element if anchorOrigin={{ 'top', 'left' }}.
anchorOriginBottomLeft.MuiBadge-anchorOriginBottomLeftStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'left' }}.
invisible.MuiBadge-invisibleState class applied to the badge span element if invisible={true}.
colorPrimary.MuiBadge-colorPrimaryStyles applied to the badge span element if color="primary".
colorSecondary.MuiBadge-colorSecondaryStyles applied to the badge span element if color="secondary".
colorError.MuiBadge-colorErrorStyles applied to the badge span element if color="error".
colorInfo.MuiBadge-colorInfoStyles applied to the badge span element if color="info".
colorSuccess.MuiBadge-colorSuccessStyles applied to the badge span element if color="success".
colorWarning.MuiBadge-colorWarningStyles applied to the badge span element if color="warning".
anchorOriginTopRightRectangular.MuiBadge-anchorOriginTopRightRectangularStyles applied to the badge span element if anchorOrigin={{ 'top', 'right' }} overlap="rectangular".
anchorOriginBottomRightRectangular.MuiBadge-anchorOriginBottomRightRectangularStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'right' }} overlap="rectangular".
anchorOriginTopLeftRectangular.MuiBadge-anchorOriginTopLeftRectangularStyles applied to the badge span element if anchorOrigin={{ 'top', 'left' }} overlap="rectangular".
anchorOriginBottomLeftRectangular.MuiBadge-anchorOriginBottomLeftRectangularStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'left' }} overlap="rectangular".
anchorOriginTopRightCircular.MuiBadge-anchorOriginTopRightCircularStyles applied to the badge span element if anchorOrigin={{ 'top', 'right' }} overlap="circular".
anchorOriginBottomRightCircular.MuiBadge-anchorOriginBottomRightCircularStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'right' }} overlap="circular".
anchorOriginTopLeftCircular.MuiBadge-anchorOriginTopLeftCircularStyles applied to the badge span element if anchorOrigin={{ 'top', 'left' }} overlap="circular".
anchorOriginBottomLeftCircular.MuiBadge-anchorOriginBottomLeftCircularStyles applied to the badge span element if anchorOrigin={{ 'bottom', 'left' }} overlap="circular".
overlapRectangular.MuiBadge-overlapRectangularStyles applied to the badge span element if overlap="rectangular".
overlapCircular.MuiBadge-overlapCircularStyles applied to the badge span element if overlap="circular".

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