Image to ASCII Art Converter

Drop in a photo or picture and get it back as ASCII art: plain text you can copy, paste or save as a .txt file.

This converter reads a picture and swaps each small patch of it for a character whose density matches its brightness: dense characters like @ and # for dark areas, light ones like . and spaces for bright areas. You choose how many characters wide the result is, which set of characters draws it, and how bright, contrasty or inverted it looks. To spell out a word in big letters instead of converting a picture, use the ASCII art generator.

or drop one here, or paste it with Ctrl+V (Cmd+V on a Mac). JPG, PNG, GIF and WebP all work. Your picture is read inside this browser tab and is never uploaded.

Showing a sample sphere until you load a picture.

10 plain keyboard characters. Pastes cleanly anywhere.

Your ASCII art

                  ..::---===--.
               .::::::::---==+**-
             .::....::::---==++*##-
            :::...:::::---===++*##%+
           .-:::::::::---===++**##%%=
           ---:::::----===+++**##%%@%
          .=---------====++***##%%%@@.
           +==========+++***###%%%@@@
           =+++++++++++***###%%%@@@@*
            ***********####%%%%@@@@%
            .*#########%%%%%@@@@@@#.
              -#%%%%%%%%%@@@@@@@#-
                :+%@@@@@@@@@@%*-..
               ..::-=+++*+++=----:::..

Multi-line ASCII art only keeps its shape in a monospace font. In a normal chat message or caption the columns drift, so it needs a code block: Copy for Discord and Copy for Reddit add one for you.

What the output looks like

This is the sample sphere the tool opens with, converted at 48 characters wide with the Standard set. The lit upper left turns into dots and spaces; the shaded side and the shadow fill in with % and @.

                  ..::---===--.
               .::::::::---==+**-
             .::....::::---==++*##-
            :::...:::::---===++*##%+
           .-:::::::::---===++**##%%=
           ---:::::----===+++**##%%@%
          .=---------====++***##%%%@@.
           +==========+++***###%%%@@@
           =+++++++++++***###%%%@@@@*
            ***********####%%%%@@@@%
            .*#########%%%%%@@@@@@#.
              -#%%%%%%%%%@@@@@@@#-
                :+%@@@@@@@@@@%*-..
               ..::-=+++*+++=----:::..

How to turn a photo into ASCII art

  1. Load the picture. Choose a file, drop it on the box above, or copy an image and paste it anywhere on the page.
  2. Set the width. The slider sets characters per line. The height follows the picture's proportions, corrected for characters being about twice as tall as they are wide.
  3. Pick a character set. Standard and Detailed use only keyboard characters. Blocks and Braille dots use Unicode characters for bolder shading and finer detail.
  4. Tune the look. Brightness and contrast pull detail out of the shadows and highlights. Invert flips the shading for light text on a dark background.
  5. Copy or save. Copy takes the plain text, the Discord and Reddit buttons wrap it in a code block, and Download .txt saves a file.

Image to ASCII, answered

How do I convert an image to ASCII art?

Choose a picture, drop it on the box or paste it with Ctrl+V (Cmd+V on a Mac). The ASCII version appears straight away. Drag the width slider to set how many characters wide it is, pick a character set, then press Copy or Download .txt.

What width should I use?

Around 60 to 100 characters suits a README, a code comment or a forum post. Go up to 200 for a detailed piece you will view in a text editor or terminal. On a phone or in a chat window, narrower art wraps less, so 40 to 60 is safer.

Why does my ASCII art look stretched or crooked when I paste it?

The art only lines up in a monospace font, where every character is the same width. Most apps and social feeds use a proportional font, so the columns slide out of line. Paste it into a code block, a text editor, a terminal or a plain-text file and it keeps its shape.

How do I post image ASCII art on Discord?

Press Copy for Discord. It wraps the art in a code block (three backticks above and below) so Discord shows it in a monospace font. A Discord message holds 2,000 characters, and the counter under the preview says whether yours fits. If it does not, Fit to one Discord message shrinks the width until it does. Discord's default theme is dark, so turn on Invert to keep the bright parts of the photo bright.

How do I post ASCII art on Reddit?

Press Copy for Reddit. It puts four spaces in front of every line, which Reddit reads as a code block on both the new and the old site. In the new editor, switch to Markdown Mode before you paste, or the spaces are dropped.

Which character set should I pick?

Standard uses 10 plain keyboard characters and pastes anywhere. Detailed uses 70 characters for smoother shading at larger widths. Blocks (█▓▒░) read clearly at small sizes. Braille dots pack 8 dots into each character, so they give the sharpest outline for the fewest characters, which helps with message limits.

Which photos convert best?

Pictures with one clear subject and a plain background: a face close up, a logo, a pet against a wall. Busy scenes turn into noise at 80 characters wide. Raise the contrast slider to separate the subject from the background, and use Invert if the result looks like a negative.

Is this image to ASCII converter free?

Yes. There is no sign-up, no watermark and no limit on how many pictures you convert.