Image to ASCII Converter
Turn an image into ASCII art by mapping pixel brightness to characters
Image Source
Upload an image or load the sample. The image is read off a canvas in your browser — it is never uploaded.
Conversion Options
Examples
Convert a portrait photo
image: portrait.jpg
columns: 80
charset: standard
invert: off@@@@@@@#########/////////*******///////#########@@@@@@@
@@@@@################/////////********////////////////@@@@@@
@@@@################////////**********///////###########@@@@
... (80 chars wide ASCII rendering)The luminance of each pixel region is mapped to the standard character ramp: ' ', '.', ':', ';', '+', '*', '#', '@' from light to dark.
Convert with the blocks character set
image: logo.png
columns: 60
charset: blocks
invert: on█▓▒░ ░ ░░▒▓█ ▓▒░ ░░▒▓▒░░ ░░▒▓█▓▒ ░░▒▓▒░
░░▒▓ ▓▒░░░▒▓█ ▓▒░ ░░▒▓▒░░ ░░▒▓▒░ ░░▒▓▒░ ░░▒▓▒░The blocks character set uses Unicode block-drawing characters (█ ▓ ▒ ░) for a denser, more graphic look at low column counts.
About this tool
Image to ASCII art converts a visual image into a character-based representation using the canvas API. Each pixel region is mapped to a character whose visual weight matches the region's luminance, so dark areas map to dense characters like '@' and light areas map to sparse characters like '.'. The result is a recognisable ASCII rendering of the original image.
The tool reads the image locally using the FileReader API — it is never uploaded to any server. You can adjust the column width (number of characters per row), choose from four character sets (standard, blocks, binary, detailed), and toggle invert so bright images produce dark-on-light output.
How to use
Select an image
Click Choose File to pick a local image (PNG, JPEG, GIF, WebP). The image is read entirely in your browser — it never leaves your device.
Adjust the settings
Set the column width (characters per row), pick a character set, and toggle invert. The ASCII output updates live as you change settings.
Copy the ASCII art
Click Copy to grab the ASCII art as plain text. The output is monospace and renders correctly in any terminal or code editor.
Use cases
Creating ASCII art for a terminal profile
Convert a logo or a portrait into ASCII art to embed in a terminal welcome message or a README.
Generating a text-based preview of an image
Represent an image as text for environments where images are not supported — IRC, terminal sessions, or plain-text documents.
Fun output for a CLI tool
Pipe an ASCII-rendered image through a CLI tool or a chat bot that only supports text.
Common mistakes
Mistake:Using too few columns.
Fix:With very few columns (e.g. 20), the character resolution is too coarse and the image becomes unrecognisable. Increase the column count until the detail is sufficient.
Mistake:Not accounting for character aspect ratio.
Fix:Terminal characters are roughly twice as tall as they are wide. The tool adjusts row height by a factor of 2 to compensate, but very narrow fonts may still look stretched.
Mistake:Expecting photographic accuracy.
Fix:ASCII art is an artistic representation, not a pixel-perfect reproduction. The result depends heavily on the image contrast and the character set chosen. High-contrast images produce the best output.
Frequently asked questions
Related guides
References & standards
Related tools
Barcode Generator
Generate barcodes in 8 formats (CODE128, EAN13, UPC, and more) — configure line width, height, and text display, then download as SVG or PNG.
Base64 Image Encoder
Open the Image workspace in Base64 Toolbox to resize and convert images to Base64 data URIs, then copy HTML, CSS, Markdown or JavaScript snippets.
EXIF Viewer & Cleaner
View and remove EXIF metadata from images. See camera info, GPS location, and dates — then download a clean copy.
Favicon Pack Generator
Generate complete favicon packs with all standard sizes and Apple touch icons
Image Compressor
Compress JPEG, PNG, and WebP images in your browser. No uploads, completely private.
Image Format Converter
Convert images between different formats like PNG, JPG, WebP, and more