Typography isn’t decoration — it’s a core accessibility practice. How text looks, how it’s spaced, how clearly letters are formed, and how large it appears all affect whether people can read, understand, and stay present with what you write.
When typography is inaccessible, it creates real visual and cognitive barriers that make content harder to parse, harder to focus on, and harder to complete — especially for people with low vision, dyslexia, cognitive differences, or sensory processing needs.
There is no one “magic font” that works for everyone, and designers often disagree about what’s best. But there are real design choices that reduce barriers for most readers: typefaces with clear, distinguishable characters, generous spacing, left-aligned text, sufficient size and line height, and high contrast between text and background. These choices benefit everyone — not just people with specific access needs.
Above all, the accessible typography principle at Stimpunks is this: make text that people can see, stay with, and understand without unnecessary strain. That means listening first to Disabled people’s experiences, testing with real readers, and making thoughtful choices about type, sizing, spacing, and contrast — not following aesthetic trends that privilege style over legibility.
And it means one more thing, which is the choice this site is actually built around: when the evidence says people differ, hand the reader the control.
Our type system
The Aa Reading panel in the header carries three controls — light or dark, reading font, and text size. They exist because no single set of defaults serves everyone, and because a preference a reader has already expressed should win over ours.
The house default
Montserrat, at a baseline of about 18px — above the 16px web minimum, in the 18–20px range that reads more comfortably for long stretches. A geometric sans that doubles as comfortable reading type, and the baseline everyone can move away from.
Eight reading fonts
- Montserrat — the house default. Suits hyperlexic reading, and the starting point rather than the answer.
- Atkinson Hyperlegible Next — from the Braille Institute, built to disambiguate easily confused characters (
0/O,I/l/1). Low-vision origin, but the disambiguation helps broadly. - Lexend — designed around reading proficiency. Of the alternates, it has the most credible efficacy story.
- OpenDyslexic — the most requested dyslexia font. Offered because people ask for it and preference is legitimate, not because efficacy is settled.
- Playpen Sans — a casual handwriting face that stays casual in look and digital in nature. Rationale and lived experience: Playpen Sans and Accessibility.
- Roboto — one of the two most-used fonts on the web. The familiar, neutral sans that disappears into the page — the deliberately ordinary baseline the rest of this list isn’t.
- Noto Sans — readability-tuned, large x-height, drawn to stay legible on small screens.
- Literata — a serif designed for long-form reading. The one serif here, and the biggest change of flavour: a slower, more immersive reading mood.
Casual faces and the serif get a little more line height — 1.6 to 1.7 rather than the house default — because they need the room.
Four text sizes
Roughly 18px, 21px, 23px, and 27px. The steps only go up; there is no “smaller than default,” because nobody has ever needed that from us.
The important part is what they scale from. The control sets a percentage relative to the reader’s browser default, so someone who has already raised their browser’s base size is scaled on top of rather than overridden. Because our typography and spacing are in relative units throughout, raising the size moves the text and the whitespace around it together — the page gets bigger, not more cramped.
Contrast
We aim for 7:1, above the WCAG AA minimum, and our Solarized palette is tuned for comfort over long reading rather than maximum punch. Neither theme uses pure white or pure black.
We do not dim text to signal that something is secondary. Reducing opacity to indicate hierarchy is the same low-contrast failure we have had to undo elsewhere on this site — hierarchy belongs in position, wording, and weight.
The reader always wins
None of these controls use !important, and none override a browser or operating-system setting. If your browser is set to force its own font, it wins. If your OS is in dark mode, that is where the page starts. This is the same principle behind why we don’t use accessibility overlays: we hand you switches, we don’t decide for you.
The principles underneath
These come from Alex Chen (@access_guide_), whose Pocket Guide to Accessible Typography and Queer Design Club essay are the clearest statement of this we’ve found. They apply whether or not you are working on our site.
Font. Look for characters you can tell apart:
- Is there a difference between capital I, lowercase l, and the number 1?
- Compare letters b and d, p and q — are they mirror images or distinguished?
- Compare letters g, a, and o — are they distinguished?
- Do the letters rn look like the letter m?
— The controversy of accessible type | Alex Chen | Queer Design Club
Size.
Use large font sizes instead of tiny text. It’s best practice for body text to be at least 16px for web. I personally prefer 18–20px.
People should also be able to zoom in up to 200% without losing information or structure.
Weights and styles. Use sentence case, not all caps. Don’t combine bold and italics. Don’t set whole blocks in italics.
Spacing. 1.5× the font size for line spacing, 2× for paragraph spacing.
Contrast. Regular weight rather than light, full opacity rather than faded, and aim for at least 7:1.
An honest caveat
The research on “dyslexia fonts” is mixed. OpenDyslexic in particular has not shown reliable gains over ordinary fonts in controlled studies, and the Comic Sans belief is popular but thinly evidenced. What is better supported is larger text, generous spacing, and — above all — letting the reader choose.
A 2022 study, Towards Individuated Reading Experiences, is the peer-reviewed version of that case: the font a person reads fastest in varies from individual to individual, many people are not reading in their fastest font, and speed and preference don’t reliably agree. Offering a range beats betting on one best answer.
So our alternates are offered for agency and preference, not as clinical claims. That is the whole point of a switcher: it lets people find out.
Implementation
This page is the type system. How it is built — the CSS variables, the stored preferences, the flash-free loading, the audit that caught two pixel-valued presets that would have ignored the size control — is documented in the Reading Experience notes in the IT Field Guide.

