Skip to content

Button: scale default icon visuals to balance with small button labels #8620

Description

@donjo

Feature request

Consider adjusting the default size of standard Octicons in small buttons to preserve the perceived visual balance between the icon and label found in medium buttons.

Motivation

Small buttons reduce the label size but retain the same default 16px icon size as medium buttons, making the icon proportionally more prominent.

It would be helpful for the small variant to use an appropriate smaller default icon size, rather than requiring consumers to customize each visual. The goal is consistent perceived balance, not necessarily exact mathematical scaling, since icon crispness and supported Octicon sizes should inform the decision.

Proposed behavior

  • Apply size-aware defaults to standard Octicons in both leading and trailing visuals.
  • Preserve explicitly supplied icon sizes and custom visuals.
  • Keep the existing medium button appearance unchanged.

The specific smaller icon size would need design exploration. Because this affects Button's visual proportions, the sizing decision may also need coordination across Primer implementations rather than being React-only.

Activity

  1. Pranay623 commented on Oct 28, 2026

    @Pranay623
    Contributor

    @donjo please assign this issue to me as my last pr got merged and i have no issues left

  2. sam-smolenski commented on Oct 28, 2026

    @sam-smolenski

    I agree we should do this.

    Unfortunately don't have historical context, but it appears we don't scale up or down with IconButton either. I'm wondering if we should explore that as an option as well. Agreed this needs a quick design exploration to ensure there aren't any edge-cases and to determine if we'd want up and down scaling or just down to give smaller buttons more space.

  3. changed the issue type fromtoon Oct 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    component: ButtonIssues related to the Button componentdesign-polishfigmaWork needed to sync Figma library and implementation

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions