Is there any reason I should not use monospaced typefaces for text in articles? Do they negatively affect the reader's ability to easily read long-form text?
6Monospaced fonts were never really designed with readability as their primary goal; they're mostly useful for typesetting content where whitespace is important (like code) and as a solution for various technical limitations (e.g. in typewriters); is there a reason you'd want to use a monospaced font for normal body copy?– Kit GroseDec 5, 2013 at 1:48
Monospaced typefaces do reduce legibility, albeit by a margin.
In Universal Principles of Design, the entry on legibility states:
Proportionally spaced typefaces are preferred over monospaced.
One famous research on this is Beldie I. P., Pastoor S. & Schwarz E, 1983, “Fixed versus variable letter width for televised text”, Human Factors, 25, pp.273-277, where part of the results include:
The reading time (Task 1) with the variable-matrix character design was 69.1 s on the average, and the mean reading time with the fixed-matrix character set was 73.3 s, t (8) = 2.76, p < 0.02. The difference is 4.2 s or 6.1% (related to fixed-matrix characters).
It has to be said that latter research has shown more marginal differences, and that in some cases (dyslexia or programming code, for example) monospaced typefaces increase readability.
1cool that you have a research! :-) I only found a sentence on german wikipedia, where they said that it's less legible, but it had no source so I didn't want to answer...– LovisDec 5, 2013 at 12:46
1I'd like to see the later research on dyslexia and such that you mentioned at the end. Dec 11, 2013 at 21:58
IDK about dyslexia, but how would you explain 'increase readability in programming code'? I mean, if you can use proper tabulations, how would monospaced font help with readability? This belief floats over the web, but IMO does not have any logic in it. Mar 10, 2017 at 23:23
@MikhailV, developers are terribly dependent on the alignment of indented code. In fact, some languages like python or CoffeeScript replaced curly brackets with indents. So it is imperative for developers to see how different lines align. Without a monospaced font, you lose the alignment.– IzhakiMar 12, 2017 at 20:54
@Izhaki tabulations? in some modern IDEs it is already supported. But sure, for older software it is still a problem. Actually in VIM (monospaced) I use tabs, no spaces, so indentation would work also with proportional font. Mar 12, 2017 at 21:24
Definitely monospaced font is not intented to be very readable. The explanation although cannot be scientific since this is exactly the case where a 'research' will not show the exact grade of difference and will not explain why it is so. So here one relies mostly on typographical experience.
So here is my experience. Main issues with monospaced type:
The 'grid' effect. If you take a page full of text, all letters will be aligned on a vertical grid. This is somehow related to the so-called 'river' effect:
So besides space rivers, you have also 'thin rivers', i.e. for a block text with 50 character per line you have 50 thin rivers (gaps between letters) and columns (letters themselves). And this can look really bad, especially for bigger letter spacing. With a proportional font, they are eliminated, so the whole image is 'dithered' and words/lines are contiguous.
The 'font' itself, as a phenomenon, is not monospaced. This sounds somewhat postulative and again, cannot be proved mathematically, but I would say it is simply so. During the evolution, the optimisations give glyphs which can be read better and those are not monospaced. So if one uses a monospaced font, it is already a departure from possible optimum. This is sort of unprovable postulation.
As already mentioned by Kit Grose's comment, usage of monospaced font had technical reason, e.g. it would be very difficult to produce a typewriter which can type a font with variable width glyphs.
In software, it is also simpler to develop rendering and editing system with a monospaced font, since everything will be equal-sized rectangles, which reduces the complexity of algorithms.