Actions

Button.Pill

Compact fully rounded action button with an optional leading and trailing icon around a required label. Shares the variant and state matrix of Button (primary, secondary, blurred across default, pressed, disabled) but uses the sm size at 28pt height and the pill radius for inline actions where vertical space is tight.

Overview

Compact fully rounded action button with an optional leading and trailing icon around a required label. Shares the variant and state matrix of Button (primary, secondary, blurred across default, pressed, disabled) but uses the sm size at 28pt height and the pill radius for inline actions where vertical space is tight.

Variant
Primary

The primary variant.

Variants and states

defaultpresseddisabled
primary
secondary
tertiary
blurred

Anatomy

ButtonPill
  1. 1IconLeading  optional  nested instance, 12pt
  2. 2Container.Label
  3. 3Label  required
  4. 4IconTrailing  optional  nested instance, 12pt

Measurements

Height, padding, gaps, and radius, measured live from the rendered component

Specs

Values resolved live from the token spine. Token names follow the active platform; each links to its page.

Container
#4B56C7
#2E368A
#0000000A · 4%
#00000014 · 8%
#FFFFFF33 · 20%
#FFFFFF99 · 60%
Border color, blurred
colorBorderBlur
#FFFFFF33 · 20%
Border width, blurred
strokeXs
0.5pt
Corner radius (pill)
radiusPill
Pill
Horizontal padding
spacingGapPositiveMd
8pt
Vertical padding (fixed 28pt height caps the effective inset)
spacingGapPositiveXl
12pt
Gap, icon to label
spacingGapPositiveNone
0pt
#FFFFFF00 · 0%
#00000014 · 8%
Label
Label and icon, primary and blurred
colorContentOnDark
#FFFFFF
Label and icon, secondary
colorContentAccent
#4B56C7
Label typography
label.md.semibold
Size 12px · typographyFontSizeLabelMdLine height 16px · typographyLineHeightLabelMdWeight 600 · typographyFontWeightSemiboldTracking 0px · typographyTrackingLabelMdParagraph spacing 0px · typographyParagraphSpacingLabelMdFamily SF Pro Text · typographyFontFamilyText
Container.Label inset
spacingGapPositiveXs
4pt
Tertiary label
colorContentAccent
#4B56C7
Icon
Icon size
literal value
12pt
State
Opacity, disabled state
literal value
32%

Properties

The component’s Figma API, the properties you set on an instance. Useful to designers in Figma and to engineers mapping it to code props.

PropertyTypeValues
variantvariantprimary, secondary, tertiary, blurred
statevariantdefault, pressed, disabled
labelTexttextButton label
hasIconLeadingbooleanTrue
hasIconTrailingbooleanTrue
isOnMediabooleanFalse

Accessibility

The pill is shorter than a standard button, so keep the tap target at least 44pt tall by adding vertical padding around it. Use concise, action-led labels, and do not rely on the disabled opacity alone to convey state.

Reference: Apple Human Interface Guidelines and WCAG 2.5.5 Target Size.