Icon · Outlined

Icon · Filled

Initials · Outlined

B
B
BJ
BJ
BJ
BJ

Initials · Filled

B
B
BJ
BJ
BJ
BJ

Image

Ben Jackson
Ben Jackson
Ben Jackson
Ben Jackson
Ben Jackson
Ben Jackson

preview

props

PropTypeDefaultDescription
type'icon' | 'initials' | 'image''icon'Controls the avatar content. Keep consistent across a group.
size'xs' | 'small' | 'medium' | 'large' | 'xlarge' | '2xlarge''medium'Controls the overall diameter and internal proportions.
avatarStyle'outlined' | 'filled''outlined'Visual treatment for icon and initials types. Has no effect on image.
initialsstringRequired when type is 'initials'. xs and small sizes show only the first character.
srcstringImage URL. Required when type is 'image'.
altstring''Alt text for image type. Empty string hides it from screen readers.
colorstringCustom background colour for icon and initials. Replaces the default sand-2 fill. Pass the same value across a group for visual consistency.
status'positive' | 'warning' | 'negative'Optional status badge shown at the bottom-right of the avatar. Scales proportionally with all sizes.

usage

Avatars are building blocks used inside other components like Avatar List Item. When displaying a group of avatars, keep the type, style, and colour consistent. Use the color prop to align with the surrounding intent.

When to use

  • To represent a person, user, or entity alongside their name
  • Inside Avatar List Item for activity feeds, participant lists, or onboarding steps
  • In profile headers or summary cards at larger sizes (xlarge or 2xlarge)

Do not use

  • Mix types or styles within the same group — all icon, all initials, or all image
  • Mix fill colours across avatars in the same list
  • Use the image type when photos aren’t reliably available for all items — fall back to initials or icon instead
BJ
DB
GL
DoUse the same type and colour across all avatars in a group
DB
GL
Don’tMix types, styles, or colours within the same group

sizes

B
XS (24px)Tight contexts — inline tags or compact lists.
B
Small (32px)Dense lists where space is limited.
BJ
Medium (40px)Default size for most list contexts.
BJ
Large (48px)Standard size inside Avatar List Item.
BJ
XLarge (56px)Profile sections and participant headers.
BJ
2XLarge (72px)Profile hero areas and prominent display.

styles

Outlined uses a subtle border and transparent background — best on white or light surfaces. Filled uses a solid background — use the color prop to match an intent colour and keep it consistent across a list. Never mix styles within the same group.

BJ
Outlined1px border on a transparent background. Use on white or light surfaces.
BJ
FilledSolid background. Pass a color token to match the surrounding intent.

types

Choose the type that best reflects the data available. Prefer image when photos are reliably available, initials when names are known, and icon as the generic fallback. Never mix types in the same list.

IconGeneric person silhouette. Use as a fallback when no photo or name is available.
BJ
BJ
Initials1–2 characters derived from the person's name. xs and small sizes show one character only.
Ben Jackson
Devon Bayer
ImageReal profile photo. Only use when photos are reliably available for every item in the group.

status

Status badges communicate the current state of a person or entity. They scale proportionally across all avatar sizes and work with every type — icon, initials, and image. Always use a status that matches the actual sentiment; never use positive for a warning or error state.

BJ
PositiveCompleted, verified, or in good standing.
BJ
WarningRequires attention — not critical but notable.
BJ
NegativeError, blocked, or a critical issue exists.

Scales across all sizes

B
B
BJ
BJ
BJ
BJ