Skip to content

Add to your Home Screen

  1. Tap the Share button in Safari's toolbar.
  2. Scroll down and tap Add to Home Screen.
  3. Tap Add. The generator opens full-screen and works offline.

Image to ASCII Art Converter

This image to ASCII converter turns a picture into text art made of characters or Braille dots. Choose, drop or paste an image, set the width, then copy the result or save a .txt or PNG.

  • Free
  • No sign-up
  • Nothing to install
  • Runs in your browser

or drop or paste an image here. Your image stays on your device.

Characters
Character set

Result (0 wide × 1 lines)

The preview uses a monospace font; paste into a code block, terminal or text file to keep the shape.

By Maya Chen, lettering designer and type educator · Checked by Jordan Hale · · How we review content

Key facts

  • The image to ASCII converter runs entirely in your browser: the picture is drawn onto a canvas and converted there, and nothing is uploaded.
  • Braille art uses the Unicode Braille Patterns block (U+2800 to U+28FF); each character is a 2 by 4 grid of dots, so it shows eight times as many pixels as a letter.
  • The converter offers four ASCII character sets (Standard, Detailed with 70 characters, Simple and Blocks); Braille mode adds a threshold and Floyd-Steinberg dithering.
  • Monospace characters are about twice as tall as wide, so the converter uses half as many rows as columns to keep the picture's proportions.
  • Use Invert when the art will show as light text on a dark background, such as Discord's dark theme or a terminal.
  • Good widths are 40 to 60 characters for chats, 80 for terminals, and 100 or more for a large printout or PNG.

This image to ASCII converter turns any picture into text art made of characters or Braille dots. Choose, drop or paste an image, set the width, contrast and character set, and copy the result, download it as a .txt file or save a PNG. The conversion happens in your browser, so the image never leaves your device.

How to use the image to ASCII converter

  1. Add a picture. Press Choose an image, drop a file on the box or paste one. Use the sample shows how it works.
  2. Pick Characters (ASCII or Braille dots), then set the Width and adjust Contrast and Brightness until the subject stands out.
  3. Copy the result with Copy or Copy for Discord, or download a .txt or PNG.

How the converter works

The picture is shrunk onto a grid, one cell per character. For each cell the converter measures the average brightness of the pixels it covers and picks a character with about the same amount of ink: @ and # for dark cells, : and . for light ones, a space for white. That list of characters ordered from dark to light is the character set:

Set Characters Look
Standard @%#*+=-:. Classic, balanced
Detailed 70 characters from $ to . Finer shading, noisier
Simple #+-. Bold, poster-like
Blocks █▓▒░ Solid shading, needs Unicode

Braille dots work differently. Each character holds a 2×4 grid of dots, and each dot is either raised or not depending on whether that pixel is darker than the threshold. Dithering spreads the rounding error to neighbouring dots (the Floyd–Steinberg method), which turns grey areas into dot patterns instead of flat black or white.

Getting a good result

  1. Start with contrast. A clear subject on a plain background converts best. Crop away empty space first.
  2. Pick the width for where you’ll paste it. 40 to 60 characters suits chats; 80 suits terminals.
  3. Adjust contrast and brightness until the subject separates from the background.
  4. Try Braille for small sizes or detailed images; try ASCII for maximum compatibility.
  5. Invert for dark backgrounds.

Using the result

Copy as plain text, copy as a Discord code block (three backticks around the art), download a .txt file, or download a PNG of the text in a monospace font for places that only take images. ASCII art keeps its shape only in monospace fonts, so paste it into code blocks, terminals, text files or documents set in a font such as Courier New, Consolas or Menlo.

For words rather than pictures, use the ASCII art generator; for ready-made pieces, browse the ASCII art galleries.

When a photo is too busy, cropping first and raising contrast will do more for an image to ASCII conversion than any other setting.

Frequently asked questions

Basics

Should I use Invert?
Use Invert when the art will be shown as light text on a dark background, such as Discord's dark theme or a terminal. Without it, the dark parts of your picture use the densest characters, which suits dark text on white.
How do I convert an image to ASCII art?
Press Choose an image, drop a file on the box or paste one, then set the Width and pick ASCII or Braille dots under Characters. Adjust Contrast and Brightness until the subject stands out, and press Copy. Use the sample button if you only want to see how it works.
Which image file types can I convert?
PNG, JPG, GIF, WebP and SVG files open in the converter. If a file cannot be opened as an image, the page shows a message suggesting one of those formats. Large photos are shrunk onto the character grid anyway, so a smaller image works just as well.
Can I save ASCII art as an image?
Yes. Besides Copy and Copy for Discord, there are two download buttons: .txt for plain text and PNG for a picture of the text in a monospace font. Use the PNG where only images are accepted, and the text where people need to copy it.

Where it works

Where can I paste ASCII art made from an image?
Anywhere that uses a monospace font: code blocks, terminals, text files and documents set in Courier New, Consolas or Menlo. Chat apps and social bios use proportional fonts that shear the rows apart, so use the PNG there, or a Braille version where it is allowed.
How do I post an image-to-ASCII result in Discord?
Press Copy for Discord, which wraps the art in three backticks, and paste into a message. Turn on Invert for Discord's dark theme so the subject shows as light characters, and keep the width near 40 to 60 for chat. A phone fits fewer characters per line than a desktop.
Does image to ASCII work for Steam profiles?
Braille mode is the better choice there, because it holds its shape in proportional fonts. The Steam ASCII art page covers the width and the [code] tag. Start around 30 to 40 characters wide and check the result on your profile.

How it works

What is Braille art?
Braille art uses characters from the Unicode Braille Patterns block (U+2800 to U+28FF). Each character is a cell of up to eight dots, two wide and four tall, so it shows eight times as many pixels as an ordinary letter. It looks smoother and more detailed but needs a font with those characters, and screen readers read the cells as Braille, which is meaningless here.
Why does my ASCII art look stretched?
Characters in monospace fonts are about twice as tall as they are wide, so the converter uses half as many rows as columns to keep the picture's proportions. If you paste it into a font with a different shape, or change the line height, the picture will look squashed or stretched.
What are the character sets for?
Each set is a list of characters ordered from dark to light, and the converter picks one per cell by brightness. Standard is classic and balanced, Detailed uses 70 characters for finer shading, Simple is bold and poster-like, and Blocks uses solid shading but needs Unicode.
What do threshold and dithering do in Braille mode?
Braille mode raises a dot where the pixel is darker than the Threshold. Dithering spreads the rounding error to neighbouring dots, using the Floyd-Steinberg method, which turns grey areas into dot patterns instead of flat black or white. Raise or lower the threshold until the subject separates from the background.

Tips & limits

Is my image uploaded?
No. The picture is drawn onto a canvas inside your browser and converted there. Nothing is sent to our server, which is also why the converter keeps working offline once the page has loaded.
What makes a good image for ASCII art?
A strong outline against a plain background, such as a silhouette, a logo, a portrait against a wall or a pet on a plain floor. Busy photos with lots of mid-tones turn into noise. Raise the contrast if the result looks grey and flat, and crop tightly before converting.
How wide should the result be?
Around 40 to 60 characters for chats and code blocks, 80 for terminals, and 100 or more for a large printout or PNG. More width keeps more detail but wraps on small screens.
Why does my ASCII art look grey and flat?
The picture probably has little contrast between subject and background. Raise Contrast, adjust Brightness, and crop away empty space before converting. A clear subject on a plain background converts best, and a different character set such as Simple can give a bolder result.