How image to ASCII conversion works
An image to ASCII converter treats your picture as a grid. If you ask for 100 characters across, the picture is divided into 100 columns, and the number of rows is chosen so the result keeps the picture's proportions. Because a character is roughly twice as tall as it is wide, there are about half as many rows as a square grid would need.
For each cell, the converter averages the pixels inside it and measures their brightness. That brightness is then matched to a character from a ramp that runs from empty to full: a space for the lightest cells, then light marks such as . and :, medium ones like + and *, and heavy ones like # and @ for the darkest. On a dark background the mapping is flipped, so bright parts of the picture get the heavy characters. Every option on this page changes one step of that process.
Convert an image to ASCII in four steps
- Add your picture. Click Upload image, drag a file onto the preview, paste a copied image with Ctrl+V (⌘V on a Mac) or press Paste, or load an image from a web address.
- Choose the width. 60 to 100 characters works for most pictures. Go wider for detailed photos and narrower for chat messages.
- Pick characters and style. Try Standard first, then Detailed for photos, Blocks for bold shapes or Braille for small, sharp results. Choose a style that matches where the art will be shown.
- Copy or download. Copy the text, or save a .txt, a colored .html page or a .png image.
Settings that make the biggest difference
Width
Width is the main quality control. Each character can only show one tone, so a face at 40 characters wide has room for little more than eyes and a mouth, while at 160 characters you can see hair and shading. Wider output also means longer lines, which wrap and break the picture in chat apps and narrow windows, so choose the width for the place you will paste it.
Contrast, brightness and gamma
Most photos use only part of the tonal range, which leaves the ASCII image looking flat. Raising contrast spreads the tones across more characters. Brightness shifts everything lighter or darker. Gamma changes the midtones only: lower values open up dark shadows, higher values bring out detail in bright skies and skin.
Edge detection
Edge detection finds the outlines in your picture and makes them denser. It is the most effective setting for logos, icons, line drawings and faces, where the shape matters more than the shading. Turn on Edge lines as well to draw outlines with /, |, \ and -.
Dithering
When a smooth gradient such as a sky is converted, it often turns into wide stripes of the same character. Dithering breaks up those stripes by passing the rounding error from each cell to its neighbours (Floyd–Steinberg) or by using a fixed pattern (ordered). The result has more texture and looks smoother from a distance.
Which pictures convert best
| Picture | Suggested settings |
|---|---|
| Portrait or selfie | Width 80–120, Detailed characters, contrast +20, edge detection 20–30. |
| Logo or icon | Width 50–80, Standard or Blocks, contrast +40, edge detection 40 or more. |
| Landscape photo | Width 140–200, Detailed, Floyd–Steinberg dithering. |
| Anime or cartoon | Width 100–150, Standard, Edge lines on. |
| Screenshot or text | Width 150 or more; small text rarely survives below that. |
| Small chat sticker | Width 30–50, Braille characters. |
Image to ASCII text vs. ASCII image
The text you copy is the real result: plain characters you can paste into any editor, terminal, code comment or chat. It has no colors and depends on a monospaced font to keep its shape. The PNG download is a picture of that text, drawn with exact character spacing and optional colors, which is better for social media, slides and anywhere fonts cannot be controlled. The HTML download sits in between: it is a small web page with the characters in a <pre> block and colors stored per character.
Privacy: your images stay on your device
Many online picture converters upload your file to a server and return the result. This image to ASCII tool does not. The picture is decoded by your browser, converted by JavaScript and drawn by your graphics card through WebGPU (or Canvas 2D when WebGPU is not available). Nothing is sent anywhere, which also means it works with private photos and keeps working offline once the page has loaded.
Related tools
To convert moving pictures, use video to ASCII or webcam to ASCII. To turn words rather than pictures into large letters, try the text art generator. The main ASCII art generator combines all picture sources on one page.