Right now, the webfont CSS file for my website and blog is 89734 bytes in size. This is a very fast load, with well under a fraction of second of “font change flash” even on a 4g network in a third world country.

Point being, I don’t see the point of having a large font stack in the day and age of webfonts. To get a reasonable looking “flash of content”, I used https://screenspan.net/fallback which determined that Verdana (available everywhere except Android/ChromeOS and readily available even for Linux) has about the same metrics as Roboto Serif, the font I use a subsetted version of for my blog.

As an aside, I feel Roboto Serif is a very good open source Verdana replacement for the 2020s: It’s very easy to read and OFL licensed to boot.

I think at least a small version of a font stack like these isn't a bad idea even if you're using web fonts. Folks who insist on disabling web fonts are likely a small percentage of any given site's readers, but they're out there. (And for certain sites, like this very one, there's a much higher percentage of them, usually ready to hop right out and proclaim how arrogant it is for web developers to choose typefaces for them and CSS was a mistake and we should all go back to VT100 terminals like God intended etc. etc.)

Literally toying with the idea of a "modern" BBS centered around current terminal usage... supporting varying display sizes, images, mouse clicks, urls, etc.

Mostly in that I want at least half a step between someone being able to just click a browser link and participating in discussions.

My font stack looks something like this:

  font-family: "Roboto Serif", Verdana, sans-serif;
(Because of the OFL, “Roboto Serif” is replaced by another name since I modified the font when I subsetted it)

Large font stacks made sense in the days of IE6 for the following reasons:

• Dial up users did not have enough bandwidth to download webfonts.

• Only IE supported webfonts, in a weird proprietary “eot” format

• 99% of desktop operating systems all had the same web safe fonts “Verdana/Georgia/Trebuchet/Times New Roman/Arial/etc.”

Here in 2025, font stacks no longer make as much sense:

• 100k for a webfont package is a small file, even on a 4g network in a third world country. [1]

• All mainstream current browsers support woff2 webfonts [3][4]

• On Android, font support is very limited and has no support for the old school “web safe” core fonts for the web (Verdana/etc.)

As an aside, if metric compatibility (i.e. all of the fonts letters are the same size) with an OS core font is needed, “Arimo”/“Liberation Sans” is metrically compatible with Arial, “Liberation Serif”/“Tinos” is metrically compatible with Times New Roman, and “Cousine”/“Liberation Mono” is metrically compatible with Courier New.

[1] CJK users have font files large enough where the download size might be an issue. In that case, we either accept the download size as part of a modern website, or we accept that Android users will get Noto [2] while Mac/Windows users will get different looking system fonts.

[2] These font stacks linked in this article by and large all end up using Noto on Android phones. [5] I personally await the day when Apple and Microsoft include Noto by default with their OSes, so “font-family: Noto, sans-serif;” always does the right thing.

[3] 96% over at https://caniuse.com/?search=woff2

[4] Some people will turn off webfonts, but those people have made it clear they don’t care whether or not they get a font which looks like the design the webmaster intended. Again, use https://screenspan.net/fallback to find a reasonably metrically compatible fallback font.

[5] Looking at them in Firefox on my Android phone, “System UI” works, “Neo-Grotesque” gives a pencil thin font which is very difficult to read (“Inter” on my phone is pencil thin), “Slab Serif” actually looks nice (both in Windows, with Rockwell, and on Android, with Roboto Slab), and “Handwritten” works for its purpose (Android uses a “Cursive” fallback font). All the other font stacks are giving me the system default serif/sans/mono fonts (either Noto or Roboto). With Chrome on my Android phone, source sans pro is used a lot, as well as Google specific metric compatible versions of “Arial”, “Georgia”, “Courier New”; “Slab Serif” doesn’t work there even though Roboto Slab is installed on my Android system. Point being, Android has made web safe fonts a thing of the past.

> on a 4g network in a third world country

Such as the US?

Even in first-world countries, there are places with terrible coverage, where only 2G/3G service is available. The modern Web is pretty much unusable in those conditions, because Web designers think that “everyone has a fast network now”.