tree: cd0b7acc685926000f2fff157f28b3e3f68b195b [path history] [tgz]
  1. android/
  2. font/
  3. ios/
  4. png/
  5. src/
  6. symbols/
  7. update/
  8. variablefont/
  9. .gitignore
  10. LICENSE
  11. README.md
README.md

Material Icons / Material Symbols

These are two different official icon sets from Google, using the same underlying designs. Material Icons is the classic set, while Material Symbols was introduced in April 2022, built on variable font technology.

The icons can be browsed in a more user-friendly way at https://fonts.google.com/icons. Use the popdown menu near top left to choose between the two sets; Material Symbols is the default.

The icons are designed under the material design guidelines.

Icon Requests

We’d love to support your icon needs! Please submit your request here on github as an issue.

Please note that Google Fonts does not accept user submissions of finished icon designs! There are fairly strict guidelines for Material icons, plus Google has upstream source files from which this repo is generated. Therefore, Google does not accept pull requests for icon files (whether new icon suggestions, or fixes for existing icons). Concepts are appreciated—just don’t design SVGs and submit them via pull request.

However, users are perfectly welcome to point at outside files or images as examples—for the kind of thing they want, but they won’t just be taken “as is.” This works especially well if you have multiple examples for a single icon, to help us understand the “essence” of the idea.

For example, there is a fairly universal conceptual logo/icon for “agender,” so if you were proposing Google add an agender icon in the Material style, either mentioning that, or pointing at https://www.google.com/search?q=agender+icon would be a helpful tip.

Third-party logos

Currently, Google does not include 3rd-party logos among the Material Symbols or Material Icons due to legal reasons. Some 3rd-party logos that were included in the past have since been removed.

npm Packages

Google does not currently maintain the npm package for this repo, past v3 (2016). However, user @marella is hosting the following. He tells us these are automatically updated and published using GitHub Actions. Google does NOT monitor or vet these packages.

material-symbols npm install size

  • Only WOFF2 variable fonts and CSS for Material Symbols
  • Includes outlined, rounded, and sharp icons and all variations of fill, weight, grade, and optical size
  • Supports Sass

material-icons npm install size Downloads

  • Only WOFF2, WOFF fonts and CSS
  • Includes outlined, round, sharp and two-tone icons
  • Supports Sass

@material-design-icons/font npm (scoped) install size

  • Only WOFF2 fonts and CSS
  • Lighter version of material-icons package
  • Doesn't support older browsers such as Internet Explorer because of dropping WOFF (v1)

@material-design-icons/svg npm (scoped) install size

  • Only SVGs
  • Optimizes SVGs using SVGO

Material Icons

The icons can be browsed in a more user-friendly way at https://fonts.google.com/icons?icon.set=Material+Icons

These classic icons are available in five distinct styles:

  • Outlined
  • Filled (the font version is just called Material Icons, as this is the oldest style)
  • Rounded
  • Sharp
  • Two tone

The following directories in this repo contain specifically Material Icons (not Material Symbols) content:

  • android
  • font
  • ios
  • png
  • src

What is currently not available in Material Icons?

  • variable fonts
  • weights other than Regular
  • grades other than Regular
  • a means to animate Fill transitions

Material Symbols

These newer icons can be browsed in a more user-friendly way at https://fonts.google.com/icons. Use the popdown menu near top left to choose between the two sets; Material Symbols is the default.

These icons were built/designed as variable fonts first (based on the 24 px designs from Material Icons). There are three separate Material Symbols variable fonts, which also have static icons available (but those do not have all the variations available, as that would be hundreds of styles):

  • Outlined
  • Rounded
  • Sharp
  • Note that although there is no separate Filled font, the Fill axis allows access to filled styles—in all three fonts.

Each of the fonts has these design axes, which can be varied in CSS, or in many more modern design apps:

  • Optical Size (opsz) from 20 to 48 px. The default is 24.
  • Weight from 100 (Thin) to 700 (Bold). Regular is 400.
  • Grade from -50 to 200. The default is 0 (zero).
  • Fill from 0 to 100. The default is 0 (zero).

The following directories in this repo contain specifically Material Symbols (not Material Icons) content:

  • symbols
  • variablefont

What is currently not available in Material Symbols?

  • only the 20 and 24 px versions are designed with perfect pixel-grid alignment
  • the only pre-made fonts are the variable fonts
  • there are no two-tone icons

Material Icons update history

4.0.0 Update

  • 2020 Aug 31
  • Restructured repository, updated assets.

3.0.1 Update

  • 2016 Sep 01
  • Changed license in package.json.
  • Added missing device symbol sprites.

3.0.0 Update

  • 2016 Aug 25
  • License change to Apache 2.0!

2.0

  • 2016 May 28

Getting Started

Read the developer guide on how to use the material design icons in your project.

Using a font

The font and variablefont folders contain pre-generated font files that can be included in a project. This is especially convenient for the web; however, it is generally better to link to the web font hosted on Google Fonts:

<link href="https://fonts.googleapis.com/css2?family=Material+Icons"
      rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols"
      rel="stylesheet">

Read more on Material Symbols or Material Icons in the Google Fonts developer guide.

License

We have made these icons available for you to incorporate into your products under the Apache License Version 2.0. Feel free to remix and re-share these icons and documentation in your products. We‘d love attribution in your app’s about screen, but it's not required.