ASCII Art Generator
Pricing
Pay per event
ASCII Art Generator
Convert text to ASCII art using 328 figlet fonts. Batch mode, adjustable width, horizontal/vertical layouts. Zero proxy — pure computation. Results in seconds.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Convert any text to ASCII art using 200+ figlet fonts — batch mode, adjustable width, and horizontal/vertical layout control. Zero proxy, pure computation. Results delivered to the Apify dataset in seconds.
Try it directly on Apify Store — no sign-up required to start.
What does ASCII Art Generator do?
ASCII Art Generator takes one or more text strings and converts them into figlet-style ASCII art — large, stylized characters made entirely of printable ASCII characters. Choose from 328 built-in fonts including classics like Standard, Big, Slant, Banner, Block, and hundreds of specialty styles.
This actor is zero-proxy and zero-browser — it runs as pure Node.js computation, so every run is fast, cheap, and reliable. There are no websites to scrape, no rate limits to hit, and no anti-bot challenges to worry about.
You can generate a single piece of ASCII art in under a second, or batch-convert hundreds of strings in a single run.
Who is ASCII Art Generator for?
Developers and DevOps engineers who want to add ASCII art headers to terminal scripts, CLI tools, startup banners, or README files. Instead of installing and running figlet locally, they call this actor via API and embed the result directly.
Content creators and marketers looking for eye-catching text styles for social media posts, Discord announcements, Slack messages, or newsletter headers. ASCII art adds personality to plain-text communication.
Automation builders who use Make, Zapier, or n8n and need dynamic ASCII art generated as part of a workflow — e.g., auto-generating a weekly "STATUS REPORT" banner or personalizing messages with a user's name in large ASCII letters.
Game developers and interactive fiction authors who need styled title screens, map labels, or in-game text art for terminal-based or retro-styled projects.
Why use ASCII Art Generator?
- 🚀 Instant results — pure computation, no browser, no proxy. Most runs complete in under 2 seconds
- 🎨 328 figlet fonts built in — Standard, Big, Slant, Block, Banner, Doom, Gothic, and hundreds more
- 📦 Batch mode — convert many strings in a single run, each with its own font
- 📐 Layout control — adjust horizontal and vertical character spacing (default, fitted, full, smushing)
- 💰 Ultra-low cost — no proxy, no browser, just CPU. Pennies per batch
- 🔌 API-first — integrate with any programming language via the Apify API
- 🤖 MCP-ready — use directly from Claude Code, Claude Desktop, and other AI assistants
- 📋 Font discovery — run in
listFontsmode to get a full catalog of 328 available font names
What data can you extract?
Each converted text item produces a dataset record with:
| Field | Type | Description |
|---|---|---|
text | string | The original input text |
font | string | The figlet font used |
width | number | The line-wrap width setting |
horizontalLayout | string | Horizontal spacing mode |
verticalLayout | string | Vertical spacing mode |
asciiArt | string | The generated ASCII art (multi-line, newline-separated) |
lineCount | number | Number of non-empty lines in the output |
charWidth | number | Width of the widest line in the output |
success | boolean | Whether generation succeeded |
error | string | Error message if generation failed |
When run in font list mode (listFonts: true), each record contains only a font field — one per available font.
How much does it cost to generate ASCII art?
ASCII Art Generator uses Pay-Per-Event (PPE) pricing — you only pay for what you use.
| Event | FREE tier | BRONZE | SILVER | GOLD | PLATINUM | DIAMOND |
|---|---|---|---|---|---|---|
| Actor start (per run) | $0.0050 | $0.00475 | $0.00425 | $0.00375 | $0.0030 | $0.0025 |
| Per text generated | $0.0002 | $0.00018 | $0.00016 | $0.00013 | $0.0001 | $0.00008 |
Real-world cost examples:
- 10 texts (FREE tier): $0.005 start + 10 × $0.0002 = $0.007 total
- 100 texts (FREE tier): $0.005 + 100 × $0.0002 = $0.025 total
- 1,000 texts (GOLD tier): $0.00375 + 1,000 × $0.00013 = $0.133 total
Free plan estimate: With Apify's $5 free credits you can generate approximately 24,000 text items at the FREE tier rate.
Pricing is transparent — no surprises, no hidden fees. The listFonts mode only charges the $0.005 start event (no per-item charge), so font discovery is essentially free.
How to convert text to ASCII art
- Open ASCII Art Generator on Apify Store
- Click Try for free to open the actor in Apify Console
- In the Texts to convert field, add your text items as JSON:
[{ "text": "Hello World", "font": "Standard" },{ "text": "My Company", "font": "Big" }]
- Optionally choose a default font, line width, and layout settings
- Click Start — results appear in the Dataset tab in seconds
- Export results as JSON, CSV, or Excel from the dataset
To discover available fonts: Enable List all available fonts in the input, run the actor, and browse the 328 font names in the dataset. Copy the font name you want and use it in your next run.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
texts | array | — | List of text items to convert. Each can have text, font, width, horizontalLayout, verticalLayout |
listFonts | boolean | false | When true, outputs all 328 available font names instead of generating art |
font | string | Standard | Default font for all texts (overridden per item). Run listFonts to see all options |
width | integer | 80 | Max line width for text wrapping. 0 = no wrapping |
horizontalLayout | string | default | Horizontal character spacing: default, fitted, full, controlled smushing, universal smushing |
verticalLayout | string | default | Vertical spacing: default, fitted, full, controlled smushing, universal smushing |
Per-item overrides: Each entry in texts can override font, width, horizontalLayout, and verticalLayout independently of the global settings.
Output examples
Single text with Standard font
Input:
{ "text": "Hello World", "font": "Standard" }
Output record:
{"text": "Hello World","font": "Standard","width": 80,"horizontalLayout": "default","verticalLayout": "default","asciiArt": " _ _ _ _ __ __ _ _ \n | | | | ___| | | ___ \\ \\ / /__ _ __| | __| |\n | |_| |/ _ \\ | |/ _ \\ \\ \\ /\\ / / _ \\| '__| |/ _` |\n | _ | __/ | | (_) | \\ V V / (_) | | | | (_| |\n |_| |_|\\___|_|_|\\___/ \\_/\\_/ \\___/|_| |_|\\__,_|\n","lineCount": 5,"charWidth": 53,"success": true,"error": null}
Batch mode
Input:
[{ "text": "Hello", "font": "Big" },{ "text": "World", "font": "Slant" },{ "text": "2025", "font": "Banner3" }]
Each produces an independent dataset record. Invalid fonts or empty texts are skipped gracefully with an error message in the error field — the run continues.
Font list mode
Input:
{ "listFonts": true }
Output (328 records):
[{ "font": "1Row" },{ "font": "3-D" },{ "font": "3D Diagonal" },...{ "font": "Standard" },...{ "font": "Whimsy" }]
Tips for best results
- 🔍 Discover fonts first — run with
listFonts: trueto browse all 328 available fonts. Copy the exact name (case-sensitive) for use in your texts array. - 📐 Width matters — long texts with small width values wrap onto multiple lines. Set
width: 0to disable wrapping and get the full text on one line (may be very wide). - ✂️ Use
fittedlayout for tighter output — removes excess whitespace between characters. Useful for compact banners. - 🧪 Test layouts —
horizontal smushingmodes merge adjacent characters in interesting ways. Some fonts look better with smushing, others look garbled. Test before batch-converting. - 💡 Batch everything — there's a per-run start cost, so combine all your texts into one run instead of running the actor separately for each text.
- 📋 Copy the
asciiArtfield directly — it uses\nnewline characters. In most terminals and text editors, these render correctly. In JSON output, replace\nwith actual newlines if needed. - 🎨 Popular fonts for various use cases:
- Banners/headers:
Big,Banner,Banner3,Block - Modern style:
Slant,3D Diagonal,Doom - Minimal:
Standard,Small,Mini - Decorative:
Gothic,Whimsy,Graffiti
- Banners/headers:
Integrations
ASCII Art Generator → Discord/Slack announcements: Use Make or Zapier to trigger a run when a new product version is released. The actor converts the version number and release name to ASCII art, which is posted as a styled announcement in your team channel.
ASCII Art Generator → GitHub README auto-update: Schedule a weekly run that generates a fresh ASCII art header for your project's README, then use the GitHub API to commit the updated file automatically.
ASCII Art Generator → CLI banner files: Use the Apify API in your CI/CD pipeline to generate startup banners for your tools. Store the asciiArt field as a static file that gets embedded in your CLI application at build time.
ASCII Art Generator → Email newsletters: Generate personalized ASCII art greetings (e.g., subscriber name in Slant font) via the API and embed them in plain-text email newsletters for a retro, personal feel.
Scheduled font exploration: Set up a scheduled run in listFonts mode monthly to stay current with any new fonts added to the figlet library. Output goes to a Google Sheet via Apify's Google Sheets integration.
Using the Apify API
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('automation-lab/ascii-art-generator').call({texts: [{ text: 'Hello World', font: 'Standard' },{ text: 'My App', font: 'Big' },],width: 80,});const { items } = await client.dataset(run.defaultDatasetId).listItems();for (const item of items) {if (item.success) {console.log(`Font: ${item.font}`);console.log(item.asciiArt);}}
Python
from apify_client import ApifyClientclient = ApifyClient(token='YOUR_API_TOKEN')run = client.actor('automation-lab/ascii-art-generator').call(run_input={'texts': [{'text': 'Hello World', 'font': 'Standard'},{'text': 'My App', 'font': 'Big'},],'width': 80,})for item in client.dataset(run['defaultDatasetId']).iterate_items():if item['success']:print(f"Font: {item['font']}")print(item['asciiArt'])
cURL
# Start the actor runcurl -X POST \"https://api.apify.com/v2/acts/automation-lab~ascii-art-generator/runs?token=YOUR_API_TOKEN" \-H "Content-Type: application/json" \-d '{"texts": [{ "text": "Hello World", "font": "Standard" },{ "text": "My App", "font": "Big" }],"width": 80}'# Fetch results (replace DATASET_ID with the ID from the run response)curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_API_TOKEN"
Use with AI agents via MCP
ASCII Art Generator is available as a tool for AI assistants that support the Model Context Protocol (MCP).
Add the Apify MCP server to your AI client — this gives you access to all Apify actors, including this one:
Setup for Claude Code
$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/ascii-art-generator"
Setup for Claude Desktop, Cursor, or VS Code
Add this to your MCP config file:
{"mcpServers": {"apify": {"type": "http","url": "https://mcp.apify.com?tools=automation-lab/ascii-art-generator","headers": {"Authorization": "Bearer YOUR_APIFY_TOKEN"}}}}
Example prompts for AI assistants
- "Generate ASCII art of the text 'Hello World' using the Big font"
- "List all available figlet fonts so I can choose one for my project"
- "Convert these 5 company names to ASCII art using the Slant font: Apify, Google, Apple, Meta, Amazon"
Is it legal to generate ASCII art?
ASCII art generation is entirely legal — this actor performs local computation only and does not scrape any website. The figlet font library is open-source (MIT/BSD licensed). The text you provide is yours to use as you see fit.
This actor does not interact with any external service, collect personal data, or store any information beyond your run's dataset. It complies with all standard data processing regulations.
For more information on responsible use of Apify actors, see the Apify Terms of Service.
FAQ
How many fonts are available?
The actor includes 328 figlet fonts built into the figlet npm package. Run the actor with listFonts: true to get the complete list in the dataset. All fonts are loaded locally — no external downloads required.
How fast is each run? Most runs complete in under 2 seconds. Even large batches of 1,000 texts typically finish in under 10 seconds. The actor is pure computation — there's no network I/O beyond the Apify platform itself.
How much does it cost for a batch of 500 texts? At the FREE tier: $0.005 start + 500 × $0.0002 = $0.105. At GOLD tier it's about $0.069. Costs drop significantly with higher subscription tiers.
Why does my font name not work?
Font names are case-sensitive. Use listFonts: true to see the exact names. For example, it's "3D Diagonal" (with capital D and space), not "3d-diagonal". The error message in the dataset will tell you if the font file was not found.
Why does the ASCII art look different from what I expected?
Some fonts look very different depending on layout settings. Try changing horizontalLayout from "default" to "fitted" to reduce spacing, or experiment with smushing modes. Short texts may also produce unexpected results with some fonts designed for longer strings.
Can I use the actor for non-English text or special characters?
Most figlet fonts support only printable ASCII characters (standard English alphabet, numbers, and some punctuation). Non-ASCII characters (accented letters, CJK, emoji) will typically produce empty or garbled output. The error field will indicate if the output was empty.
What happens if a font doesn't exist?
The actor logs an error for that item, writes the error message to the error field in the dataset record, and continues processing the remaining texts. A run with some failures still succeeds overall.
Other automation-lab tools
Looking for more text and content processing tools?
- Barcode Generator — Generate EAN-13, Code128, QR codes and 10+ barcode formats as PNG or SVG
- Fake Test Data Generator — Generate realistic fake data for testing: names, emails, addresses, phone numbers, and more
- Curl to Code Converter — Convert cURL commands to Python, Node.js, PHP, Go, and other languages instantly
- Unicode Text Inspector — Analyze and decode Unicode text: code points, categories, scripts, and encoding details
- Wayback Machine CDX Extractor — Query the Wayback Machine CDX API to find historical snapshots of any URL