Monospace

A font where every character is exactly the same width, so text lines up in columns. The code editor and typewriter look.

code fonttypewriter fontfixed width fontmonospacedmono spaceterminal fontfont where every letter is the same widthfont that makes text line up in columns

See it

Live demo coming soon

What it is

In a monospace font every character occupies exactly the same advance width, so an i takes as much room as an m. That constraint came from typewriters and early terminals, where the carriage moved a fixed step. Designers compensate by widening the skinny letters with slabs and stretching them, and by squeezing the wide ones, which is why mono faces have that unmistakable rhythm.

Use it where characters must align in a grid, or where the monospace look is the point: code blocks, terminal output, diffs, ASCII tables, log viewers, and deliberately technical or receipt-like branding. It is not the answer to wobbling numbers on its own, since tabular figures fix that inside your existing face. Good code faces also draw the ambiguous glyphs apart: a slashed or dotted zero, a distinct 1 versus l versus I, and coding ligatures that fuse => and !== into single marks. JetBrains Mono, IBM Plex Mono, Fira Code, SF Mono, and Berkeley Mono are the usual picks. Used decoratively, mono signals technical, indie, and receipt-like.

Gotcha: monospace is slower to read in prose, because the uniform widths flatten the word shapes your eye normally uses to recognize words. It also eats horizontal space, so a mono paragraph needs a wider column for the same character count. If you only need aligned numbers, do not switch fonts: turn on tabular figures with font-variant-numeric: tabular-nums and keep your proportional face.

Ask AI for it

Use a monospace font (JetBrains Mono or IBM Plex Mono) for all code blocks, inline code, and terminal output, with a slashed zero and coding ligatures enabled. Set it at 0.9em relative to body text, 1.55 line height, in a container with horizontal scroll rather than wrapping. Keep prose in the proportional body face, and use font-variant-numeric: tabular-nums there for any numbers that update in place.

You might have meant

tabular vs proportional figuresligaturefont stacksuperfamilyglyph

Go deeper