FIGlet Fonts for 80-Column Banners
Measured widths for three phrases across the 15 quick-start fonts, with exact outputs and a reproducible dataset.
Original measurements recorded 8 November 2026. This is a bounded experiment, not a survey of users or a market statistic.
Which tested banners fit 80 columns?
In our recorded test, 11 of 15 fonts kept all three phrases within 80 columns. Every tested font fit HELLO and BUILD OK; the differences appeared with ASCII ART. These are results for those exact strings, not maximum input lengths or rankings of font quality.
| FIGlet font | HELLO | BUILD OK | ASCII ART | All three fit 80? |
|---|---|---|---|---|
| Standard | 31 | 43 | 51 | Yes |
| Big | 36 | 49 | 62 | Yes |
| Banner | 41 | 55 | 60 | Yes |
| Slant | 33 | 46 | 52 | Yes |
| Small | 26 | 39 | 43 | Yes |
| Block | 51 | 73 | 83 | No |
| Lean | 54 | 77 | 87 | No |
| Mini | 18 | 29 | 35 | Yes |
| Script | 32 | 52 | 52 | Yes |
| Shadow | 36 | 51 | 61 | Yes |
| Speed | 39 | 58 | 63 | Yes |
| Star Wars | 49 | 68 | 88 | No |
| Doom | 33 | 45 | 53 | Yes |
| 3D-ASCII | 54 | 78 | 81 | No |
| Alphabet | 26 | 41 | 46 | Yes |
For ASCII ART, Mini uses 35 columns. The table shows why choosing a font by name alone is not enough: 3D-ASCII needs 81, while Block, Lean and Star Wars also exceed the chosen 80-column budget. Measure your own phrase before pasting it into a constrained destination.
An exact banner you can check
This is the Mini output stored in the dataset, with whitespace preserved:
__ _ ___ ___ _ ___
/\ (_ / | | /\ |_) |
/--\ __) \_ _|_ _|_ /--\ | \ |
Open the text-to-ASCII generator with Mini, enter ASCII ART, and leave both layouts at Default. To reproduce the unwrapped measurement, set Width to 200. The study's 80-column threshold is a comparison budget, not the generator's width setting.
Method: unwrapped banners, not cropped previews
We ran the production text renderer with FIGlet 1.12.0, its 15 preloaded quick-start fonts, and the three uppercase phrases shown above. Horizontal and vertical layout were Default; Width was 200. The measurement script rejects non-ASCII output and any output taller than the font's declared height, so wrapped phrases cannot be mistaken for naturally narrow banners.
For each banner, we split on LF and counted the longest row without trimming spaces. Fit means that maximum is no greater than 80. We did not measure a terminal emulator, font pixels, legibility, user preference or every font in the catalog. Different text, letter case, punctuation and layout settings need their own measurements. The FIGlet option documentation explains layout and width controls.
Download the generation script. In a checkout containing it, install from the lockfile, then run node --require ./scripts/register-source.cjs ./scripts/build-research.cjs --prepare. The resulting figlet-widths.json includes the settings, library version, full output and hash for every observation.
An 80-character row still needs preserved spaces and an appropriate display font. Use the worked README banner lesson for embedding, and the character-width study for the separate pixel-width question.