Blog / 7 min read · 2026-09-15
How to Make ASCII Art from an Image with Gemini
Learn to turn an uploaded photo into readable ASCII art with Gemini, using copy-and-paste prompts, size controls, styles, and repair steps for clean results.
To make ASCII art from an image with Gemini, upload the image, then tell Gemini to analyze it and return a plain-text character rendering at a specified width. The important part is being explicit about the output format, character set, and level of detail. Gemini Apps lets you add an image to a prompt through Add files, so the uploaded image can provide the visual reference for your request. Google’s Gemini Apps help guide documents this workflow.
The fastest method
- Open Gemini and start a new chat.
- Click Add files and upload a photo with a clear subject.
- Paste the prompt below.
- Copy the returned text into a plain-text editor that uses a monospaced font.
Analyze the uploaded image and convert its main subject into ASCII art.
Return only plain-text ASCII art, with no explanation, title, Markdown code fence, or extra text.
Use a 70-character width.
Use this character ramp for shading:
@%#*+=-:.
Keep the background simple. Preserve the subject's silhouette, major shadows, and the most recognizable facial or object details.
A width of 70 characters is a practical starting point: narrow enough to fit in many text boxes, but wide enough to retain a face, pet, product, or simple landscape. If the result feels blocky, request more width. If it becomes hard to read, reduce the width and simplify the background.
Use the right kind of source image
ASCII art depends on light and dark contrast. A clean portrait against a plain wall will usually translate better than a crowded group photo or a dim image with several competing focal points.
Before uploading, choose an image with:
- One clear main subject
- Visible contrast between the subject and its background
- Strong lighting or obvious shadows
- A composition that still makes sense when reduced to outlines
If your photo is blurry, underexposed, or lacking separation between the subject and background, improve it first with Gemini image-quality prompts for blur, lighting, and detail. The goal is not a perfect photo; it is a readable pattern of light and dark areas.
The prompt parts that control the result
Gemini does not need a special ASCII-art setting. Treat the details in your request as controls.
| Prompt instruction | What it changes | Good starting point |
|---|---|---|
Return only plain-text ASCII art | Prevents commentary around the artwork | Always include it |
70-character width | Controls horizontal detail | 50 to 90 characters |
Keep the background simple | Protects the subject from visual noise | Use for portraits and products |
Use only .:-=+*#%@ | Creates a consistent tonal look | Use when you want classic ASCII shading |
Use only # and spaces | Produces bold, high-contrast art | Use for logos and icons |
Preserve silhouette and major shadows | Prioritizes recognition over tiny details | Useful for almost every image |
No Markdown code fence | Makes copying easier | Add whenever you want raw output |
Google’s own prompt guidance recommends describing the desired style and adding specific visual details. That same principle applies here: the more clearly you define output rules, the less likely Gemini is to return a loose interpretation. Google’s image-prompt tips also recommend detailed visual descriptions.
Copy-and-paste Gemini prompts for different ASCII styles
Classic grayscale ASCII portrait
Use this for a headshot, pet photo, or close-up object.
Study the uploaded image and create a grayscale ASCII-art portrait of the main subject.
Output only the artwork as plain text.
Make it 80 characters wide.
Use only these characters, from darkest to lightest:
@%#*+=-:.
Preserve the silhouette, eye area, major shadows, and highlights. Remove distracting background details. Do not include a caption, explanation, or code fence.
Minimal black-and-white silhouette
This works well for profile photos, logos, buildings, and objects with a strong outline.
Turn the uploaded image into minimal black-and-white ASCII art.
Output only plain text at 60 characters wide.
Use only # characters and spaces.
Focus on the outer contour and the largest dark shapes. Use a plain background and avoid small texture details.
Do not add any words before or after the ASCII art.
Dense terminal-style art
Use a wider result for a desktop terminal, README file, or large monospace canvas.
Convert the uploaded image into detailed terminal-style ASCII art.
Return only plain-text art with no Markdown formatting.
Use a width of 110 characters and this shading ramp:
$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~i!lI;:,"^`'.
Keep the main subject recognizable. Simplify the background but preserve the direction of light and the strongest textures.
The extended character ramp gives Gemini more tonal choices, but it can look noisy at small sizes. Use it only when you have room to display the result in a monospaced font.
Retro computer-printout style
Create ASCII art from the uploaded image in the style of an old monochrome computer printout.
Return only the ASCII art as plain text.
Use 72 characters per line.
Use only these characters:
# * . and spaces
Use large blocks of shading, deliberate gaps, and a simple dark-to-light pattern. Keep the central subject easy to recognize from several feet away.
One-line banner from an image
For a simple icon, pet face, or object silhouette:
Use the uploaded image as reference and create a compact ASCII banner of its main subject.
Return only plain text.
Keep it under 12 lines tall and 48 characters wide.
Use only @, #, *, ., and spaces.
Prioritize a recognizable outline over realistic shading.
How to fix weak results
The first output is often a draft. Instead of uploading again, reply in the same conversation with a narrow correction.
If the subject is unrecognizable:
Make the silhouette more distinct and remove nearly all background detail. Keep the result at 70 characters wide.
If the face looks flat:
Increase contrast around the eyes, nose, jawline, and hairline. Preserve the existing width and return only the revised ASCII art.
If the output is too wide for your site or terminal:
Recreate the same ASCII art at 48 characters wide. Keep the most important silhouette and shadow shapes.
If Gemini adds commentary:
Return the artwork again with absolutely no explanation, labels, Markdown, or code fences. Plain-text ASCII art only.
If you want an image-like result but receive a text response you cannot easily copy, make the formatting rule shorter and repeat it at the end of the prompt. Clear constraints matter more than elaborate wording. For broader help writing constraint-based prompts, see Prompt Engineering with Gemini for Beginners.
Text ASCII art versus an ASCII-art image
There are two different results people mean by “ASCII art.”
Text ASCII art is made from keyboard characters. It can be pasted into a terminal, README, chat message, or text editor. Use the prompts in this guide when that is your goal.
An image that looks like ASCII art is a graphic made to resemble characters. Gemini Apps can generate and edit images, including edits to uploaded images. Google’s current image-editing documentation describes uploading an image and asking Gemini to edit it. If you want that graphic style rather than copyable characters, use this prompt:
Transform the uploaded photo into a high-contrast black-and-white poster made entirely of visible ASCII characters. Keep the main subject recognizable. Make the characters form the shadows and highlights, with a dark background and bright text. Create this as an image, not as plain-text output.
Use the text route for functional character art. Use the image-editing route when the final piece is for a social post, thumbnail, or design mockup.
FAQ
Can Gemini turn any photo into ASCII art?
It can use an uploaded image as prompt context, but photos with one clear subject and strong contrast generally give you more readable ASCII art. Crowded scenes need stronger instructions to simplify the background.
What width should I request?
Start at 70 characters. Try 45 to 60 for chat posts and narrow web areas, or 90 to 110 for a terminal or larger monospace display.
Why does the ASCII art look distorted after I paste it?
ASCII art needs a monospaced font, where every character has the same width. Paste it into a code block, terminal, plain-text editor, or an HTML element styled with a monospace font.
Can I use emojis instead of ASCII characters?
Yes, but the result is emoji art rather than traditional ASCII art. Ask Gemini to use a short list of emojis, specify a width, and request plain-text output only.