Turn an image into ASCII art
Turn a photo into text-based ASCII art.
To convert an image to ASCII art, upload a JPG, PNG, WEBP, GIF or BMP, set the width in characters and download a .txt file. Each pixel block becomes one character from a ten-step set running from @ for dark areas to a space for light ones. The output is plain text in grayscale, so it carries no color, and it only looks right in a monospaced font.
How to convert an image to ASCII
Upload an image up to 20 MiB, enter a width between 40 and 300 characters (100 by default) and submit. The tool shrinks the picture to that many columns, maps the brightness of each cell to a character and returns ascii-art.txt. Height is worked out from the image shape so the proportions look right.
Choosing a width
Narrow widths of 40 to 80 characters suit chat messages and terminals. Wider output of 150 to 300 characters keeps far more detail but needs a wide window or a tiny font to display without wrapping. Faces and logos read best with high contrast and a simple background, because only brightness is used.
Invert for light text on a dark background
By default dark pixels become dense characters like @ and #, which suits black text on white paper. If you will paste the art into a dark terminal or editor, tick Invert. That reverses the character set so bright areas get the dense characters and the picture does not look like a negative.
Viewing and sharing the result
Open the .txt file in any editor with a monospaced font such as Courier or Menlo. Proportional fonts break the alignment. Pasting into chat apps often reflows lines, so share it as a code block or as a file. To prepare a clearer source first, resize it with the Image Resizer.
Frequently asked questions
How do I convert a picture to ASCII art?
Upload the picture, choose a width between 40 and 300 characters and submit. You download a text file in which brightness is mapped to characters, with @ for the darkest areas and a space for the lightest.
Does the ASCII art keep the colors?
No. The image is converted to grayscale first, and only brightness decides which character is used for each cell. The result is a plain text file without any color information.
What does the invert option do?
Invert swaps the character set so bright areas use the dense characters. Turn it on when you will view the text light-on-dark, for example in a dark-themed terminal, so the image does not appear reversed.
What width should I use for ASCII art?
The default is 100 characters, and the allowed range is 40 to 300. Use around 60 to 80 for a terminal or chat, and 150 or more when you want finer detail and can view the text in a wide window.
Why does my ASCII art look misaligned?
Almost always the viewer is using a proportional font or wrapping long lines. Open the file in a monospaced font with word wrap off, or lower the width so each line fits the window.
Related tools
Background Remover
Automatically remove the background from any photo.
Use tool →Background Changer
Swap in a new background color or image instantly.
Use tool →Image Converter
Convert between JPG, PNG, WEBP, GIF and more.
Use tool →Image Compressor
Reduce image file size with minimal quality loss.
Use tool →Image Resizer
Resize photos to any dimension or aspect ratio.
Use tool →Image to PDF
Bundle one or more images into a single PDF.
Use tool →