ASCII Art Text Generator

Type your text and pick a font to instantly generate a FIGlet-style ASCII banner. Copy as raw text, a // code comment, or a # script comment. Nothing uploaded.

Standard + Block fonts Live preview Copy as // comment Copy as # comment Max column width

Output


            
Max width: - Lines: - Max char/line: -

Learn more: FIGlet-style ASCII banners and terminal widths

What FIGlet-style ASCII art is

FIGlet is a banner program released in 1991 that draws oversized letters out of ordinary text characters. Each letter is stored as a stack of text rows rather than as an outline or a curve, so a finished banner is just those stacks printed next to each other. Developers have used it for decades on CLI splash screens, README headers, and build-log section markers.

This generator works the same way. Every character here is five rows tall, and the renderer joins the matching row of each letter with a single space between letters, then prints the five finished lines. That is why the output is always exactly five lines, whatever you type.

How wide your banner comes out

Width comes from the letters you type, not from a setting. In the Block font almost every character is five columns wide plus its trailing space, so the banner grows by six columns per character. HELLO lands at 30 columns and BENTOUTILS at 60. The one exception is the Q, whose tail pushes its bottom row a column wider than the rest.

Standard is narrower and uneven. Its rows run from three columns wide (the K) up to seven (the bottom row of the X), so HELLO comes out at 28 columns while BENTOUTILS measures 57, 58 or 59 depending on which of the five rows you check. The input box stops at 20 characters, so at six columns each a full-length Block banner reaches 120.

The 80-column limit and what the cap does

80 columns goes back to the IBM punched card of 1928 and carried forward into terminals like the IBM 3278 in the 1970s. Most terminals still open at 80 columns, so that is the width worth designing for, and it is the preset selected here by default.

The cap truncates, it does not wrap. Each of the five lines is cut at the column you pick, so in Block the first 13 letters fit inside 80 columns (78 of them) and the 14th is sliced two columns in. Because Standard's rows are uneven, the same cut can land after a letter on one row and through it on another, which is what makes clipped Standard output look crooked instead of simply short.

Standard, Block, and one encoding catch

Standard draws its letters from slashes, pipes, dashes and underscores. Every glyph in it is plain ASCII, so it pastes into anything that accepts text at all.

Block is not ASCII despite the tool's name. It fills whole cells with U+2588, the Unicode full block character, which reads better at a glance but needs the destination to handle UTF-8. In a strict ASCII-only file or an old console it can come out as boxes or question marks, and Standard is the safer pick there.

FAQ

How do I add an ASCII banner to a README?

Generate the banner, press Copy raw, and wrap the result in a fenced code block so the monospace alignment holds. The other two buttons prefix every line with // or # instead, which drops the banner straight into JavaScript or Python source.

Why did my banner get cut off on the right?

The max columns setting truncates each line at that column rather than wrapping onto a second block of five lines. Choose a wider preset, switch to Unlimited, or shorten the text.

Why do some of my characters come out as question marks?

The bundled fonts cover A to Z, the digits 0 to 9, and the space, which is 37 shapes, plus a question-mark glyph used as the fallback. Punctuation and accented letters are drawn with that fallback, and lowercase input is uppercased before rendering.

Last reviewed: September 16, 2026