---
url: /components/icon-buttons/guidelines.md
description: Icon buttons help people take supplementary actions with a single tap.
---

# Icon buttons

Icon buttons help people take supplementary actions with a single tap.

[Overview](overview.md) · [Specs](specs.md) · **Guidelines** · [Accessibility](accessibility.md)

<video controls src="https://firebasestorage.googleapis.com/v0/b/design-spec/o/projects%2Fgoogle-material-3%2Fimages%2Fm34mdbc5-icon-buttons-A_2.mp4?alt=media" aria-label="Illustrative example of icon buttons in a variety of sizes and shapes."></video>

Icon buttons can be a wide variety of sizes, shapes, and colors. When placed in a button group, adjacent icon buttons respond to one another when pressed.

## Usage

Use icon buttons to display common actions. There are two variants: **default** and **toggle**. 

* Default icon buttons can open other elements, such as a [menu](../menus/overview.md "Menus display a list of choices on a temporary surface.") or [search](../search/overview.md "Search lets people enter a keyword or phrase to get relevant information.").
* Toggle icon buttons can represent binary actions that can be toggled on and off, such as **favorite** or **bookmark**.

Icon buttons can be placed directly on the background or in most container components, such as [cards](../cards/overview.md "Cards display content and actions about a single subject."), [app bars](../app-bars/overview.md "App bars contain page navigation and information at the top of a screen"), and [toolbars](../toolbars/overview.md "Toolbars display frequently used actions relevant to the current page.").

Multiple icon buttons can be placed in a standard button group to add interaction and motion between the buttons when pressed. [More about standard button groups](../button-groups/overview.md)

![Icon buttons in a toolbar.](/assets/e0048a66-m0c0dz7i-2.CSBt4BjS.webp)

Icon buttons can be used within other components, such as in a toolbar or card

### Color

There are four icon button color styles, in order of emphasis:

1. Filled
2. Tonal
3. Outlined
4. Standard

For the highest emphasis, use the filled style. For the lowest emphasis, use standard.

![Diagram of default and toggle icon buttons in 4 color styles.](/assets/ec515833-mal4e7zr-3.FExyCBTA.webp)

The default (left) and toggle (right) icon buttons are available in all four color styles

Use a filled, tonal, or outlined icon button when the button needs more visual separation from the background.<br><br>Choose the right style and emphasis for the situation.

::: tip Do
![‘Heart” icon on a background about a cooking show.](/assets/cfadf455-m0c0hfou-4.JSeRbuLK.webp)

Use icons with a background to make them easy to see on any surface
:::

::: tip Do
![Text button and icon button in an app together.](/assets/531337af-m0c0ir4x-5.JxsuB485.webp)

When mixing button variants, use color styles to make the primary action clear
:::

Use the **filled** style for visual impact and key actions that require high emphasis.<br><br>Avoid overusing the filled style on a screen. Use them sparingly.

<video controls src="https://firebasestorage.googleapis.com/v0/b/design-spec/o/projects%2Fgoogle-material-3%2Fimages%2Fm34mf3vo-icon-buttons-B_1.mp4?alt=media" aria-label="Cards that swipe to reveal buttons with actions."></video>

Use filled icon buttons for high emphasis actions, such as downloading or deleting

Use the **tonal** style as a middle ground between filled and outlined icon buttons. It’s useful for secondary actions paired with a high emphasis action.<br><br>For example, use the tonal style for actions like **Raise hand&#x20;**&#x69;n a video meeting. When selected, its visual emphasis is greater than the outlined menu button, but less than the filled **End call** button.

![Icons found on the bottom of a telephone screen, including a “hang up” icon with a bright red tone.](/assets/6fd6b6f8-m0c0lz0p-7.CJH2hog2.webp)

Leverage the different color styles to establish emphasis and direct people to important actions

Use the **outlined** style for medium-emphasis buttons. It’s useful when the button isn’t the main focus of the interaction, such as browsing through sets of cards.<br><br>Use the **standard** style for low-emphasis buttons, or when placing buttons on a colorful surface.

![Left and right arrow outlined icon buttons indicating that more cards are available to browse.](/assets/bdd8ede7-m5xjqza2-8.GMIkLZi9.webp)

Outlined buttons indicate that more content is available without grabbing attention

### Size & width

Icon buttons are available in five different sizes:

* Extra small - 32dp
* Small - 40dp (default)
* Medium - 56dp
* Large - 96dp
* Extra large - 136dp

And three widths:

* Default
* Narrow
* Wide

Use size and width to provide emphasis and visual hierarchy in a page with multiple buttons. The main action should be the most visually prominent, whether through color or size, like starting and stopping a timer or playing and pausing a song.

![Variety of buttons in a timer app.](/assets/2dfa021f-m5xk0kj1-10.Bd1TpkBq.webp)

Use different button colors and sizes to provide visual hierarchy and emphasize primary actions

Not all icon buttons will need to emphasize a primary and secondary action. 

When buttons have a similar importance, they should be the same size.

![Uniform button sizes in a calculator app.](/assets/42418d24-macq65s8-11.DETwrJ20.webp)

When everything should have the same emphasis, use icon buttons that are the same size

## Anatomy

![Diagram of anatomy of outlined, standard, and filled icon buttons.](/assets/f61ae8d3-m0dw9g2n-11.DtqiDq9U.webp)

1. Icon
2. Container

### Icon

Icons visually communicate the button’s action. Their meaning should be clear and unambiguous. [Browse popular icons](https://fonts.google.com/icons)<br><br>Default icon buttons should use filled icons.

Toggle buttons should use an outlined icon when unselected, and a filled version of the icon when selected.

![“Heart” icon in a restaurant app.](/assets/8b2a232b-m0c0tpl2-12.B6qLBvIz.webp)

Ensure the meaning of the icon is clear, such as a heart indicating Favorite

#### Icon accessibility requirements

For selected toggle buttons, if a filled version of an icon doesn’t exist, increase the icon weight to semibold. If semibold doesn’t provide enough visual change, use bold.

This is to ensure that selection is communicated through at least two properties, rather than just color. This requirement doesn't apply to default non-toggle buttons.

![Selected, semi-bold icon in a text editing app.](/assets/fd6de7ba-mal4l31k-14.D1c12rwD.webp)

Icons without a fill should be semibolded when selected

### Container

The container provides increased contrast and hierarchy in places that need more visual separation from the background or other elements.

![Container separating a video call preview with actions you can take.](/assets/cbc6f255-m0c0wdzg-13.yqq7FFyG.webp)

The container provides visual separation from the background image

## Placement

Icon buttons are commonly used in other components, such as [app bars](../app-bars/overview.md "App bars contain page navigation and information at the top of a screen") and [cards](../cards/overview.md "Cards display content and actions about a single subject."). 

These buttons should be used for common, easily understandable actions. 

Only use a few icon buttons at once.

![App bar with icon buttons.](/assets/467bd8ff-m0c0xugp-14.DqlEEuLC.webp)

App bars often contain icon buttons

In dense layouts, group popular actions by placing many icon buttons next to each other in components like a [toolbar](../toolbars/overview.md "Toolbars display frequently used actions relevant to the current page.") or [button group](../button-groups/overview.md "Button groups organize buttons and add interactions between them."). 

These components draw attention or add interaction between buttons.

![Toolbar with icon buttons and FAB.](/assets/2f8544a6-m0c0z5xa-15.soWkHeuJ.webp)

A toolbar is a collection of icon buttons and other components

## Behavior

### Hover

On hover, the icon button displays a tooltip describing its action, rather than the name of the icon itself.

<video controls src="https://firebasestorage.googleapis.com/v0/b/design-spec/o/projects%2Fgoogle-material-3%2Fimages%2Fm8q92iv1-Gm3_Expressive_Icon_buttons_guidelines_18_IA_v02.mp4?alt=media" aria-label="The text Add to favorites appears as a tooltip when the curser is placed on a heart shaped icon."></video>

The tooltip label text should be clear and concise

### Selection

Toggle icon buttons allow a single choice to be selected or deselected, such as adding or removing something from favorites. <br><br>When placed in a [button group](../button-groups/overview.md "Button groups organize buttons and add interactions between them"), icon buttons change shape to help the selected button stand out.<br><br>[More on button groups](../button-groups/overview.md)

::: tip Do
<video controls src="https://firebasestorage.googleapis.com/v0/b/design-spec/o/projects%2Fgoogle-material-3%2Fimages%2Fm34mfwtu-icon-buttons-D-2.mp4?alt=media" aria-label="A star-shaped toggle icon button to add or remove a song from favorites."></video>

Use toggle icon buttons when the icon can be selected
:::

::: danger Don't
<video controls src="https://firebasestorage.googleapis.com/v0/b/design-spec/o/projects%2Fgoogle-material-3%2Fimages%2Fm34mg1cq-icon-buttons-E-2.mp4?alt=media" aria-label="A toggle icon button to open an overflow menu."></video>

Don’t use toggle icon buttons for actions that don’t have a selected state, such as an icon button for an overflow menu
:::

The icon should become filled to represent selection.

If a filled version of the icon doesn't exist, use semibold weight instead.

<video controls src="https://firebasestorage.googleapis.com/v0/b/design-spec/o/projects%2Fgoogle-material-3%2Fimages%2Fm0dz2qbs-icon-button-F.mp4?alt=media" aria-label="An outlined-style bookmark icon in an unselected state changing to a filled-style selected state."></video>

When making a selection, such as bookmarking or saving a video, the icon transitions from outlined (unselected) to filled (selected)
