ASCII art · Image converter
Image to ASCII art converter
Convert an image to ASCII in your browser. Adjust resolution, brightness, dithering and colors; copy text or export PNG, SVG, HTML and ANSI.
Load an image to begin. Ctrl+V / Command+V pastes a copied image while this tool is focused.
Plain-text copying keeps the characters, not their colors. Use PNG, SVG or HTML to preserve appearance. ANSI export uses terminal true color; it is not a Discord message.
Turn a photo into characters
- Choose a PNG, JPEG, WebP or GIF. You can also drop a file or paste a copied image into the focused tool.
- Choose columns and a character set. Keep image proportions, then adjust tone and edge detail. Turn on dithering to soften tonal steps.
- Copy the characters into a monospace text field, or export an image to preserve the appearance.
Resolution, characters and color
More columns preserve detail but create longer lines. The aspect lock accounts for character cells being taller than they are wide. Classic, simple and binary sets use ASCII; block characters use Unicode. Custom sets must contain 2–70 fixed-width ASCII or block characters, ordered from darkest to lightest.
Transparent pixels are composited on white before conversion. Original color affects the preview and PNG/SVG/HTML/ANSI exports; copied plain text contains no color information.
Copying and exporting without broken spacing
For Google Docs or Word, use Copy for documents and a normal formatted paste. If the app discards formatting, select Courier New and disable line wrapping where possible. Discord code blocks preserve spacing but have a 2,000-character standard message limit. PNG preserves appearance independently of fonts. SVG remains editable text and requires a compatible monospace font.
How image to ASCII conversion works
The converter shrinks your picture to a grid and puts one character in each cell, picked by how bright that cell is. With the classic set, dark areas get dense characters like @ and #, and bright areas get dots and spaces.
That's why turning an image to ASCII art works best with clear shapes and strong contrast. Fine textures, small text and busy backgrounds turn into noise at character size.
Pick a photo that converts well
Crop the photo before you load it if you can. Every column spent on empty background is one less column for the subject.
- One subject, close up: a face, a pet, a logo or a silhouette.
- A plain background that's much lighter or darker than the subject.
- Strong light and clear shadows. A flat, dim photo comes out as a field of the same few characters.
- Logos, icons and line drawings, which keep their shape even with few columns.
Settings that fix a muddy result
Start from the defaults, then change one control at a time and watch the preview.
- Contrast: raise it first to pull the subject away from the background.
- Gamma: above 1 brightens the midtones and below 1 darkens them. Try it when a face looks too dark or washed out.
- Edge detail: darkens outlines so logos and portraits keep their shape.
- Floyd–Steinberg dithering: on for soft gradients like skies and skin, off for flat logos.
- Invert characters: turn it on when the art goes on a dark background, like a terminal or Discord in dark mode; otherwise the dark parts of your photo show up bright. Set Preview theme to Dark to check.
- Reset adjustments takes you back to the start if you overdo it.
Where your ASCII picture works
Plain text holds its shape in a monospace font, the kind used by code blocks, terminals and code editors. In a regular chat message or a caption, letters change width and the picture skews.
- GitHub README: paste the text between two lines of three backticks (
```). - Terminal: turn on Original colors and export ANSI to see it in color in a true-color terminal.
- Discord: use Copy Discord block and keep the columns low, since each message has a character limit.
- WhatsApp: add three backticks (
```) before and after for monospace, and use few columns because a phone chat bubble is narrow. - Stories and posts: export PNG and upload it as a photo.
Frequently asked questions
Is my image uploaded?
No. Image decoding, conversion and exports run locally in the browser. Choosing a file does not send it to a server.
Can I convert videos or animated GIFs?
This converter makes a still image. GIF input uses its first decoded frame. Video, webcam and animated exports require a separate frame-by-frame workflow.
Can I paste a colored ASCII image in Discord?
Not as arbitrary full-color text. Download PNG to share the colored result. ANSI export here targets terminals with true-color support; Discord supports a smaller palette through its separate colored-text tool.
What are the size limits?
Input is limited to 10 MB and 40 megapixels. Output supports 20–240 requested columns and up to 250 rows. Very tall images reduce the actual columns to preserve proportions. PNG export is capped at 12 million pixels.
How do I keep the shape when I paste it?
Paste it into a field that uses a monospace font and doesn't wrap lines, such as a code block. For Google Docs or Word, use “Copy for documents”. If the spacing still breaks, export a PNG instead.