Image to ASCII Art
Turn a photo, logo or drawing into ASCII text art. Set the width in characters, the character set, brightness and contrast, then copy it or save as TXT or PNG.
The interactive tool loads here when JavaScript runs.
About this toolWhat is the Image to ASCII Art converter?
Load a picture and it is redrawn with text characters: dark areas become dense characters such as @, % and #, light areas become dots or spaces. Choose how many characters wide the art should be, from 20 for a chat message to 240 for a detailed poster, and pick a character set from a 10-level classic ramp, a 70-level detailed ramp, Unicode shade blocks or a two-tone mode.
Brightness and contrast sliders help faces and logos read clearly, and a switch produces light-on-dark art for terminals and dark-mode pages. Copy the text with one click, download it as a TXT file, or save a PNG picture of it.
The conversion runs in your browser tab. The image is not uploaded.
- Width from 20 to 240 characters with automatic row count
- Five built-in character sets plus your own ramp
- Area-averaged sampling with BT.709 luma
- Brightness, contrast and character aspect controls
- Dark-background mode for terminals
- Copy, TXT and PNG download; runs in your browser
How to use the Image to ASCII Art converter
- Choose a picture or drop it on the box. A sample photo is shown until you do.
- Set the width in characters. 60 to 100 suits chat and README files; 150 or more needs a small font.
- Pick a character set, or enter your own from lightest to darkest.
- Adjust brightness and contrast until the subject stands out, and switch to light text on a dark background if the art will be shown in a terminal.
- Copy the text, or download it as a TXT or PNG file.
Worked examples
Chat-sized landscape
Input
1200 x 800 photo, 80 columns, standard ramp
Output
80 x 27 characters
80 x (800 / 1200) x 0.5 = 26.7, rounded to 27 lines.
Logo for a README
Input
Square black logo on white, 60 columns, two-tone
Output
60 x 30 block of # and spaces
With two levels every cell is either inked or blank, which suits flat logos and stays readable in any monospace font.
Dark terminal banner
Input
Same image with Light text on a dark background
Output
Ramp reversed so bright areas use dense characters
On a dark screen the characters are the light part, so the mapping is inverted.
Background and insight
ASCII art conversion maps brightness to characters. The tool first measures each pixel's luma with the ITU-R BT.709 weights (0.2126 R + 0.7152 G + 0.0722 B), which reflect how much each primary contributes to perceived brightness. The picture is divided into one cell per character; each cell takes the average luma of all the pixels it covers, so thin lines are not skipped, and that average picks a character from a ramp ordered light to dark.
Monospace characters are about twice as tall as they are wide, so a grid of square cells would look stretched vertically. The tool uses fewer rows than columns would suggest: rows = columns x (height / width) x 0.5. An 80-column conversion of a 1200 x 800 photo therefore has 27 lines. If your font is narrower or wider, adjust the character width/height slider until circles look round.
The classic ramps " .:-=+*#%@" and the 70-character "$@B%8&WM#*oahkbdpq..." sequence were popularised by Paul Bourke's character-ramp notes. More levels give smoother gradients but read as noise at small widths; short ramps and block characters give bolder results. The shade blocks ░ ▒ ▓ █ are Unicode, not 7-bit ASCII, so use a classic ramp where only ASCII is allowed, such as old terminals or source comments.
Common use cases
README and code comments
Add a logo or banner in text form to a GitHub README, CLI help screen or source file header.
Chat and forums
Post a picture as text in Discord, Slack or Reddit code blocks where images are not allowed.
Terminal tools and MOTDs
Create a login banner or splash screen for a server or command-line app.
Art and teaching
Explore how brightness, resolution and character density create an image, or make printable text art.
Tips and limitations
- Pick images with strong contrast and a plain background. Busy photos turn into texture at small widths.
- Crop tightly to the subject first so the characters are spent on what matters.
- Paste inside a code block (three backticks) so chat apps use a monospace font and keep the spacing.
- Trailing spaces are trimmed from each line, which keeps files small and does not change the picture in a monospace font.
- Proportional fonts break ASCII art. If columns drift, the viewer is not using a monospace font.
- Discord messages are limited to 2,000 characters, so keep chat art to about 40 columns by 25 lines.
Frequently asked questions
How do I convert an image to ASCII art?
Load the picture, set the width in characters and a character set, adjust brightness and contrast, then copy the text or download it.
Why does my ASCII art look stretched?
Characters are taller than they are wide. The tool squashes rows by a factor of 0.5 by default; if your font differs, move the character width/height slider until the picture looks right.
How do I paste ASCII art into Discord or Slack?
Wrap it in a code block with three backticks on the lines before and after. That forces a monospace font and preserves spaces.
What width should ASCII art be?
About 60 to 100 characters for READMEs, chats and terminals that are 80 columns wide. Wider art needs a smaller font to fit on screen.
Which characters give the best result?
The 10-level standard ramp is a good start. The 70-level ramp shows more tones at large widths; blocks and two-tone suit logos and bold shapes.
Is the block-character output real ASCII?
No. The shade blocks are Unicode characters. They display in most modern apps, but use a classic ramp where only plain ASCII is accepted.
Is there an in-depth guide to the Image to ASCII Art converter?
Yes. “How Image to ASCII Art Conversion Works” covers the background, how it works, common pitfalls and worked examples. Read the full guide.
People also search for
- convert picture to ascii text art
- ascii art from logo for readme
- image to text art for discord
- ascii art generator from photo
- make ascii art for terminal banner
- turn image into characters online
- block character art from image
- ascii art that does not look stretched
Related Tools You May Like
Free, in-browser tools that pair well with this one.