The fall and rise of Roboto, Android’s default font

The fall and rise of Roboto, Android’s default font

It’s easy to overlook the importance of typefaces in software design, especially when it comes to designing graphical user interfaces. Sadly though, even the best typefaces ever created, including Helvetica (arguably the most popular no-frills typeface ever created), would turn to mush if they were scanned and used on computers as-is, the way they were created for print. Good operating system GUIs, especially those that power smartphones, require fonts that resize fluidly and are readable and appealing, no matter whether used in tiny battery meters or in blown-up homescreen widgets; and to make a typeface that’s recognizable on every such scale on a digital screen is no more a practical impossibility. Adobe managed to do this with the Source Pro family of fonts, Apple created San Francisco, and Google came up with Google Sans and Roboto. What’s even more commendable, though, is that the latter slowly became a favorite for amateurs and professionals alike, being sported everywhere from magazines to billboards due to its libre nature.

Introduction and Initial Failure

When Roboto was first unveiled by Google way back with Android 4.0 Ice Cream Sandwich in 2011 alongside the Holo design language, free fonts were mostly a joke. Most of them would be amateur or abandoned professional projects or adaptations of popular print typefaces, and they’d often have one flaw or another that would break the functionality of whatever project they were used in. Roboto was no exception. To make matters even worse, despite what Google and Christian Robertson (Roboto’s lead designer) wanted the public to believe, the typeface had almost no character of its own and received criticism from many typography journals and giants. For instance, Mirko Humbert of Typography Daily did a great job covering this in his article on Roboto.

With Roboto, Google was frequently accused of ripping off classics like Helvetica, DIN, and Univers — typefaces that can be found on the streets almost everywhere you go. It’s also worth noting that the primary Android competitor back then, iOS, was using a modified version of Helvetica (Neue) for handling its text display. Regardless of the minor controversy, Android kept using this version of Roboto as its primary system font up to Android 4.4 KitKat, which would be the last major release to use the Holo theme. What came next was game-changing in many ways, and its treatment of Roboto was one of them.

Material Design and “Roboto 2014”

In response to the initial criticism, Robertson declared Roboto a “work-in-progress”, and went back to the drawing board. With the release of Android 5.0 Lollipop, Google introduced its new design language named Material Design, which would grow to become synonymous with all sorts of GUIs on Android. Part of this big overhaul was a typeface that was accessible and geometric while being able to convey a lot of information in a little space, and a completely reinvented Roboto played the role.

Sample from Google Developers Blog showcasing the changes made to Roboto

A sample image from Google Developers Blog showcasing the differences between the old and 2014 Roboto versions.

This version of Roboto was fresh: it had its own distinct visual identity, it looked spectacular both on screen and in print, and its source code was released to the public along with a free-for-commercial-usage license. What was, for instance, once criticized for shamelessly copying Helvetica’s uppercase R, now had a unique R glyph of its own in its place. Roboto now also had a high information density — that is, the glyphs were readable yet narrow enough to form more words within a given screen area than most other fonts. Soon the new Roboto became a characteristic of the Android operating system and Google’s other software projects, with a sleek Thin variant adorning the OS’s lock screen, a Light variant powering many third-party app interfaces and Layers themes, and a more friendly Regular variant being found elsewhere. Two new families of the overall typeface were released as well: Roboto Condensed with even higher information density meant to be used with small UI elements and wearables, and Roboto Slab for a more book-like take on the original font’s readability.

Alongside the acceptance of this new typeface came a rise in the popularity of services like Google Fonts and Font Squirrel, platforms that offered completely free font files for personal and commercial purposes, as designers began uploading more high-quality fonts under open source licenses, in part encouraged by Robertson’s success in making a free typeface disrupt the oft-expensive typography industry. Soon enough, even the most seasoned designers found themselves using Roboto with proprietary font files, for both digital and print purposes.

Android Pie and Beyond

With Android 9.0 Pie, Google began replacing certain text elements in the Android GUI with Google Sans, a modified version of Google’s branding-centric Product Sans. Unlike Roboto, Google Sans is proprietary and cannot be used in any third-party projects outside those deployed on the Android operating system. While Google Sans has an even friendlier and more geometric demeanor, Roboto’s Regular variant continues to be used as the main font for anything other than headers throughout the OS, due to the former’s poor readability at smaller sizes and the lack of clear distinction between glyphs.

Roboto vs. Roboto Condensed vs. Google Sans

A comparison between Roboto, Roboto Condensed, and Google Sans. Note the lack of distinction between the lowercase L and uppercase I glyphs in the latter.

And now, as Android 10 actively pushes for universal accessibility and ease of use, a compact and easy-to-read typeface like Roboto continues to be the best option Google has going forward for fonts for the operating system’s GUI. And yet, Google seems to be slowly replacing it with Google Sans with every new iteration of the OS and Material Theme, drawing even more flak from users for a design language that many consider broken.

Roboto was last updated in 2018 on its GitHub, and can be downloaded from Google Fonts.

About author

Manan Sikka
Manan Sikka

A musician and designer with a knack for most things computer science, Manan’s been an Android and FOSS enthusiast since 2012, and loves paying attention to little details that usually go unnoticed. Drop by and say hi at [email protected]!