Font Bakery Logo image/svg+xml Font Bakery Logo Robert Martinez font build service https://github.com/xen/fontbakery
Fontbakery Technical Report

If you think a check is flawed or have an idea for a check, please file an issue at https://github.com/fonttools/fontbakery/issues and remember to include a pointer to the repo and branch you're checking.

DEPRECATION WARNING

By late-December 2024, FontBakery version 0.13.0 introduced a new naming scheme for the check-IDs.

Fontbakery detected usage of old IDs and performed an automatic backwards-compatibility translation for you.
This automatic translation will be deprecated in the next major release.

Please start using the new check-IDs as documented at /Lib/fontbakery/legacy_checkids.py

The following legacy check-IDs were detected:
- com.google.fonts/check/outline_alignment_miss
- com.google.fonts/check/outline_colinear_vectors
- com.google.fonts/check/outline_semi_vertical
- com.google.fonts/check/fontdata_namecheck
- com.google.fonts/check/version_bump
- com.google.fonts/check/outline_jaggy_segments
- com.google.fonts/check/outline_short_segments
- com.google.fonts/check/ttx_roundtrip

Summary

💥 ERROR ☠ FATAL 🔥 FAIL ⚠️ WARN ⏩ SKIP ℹ️ INFO ✅ PASS
2 0 27 31 61 16 320
0% 0% 6% 7% 13% 4% 70%

Meaning of check results:

If you get ERRORs, please help us improve the tool by reporting them at our issue tracker.

(but other kinds of bug reports and/or feature requests are also always welcome, of course!)

FontBakery version: 0.13.1

OpenType Specification Checks

🔥⚠️⚠️⚠️⚠️⚠️⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩ℹ️

Check mark characters are in GDEF mark glyph class.

Check ID: <FontBakeryCheck:opentype/gdef_mark_chars>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    The following mark characters could be in the GDEF mark glyph class: uni0488 (U+0488) and uni0489 (U+0489)

    [code: mark-chars]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    The following mark characters could be in the GDEF mark glyph class: uni0488 (U+0488) and uni0489 (U+0489)

    [code: mark-chars]

Checking post.italicAngle value.

Check ID: <FontBakeryCheck:opentype/italic_angle>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    Font is italic, so post.italicAngle should be non-zero.

    [code: zero-italic]

Font has correct post table version?

Check ID: <FontBakeryCheck:opentype/post_table_version>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    Post table format 3 use has niche use case problems.Please review the check rationale for additional details.

    [code: post-table-version]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    Post table format 3 use has niche use case problems.Please review the check rationale for additional details.

    [code: post-table-version]

Check if OS/2 xAvgCharWidth is correct.

Check ID: <FontBakeryCheck:opentype/xavgcharwidth>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    OS/2 xAvgCharWidth is 1161 but it should be 1122 which corresponds to the average of the widths of all glyphs in the font.

    [code: xAvgCharWidth-wrong]

Universal Profile Checks

🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩ℹ️ℹ️ℹ️ℹ️

Ensure the font supports case swapping for all its glyphs.

Check ID: <FontBakeryCheck:case_mapping>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    The following glyphs lack their case-swapping counterparts:

    Glyph present in the font Missing case-swapping counterpart
    U+1F4D: GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA U+1F45: GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA
    [code: missing-case-counterparts]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    The following glyphs lack their case-swapping counterparts:

    Glyph present in the font Missing case-swapping counterpart
    U+1F4D: GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA U+1F45: GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA
    [code: missing-case-counterparts]

Does font file include unacceptable control character glyphs?

Check ID: <FontBakeryCheck:control_chars>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    The following unacceptable control characters were identified: uni0002

    [code: unacceptable]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    The following unacceptable control characters were identified: uni0002

    [code: unacceptable]

Checking OS/2 usWinAscent & usWinDescent.

Check ID: <FontBakeryCheck:family/win_ascent_and_descent>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    OS/2.usWinAscent value should be equal or greater than 2163, but got 1946 instead

    [code: ascent]
  • 🔥 FAIL

    OS/2.usWinDescent value should be equal or greater than 555, but got 512 instead

    [code: descent]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    OS/2.usWinAscent value should be equal or greater than 2163, but got 1946 instead

    [code: ascent]
  • 🔥 FAIL

    OS/2.usWinDescent value should be equal or greater than 555, but got 512 instead

    [code: descent]

Are there caret positions declared for every ligature?

Check ID: <FontBakeryCheck:ligature_carets>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    This font lacks caret position values for ligature glyphs on its GDEF table.

    [code: lacks-caret-pos]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    This font lacks caret position values for ligature glyphs on its GDEF table.

    [code: lacks-caret-pos]

Checking Vertical Metric Linegaps.

Check ID: <FontBakeryCheck:linegaps>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    OS/2 sTypoLineGap is not equal to 0.

    Overridden: This check was originally a WARN but was overridden by the universal profile: For Google Fonts, all messages from this check are considered FAILs.

    [code: OS/2]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    OS/2 sTypoLineGap is not equal to 0.

    Overridden: This check was originally a WARN but was overridden by the universal profile: For Google Fonts, all messages from this check are considered FAILs.

    [code: OS/2]

Check math signs have the same width.

Check ID: <FontBakeryCheck:math_signs_width>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    The most common width is 1090 among a set of 2 math glyphs. The following math glyphs have a different width, though:

    Width = 1127: plus

    Width = 1010: less

    Width = 1039: greater

    Width = 1100: logicalnot

    Width = 1062: plusminus

    Width = 1060: multiply

    Width = 1135: divide

    Width = 1136: minus

    Width = 1119: approxequal

    Width = 1020: lessequal

    Width = 1049: greaterequal

    [code: width-outliers]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    The most common width is 1041 among a set of 2 math glyphs. The following math glyphs have a different width, though:

    Width = 1162: plus

    Width = 1124: notequal, equal

    Width = 1071: greaterequal, greater

    Width = 1134: logicalnot

    Width = 1095: plusminus

    Width = 1093: multiply

    Width = 1170: divide

    Width = 1171: minus

    Width = 1154: approxequal

    [code: width-outliers]

Combined length of family and style must not exceed 32 characters.

Check ID: <FontBakeryCheck:name/family_and_style_max_length>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    Variable font instance name 'Roboto Condensed ExtraLight Italic' formed by space-separated concatenation of font family name (nameID 1) and instance subfamily nameID 286 exceeds 32 characters.

    This has been found to cause shaping issues for some accented letters in Microsoft Word on Windows 10 and 11.

    [code: instance-too-long]
  • 🔥 FAIL

    Variable font instance name 'Roboto Condensed ExtraLight Italic' formed by space-separated concatenation of font family name (nameID 1) and instance subfamily nameID 286 exceeds 32 characters.

    This has been found to cause shaping issues for some accented letters in Microsoft Word on Windows 10 and 11.

    [code: instance-too-long]
  • 🔥 FAIL

    Variable font instance name 'Roboto Condensed ExtraBold Italic' formed by space-separated concatenation of font family name (nameID 1) and instance subfamily nameID 292 exceeds 32 characters.

    This has been found to cause shaping issues for some accented letters in Microsoft Word on Windows 10 and 11.

    [code: instance-too-long]
  • 🔥 FAIL

    Variable font instance name 'Roboto Condensed ExtraBold Italic' formed by space-separated concatenation of font family name (nameID 1) and instance subfamily nameID 292 exceeds 32 characters.

    This has been found to cause shaping issues for some accented letters in Microsoft Word on Windows 10 and 11.

    [code: instance-too-long]

Checking OS/2 Metrics match hhea Metrics.

Check ID: <FontBakeryCheck:os2_metrics_match_hhea>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    OS/2 sTypoAscender (1536) and hhea ascent (1900) must be equal.

    [code: ascender]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    OS/2 sTypoAscender (1536) and hhea ascent (1900) must be equal.

    [code: ascender]

Check there are no overlapping path segments

Check ID: <FontBakeryCheck:overlapping_path_segments>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    The following glyphs have overlapping path segments:

    * uni0411 (U+0411): L<<54.0,0.0>--<306.0,1456.0>> has the same coordinates as a previous segment.
    
    [code: overlapping-path-segments]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    The following glyphs have overlapping path segments:

    * uni0411 (U+0411): L<<163.0,0.0>--<163.0,1456.0>> has the same coordinates as a previous segment.
    
    * glyph00580: L<<851.0,540.0>--<1000.0,540.0>> has the same coordinates as a previous segment.
    
    [code: overlapping-path-segments]

Ensure smart dropout control is enabled in "prep" table instructions.

Check ID: <FontBakeryCheck:smart_dropout>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script.

    [code: lacks-smart-dropout]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script.

    [code: lacks-smart-dropout]

Does the font contain a soft hyphen?

Check ID: <FontBakeryCheck:soft_hyphen>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    This font has a 'Soft Hyphen' character.

    [code: softhyphen]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    This font has a 'Soft Hyphen' character.

    [code: softhyphen]

Ensure Stylistic Sets have description.

Check ID: <FontBakeryCheck:stylisticset_description>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    The stylistic set ss01 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss02 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss03 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss04 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss05 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss06 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss07 lacks a description string on the 'name' table.

    [code: missing-description]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    The stylistic set ss01 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss02 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss03 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss04 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss05 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss06 lacks a description string on the 'name' table.

    [code: missing-description]
  • ⚠️ WARN

    The stylistic set ss07 lacks a description string on the 'name' table.

    [code: missing-description]

Checking that the typoAscender exceeds the yMax of the /Agrave.

Check ID: <FontBakeryCheck:typoascender_exceeds_Agrave>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    OS/2.sTypoAscender value should be greater than 1847, but got 1536 instead

    [code: typoAscender]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    OS/2.sTypoAscender value should be greater than 1847, but got 1536 instead

    [code: typoAscender]

Article Checks

⚠️⚠️

Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.

Check ID: <FontBakeryCheck:googlefonts/article/images>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    Family metadata at /Users/simon/others-repos/fonts//ofl/roboto does not have an article.

    [code: lacks-article]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    Family metadata at /Users/simon/others-repos/fonts//ofl/roboto does not have an article.

    [code: lacks-article]

Metadata Checks

🔥🔥🔥🔥🔥⚠️⚠️⏩⏩⏩⏩ℹ️ℹ️

METADATA.pb: Check URL on copyright string is the same as in repository_url field.

Check ID: <FontBakeryCheck:googlefonts/metadata/consistent_repo_urls>
🔥 Roboto-Italic[wdth,wght].ttf
🔥 Roboto[wdth,wght].ttf

METADATA.pb: Designers are listed correctly on the Google Fonts catalog?

Check ID: <FontBakeryCheck:googlefonts/metadata/designer_profiles>
🔥 Roboto-Italic[wdth,wght].ttf
🔥 Roboto[wdth,wght].ttf

Check for codepoints not covered by METADATA subsets.

Check ID: <FontBakeryCheck:googlefonts/metadata/unreachable_subsetting>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    The following codepoints supported by the font are not covered by any subsets defined in the font's metadata file, and will never be served. You can solve this by either manually adding additional subset declarations to METADATA.pb, or by editing the glyphset definitions.

    • U+02D8 BREVE: try adding one of: yi, canadian-aboriginal
    • U+02D9 DOT ABOVE: try adding one of: yi, canadian-aboriginal
    • U+02DB OGONEK: try adding one of: yi, canadian-aboriginal
    • U+030F COMBINING DOUBLE GRAVE ACCENT: not included in any glyphset definition
    • U+2000 EN QUAD: try adding symbols2
    • U+2001 EM QUAD: try adding symbols2
    • U+2003 EM SPACE: try adding nushu
    • U+2004 THREE-PER-EM SPACE: try adding symbols2
    • U+2005 FOUR-PER-EM SPACE: try adding symbols2
    • U+2006 SIX-PER-EM SPACE: try adding symbols2
    • U+2007 FIGURE SPACE: try adding symbols2
    • U+2008 PUNCTUATION SPACE: try adding symbols2
    • U+200A HAIR SPACE: try adding symbols2
    • U+2010 HYPHEN: try adding one of: hebrew, sora-sompeng, kharoshthi, lisu, yi, syloti-nagri, cham, coptic, sundanese, arabic, armenian, kaithi, kayah-li
    • U+2011 NON-BREAKING HYPHEN: try adding one of: yi, syloti-nagri, arabic
    • U+2015 HORIZONTAL BAR: try adding adlam
    • U+201B SINGLE HIGH-REVERSED-9 QUOTATION MARK: try adding adlam
    • U+2021 DOUBLE DAGGER: try adding adlam
    • U+2025 TWO DOT LEADER: try adding phags-pa
    • U+2027 HYPHENATION POINT: not included in any glyphset definition
    • U+2030 PER MILLE SIGN: try adding adlam
    • U+EE01 : not included in any glyphset definition
    • U+EE02 : not included in any glyphset definition
    • U+F6C3 : not included in any glyphset definition
    • U+FB01 LATIN SMALL LIGATURE FI: not included in any glyphset definition
    • U+FB02 LATIN SMALL LIGATURE FL: not included in any glyphset definition
    • U+FB03 LATIN SMALL LIGATURE FFI: not included in any glyphset definition
    • U+FB04 LATIN SMALL LIGATURE FFL: not included in any glyphset definition
    • U+FFFC OBJECT REPLACEMENT CHARACTER: not included in any glyphset definition

    Or you can add the above codepoints to one of the subsets supported by the font: cyrillic, cyrillic-ext, greek, greek-ext, latin, latin-ext, math, menu, symbols, vietnamese

    [code: unreachable-subsetting]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    The following codepoints supported by the font are not covered by any subsets defined in the font's metadata file, and will never be served. You can solve this by either manually adding additional subset declarations to METADATA.pb, or by editing the glyphset definitions.

    • U+02D8 BREVE: try adding one of: yi, canadian-aboriginal
    • U+02D9 DOT ABOVE: try adding one of: yi, canadian-aboriginal
    • U+02DB OGONEK: try adding one of: yi, canadian-aboriginal
    • U+030F COMBINING DOUBLE GRAVE ACCENT: not included in any glyphset definition
    • U+2000 EN QUAD: try adding symbols2
    • U+2001 EM QUAD: try adding symbols2
    • U+2003 EM SPACE: try adding nushu
    • U+2004 THREE-PER-EM SPACE: try adding symbols2
    • U+2005 FOUR-PER-EM SPACE: try adding symbols2
    • U+2006 SIX-PER-EM SPACE: try adding symbols2
    • U+2007 FIGURE SPACE: try adding symbols2
    • U+2008 PUNCTUATION SPACE: try adding symbols2
    • U+200A HAIR SPACE: try adding symbols2
    • U+2010 HYPHEN: try adding one of: hebrew, sora-sompeng, kharoshthi, lisu, yi, syloti-nagri, cham, coptic, sundanese, arabic, armenian, kaithi, kayah-li
    • U+2011 NON-BREAKING HYPHEN: try adding one of: yi, syloti-nagri, arabic
    • U+2015 HORIZONTAL BAR: try adding adlam
    • U+201B SINGLE HIGH-REVERSED-9 QUOTATION MARK: try adding adlam
    • U+2021 DOUBLE DAGGER: try adding adlam
    • U+2025 TWO DOT LEADER: try adding phags-pa
    • U+2027 HYPHENATION POINT: not included in any glyphset definition
    • U+2030 PER MILLE SIGN: try adding adlam
    • U+EE01 : not included in any glyphset definition
    • U+EE02 : not included in any glyphset definition
    • U+F6C3 : not included in any glyphset definition
    • U+FB01 LATIN SMALL LIGATURE FI: not included in any glyphset definition
    • U+FB02 LATIN SMALL LIGATURE FL: not included in any glyphset definition
    • U+FB03 LATIN SMALL LIGATURE FFI: not included in any glyphset definition
    • U+FB04 LATIN SMALL LIGATURE FFL: not included in any glyphset definition
    • U+FFFC OBJECT REPLACEMENT CHARACTER: not included in any glyphset definition

    Or you can add the above codepoints to one of the subsets supported by the font: cyrillic, cyrillic-ext, greek, greek-ext, latin, latin-ext, math, menu, symbols, vietnamese

    [code: unreachable-subsetting]

Check name ID 25 to end with "Italic" for Italic VFs.

Check ID: <FontBakeryCheck:googlefonts/metadata/valid_nameid25>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    Name ID 25 must end with "Italic" for Italic fonts.

    [code: nameid25-missing-italic]

Glyphset Checks

💥💥

Shapes languages in all GF glyphsets.

Check ID: <FontBakeryCheck:googlefonts/glyphsets/shape_languages>
💥 Roboto-Italic[wdth,wght].ttf
  • 💥 ERROR

    Failed with ModuleNotFoundError: No module named 'shaperglot.checker'

      File "/Users/simon/work/gf-dashboard/venv/lib/python3.13/site-packages/fontbakery/checkrunner.py", line 222, in _run_check
        subresults = list(subresults)
      File "/Users/simon/work/gf-dashboard/venv/lib/python3.13/site-packages/fontbakery/checks/vendorspecific/googlefonts/glyphsets/shape_languages.py", line 19, in check_glyphsets_shape_languages
        from shaperglot.checker import Checker
    
    
    [code: failed-check]
💥 Roboto[wdth,wght].ttf
  • 💥 ERROR

    Failed with ModuleNotFoundError: No module named 'shaperglot.checker'

      File "/Users/simon/work/gf-dashboard/venv/lib/python3.13/site-packages/fontbakery/checkrunner.py", line 222, in _run_check
        subresults = list(subresults)
      File "/Users/simon/work/gf-dashboard/venv/lib/python3.13/site-packages/fontbakery/checks/vendorspecific/googlefonts/glyphsets/shape_languages.py", line 19, in check_glyphsets_shape_languages
        from shaperglot.checker import Checker
    
    
    [code: failed-check]

Description Checks

🔥⚠️⚠️ℹ️ℹ️ℹ️ℹ️

DESCRIPTION.en_us.html should end in a linebreak.

Check ID: <FontBakeryCheck:googlefonts/description/eof_linebreak>
⚠️ METADATA.pb
  • ⚠️ WARN

    The last characther on DESCRIPTION.en_us.html is not a line-break. Please add it.

    [code: missing-eof-linebreak]

On a family update, the DESCRIPTION.en_us.html file should ideally also be updated.

Check ID: <FontBakeryCheck:googlefonts/description/family_update>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    The DESCRIPTION.en_us.html file in this family has not changed in comparison to the latest font release on the google/fonts github repo. Please consider mentioning note-worthy improvements made to the family recently.

    [code: description-not-updated]

DESCRIPTION.en_us.html must have more than 200 bytes.

Check ID: <FontBakeryCheck:googlefonts/description/min_length>
🔥 METADATA.pb
  • 🔥 FAIL

    DESCRIPTION.en_us.html must have size larger than 200 bytes.

    [code: too-short]

Shaping Checks

⚠️⚠️⏩⏩⏩⏩⏩⏩

Ensure dotted circle glyph is present and can attach marks.

Check ID: <FontBakeryCheck:dotted_circle>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    No dotted circle glyph present

    [code: missing-dotted-circle]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    No dotted circle glyph present

    [code: missing-dotted-circle]

Outline Checks

⚠️⚠️⏩⏩⏩⏩⏩⏩⏩⏩

Check the direction of the outermost contour in each glyph

Check ID: <FontBakeryCheck:outline_direction>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    The following glyphs have a counter-clockwise outer contour:

    * glyph00517 has a counter-clockwise outer contour
    
    * glyph00517 has a counter-clockwise outer contour
    
    * glyph00517 has a counter-clockwise outer contour
    
    * glyph00519 has a counter-clockwise outer contour
    
    * glyph00519 has a counter-clockwise outer contour
    
    * glyph00532 has a counter-clockwise outer contour
    
    * glyph00532 has a counter-clockwise outer contour
    
    * glyph00544 has a counter-clockwise outer contour
    
    * glyph00544 has a counter-clockwise outer contour
    
    [code: ccw-outer-contour]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    The following glyphs have a counter-clockwise outer contour:

    * glyph00517 has a counter-clockwise outer contour
    
    * glyph00517 has a counter-clockwise outer contour
    
    * glyph00517 has a counter-clockwise outer contour
    
    * glyph00519 has a counter-clockwise outer contour
    
    * glyph00519 has a counter-clockwise outer contour
    
    * glyph00532 has a counter-clockwise outer contour
    
    * glyph00544 has a counter-clockwise outer contour
    
    * glyph00544 has a counter-clockwise outer contour
    
    [code: ccw-outer-contour]

Font File Checks

🔥🔥🔥🔥🔥🔥🔥⚠️⚠️⚠️⚠️⏩⏩⏩⏩⏩⏩⏩⏩ℹ️ℹ️ℹ️

Check variable font instances

Check ID: <FontBakeryCheck:googlefonts/fvar_instances>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    fvar instances are incorrect:

    • Delete additional instances
    Name current expected
    Condensed ExtraLight Italic wght=200.0, wdth=75.0 N/A
    Condensed Bold Italic wght=700.0, wdth=75.0 N/A
    Condensed ExtraBold Italic wght=800.0, wdth=75.0 N/A
    Condensed Black Italic wght=900.0, wdth=75.0 N/A
    Condensed Thin Italic wght=100.0, wdth=75.0 N/A
    Condensed Medium Italic wght=500.0, wdth=75.0 N/A
    Condensed Light Italic wght=300.0, wdth=75.0 N/A
    Condensed Italic wght=400.0, wdth=75.0 N/A
    Condensed SemiBold Italic wght=600.0, wdth=75.0 N/A
    Thin Italic wght=100.0, wdth=100.0 wght=100.0, wdth=100.0
    ExtraLight Italic wght=200.0, wdth=100.0 wght=200.0, wdth=100.0
    Light Italic wght=300.0, wdth=100.0 wght=300.0, wdth=100.0
    Italic wght=400.0, wdth=100.0 wght=400.0, wdth=100.0
    Medium Italic wght=500.0, wdth=100.0 wght=500.0, wdth=100.0
    SemiBold Italic wght=600.0, wdth=100.0 wght=600.0, wdth=100.0
    Bold Italic wght=700.0, wdth=100.0 wght=700.0, wdth=100.0
    ExtraBold Italic wght=800.0, wdth=100.0 wght=800.0, wdth=100.0
    Black Italic wght=900.0, wdth=100.0 wght=900.0, wdth=100.0
    [code: bad-fvar-instances]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    fvar instances are incorrect:

    • Delete additional instances
    Name current expected
    Condensed Medium wght=500.0, wdth=75.0 N/A
    Condensed Bold wght=700.0, wdth=75.0 N/A
    Condensed ExtraLight wght=200.0, wdth=75.0 N/A
    Condensed Light wght=300.0, wdth=75.0 N/A
    Condensed ExtraBold wght=800.0, wdth=75.0 N/A
    Condensed Regular wght=400.0, wdth=75.0 N/A
    Condensed Black wght=900.0, wdth=75.0 N/A
    Condensed Thin wght=100.0, wdth=75.0 N/A
    Condensed SemiBold wght=600.0, wdth=75.0 N/A
    Thin wght=100.0, wdth=100.0 wght=100.0, wdth=100.0
    ExtraLight wght=200.0, wdth=100.0 wght=200.0, wdth=100.0
    Light wght=300.0, wdth=100.0 wght=300.0, wdth=100.0
    Regular wght=400.0, wdth=100.0 wght=400.0, wdth=100.0
    Medium wght=500.0, wdth=100.0 wght=500.0, wdth=100.0
    SemiBold wght=600.0, wdth=100.0 wght=600.0, wdth=100.0
    Bold wght=700.0, wdth=100.0 wght=700.0, wdth=100.0
    ExtraBold wght=800.0, wdth=100.0 wght=800.0, wdth=100.0
    Black wght=900.0, wdth=100.0 wght=900.0, wdth=100.0
    [code: bad-fvar-instances]

Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering?

Check ID: <FontBakeryCheck:googlefonts/gasp>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ℹ️ INFO

    These are the ppm ranges declared on the gasp table:

    PPM <= 8: flag = 0x08 - Use smoothing along multiple axes with ClearType® PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®

    [code: ranges]
  • ⚠️ WARN

    The gasp table has a range of 8 that may be unneccessary.

    [code: non-ffff-range]
⚠️ Roboto[wdth,wght].ttf
  • ℹ️ INFO

    These are the ppm ranges declared on the gasp table:

    PPM <= 8: flag = 0x08 - Use smoothing along multiple axes with ClearType® PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®

    [code: ranges]
  • ⚠️ WARN

    The gasp table has a range of 8 that may be unneccessary.

    [code: non-ffff-range]

Check Google Fonts glyph coverage.

Check ID: <FontBakeryCheck:googlefonts/glyph_coverage>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    Missing required codepoints:

    - 0x0302 (COMBINING CIRCUMFLEX ACCENT)
    
    
    - 0x0304 (COMBINING MACRON)
    
    
    - 0x0306 (COMBINING BREVE)
    
    
    - 0x0307 (COMBINING DOT ABOVE)
    
    
    - 0x0308 (COMBINING DIAERESIS)
    
    
    - 0x030A (COMBINING RING ABOVE)
    
    
    - 0x030B (COMBINING DOUBLE ACUTE ACCENT)
    
    
    - 0x030C (COMBINING CARON)
    
    
    - 0x0326 (COMBINING COMMA BELOW)
    
    
    - 0x0327 (COMBINING CEDILLA)
    
    
    - 0x0328 (COMBINING OGONEK)
    
    
    - 0x1E9E (LATIN CAPITAL LETTER SHARP S)
    
    [code: missing-codepoints]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    Missing required codepoints:

    - 0x0302 (COMBINING CIRCUMFLEX ACCENT)
    
    
    - 0x0304 (COMBINING MACRON)
    
    
    - 0x0306 (COMBINING BREVE)
    
    
    - 0x0307 (COMBINING DOT ABOVE)
    
    
    - 0x0308 (COMBINING DIAERESIS)
    
    
    - 0x030A (COMBINING RING ABOVE)
    
    
    - 0x030B (COMBINING DOUBLE ACUTE ACCENT)
    
    
    - 0x030C (COMBINING CARON)
    
    
    - 0x0326 (COMBINING COMMA BELOW)
    
    
    - 0x0327 (COMBINING CEDILLA)
    
    
    - 0x0328 (COMBINING OGONEK)
    
    
    - 0x1E9E (LATIN CAPITAL LETTER SHARP S)
    
    [code: missing-codepoints]

Ensure fonts have ScriptLangTags declared on the 'meta' table.

Check ID: <FontBakeryCheck:googlefonts/meta/script_lang_tags>
⚠️ Roboto-Italic[wdth,wght].ttf
  • ⚠️ WARN

    This font file does not have a 'meta' table.

    [code: lacks-meta-table]
⚠️ Roboto[wdth,wght].ttf
  • ⚠️ WARN

    This font file does not have a 'meta' table.

    [code: lacks-meta-table]

OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts.

Check ID: <FontBakeryCheck:googlefonts/use_typo_metrics>
🔥 Family Check
  • 🔥 FAIL

    OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['/Users/simon/others-repos/fonts//ofl/roboto/Roboto-Italic[wdth,wght].ttf', '/Users/simon/others-repos/fonts//ofl/roboto/Roboto[wdth,wght].ttf'].

    [code: missing-os2-fsselection-bit7]

Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts.

Check ID: <FontBakeryCheck:googlefonts/vertical_metrics_regressions>
🔥 Roboto-Italic[wdth,wght].ttf
  • 🔥 FAIL

    Roboto Regular: OS/2 sTypoAscender is 1536 when it should be 1946

    [code: bad-typo-ascender]
  • 🔥 FAIL

    Roboto Regular: hhea Ascender is 1900 when it should be 1946

    [code: bad-hhea-ascender]
  • 🔥 FAIL

    Roboto Regular: hhea Descender is -500 when it should be -512

    [code: bad-hhea-descender]
🔥 Roboto[wdth,wght].ttf
  • 🔥 FAIL

    Roboto Regular: OS/2 sTypoAscender is 1536 when it should be 1946

    [code: bad-typo-ascender]
  • 🔥 FAIL

    Roboto Regular: hhea Ascender is 1900 when it should be 1946

    [code: bad-hhea-ascender]
  • 🔥 FAIL

    Roboto Regular: hhea Descender is -500 when it should be -512

    [code: bad-hhea-descender]