ANSI Escape Stripper
Remove ANSI escape codes — terminal color and style codes, cursor-movement sequences, and OSC sequences — from pasted terminal output or CI logs, leaving plain text.
Input
Output
Stripped Output
Stats
| Metric | Value |
|---|---|
| No data yet | |
Guides
What does this tool do?
Terminal programs decorate their output with ANSI escape codes — short, invisible-looking control sequences that tell a terminal emulator to change text color, apply bold/underline/italic formatting, move the cursor, or set a window title. They're what makes ls --color, git diff, test runners and CI build logs look colorful in a real terminal.
The problem: when you copy that output out of a terminal and paste it somewhere that doesn't understand those codes — a bug report, a support ticket, a Slack message, a plain-text file — you get garbage like ^[[31mError^[[0m or a wall of unreadable \x1b[...m noise instead of clean text. This tool strips every ANSI/VT100 escape sequence out of pasted text, leaving only the readable content behind.
What gets removed
- CSI (Control Sequence Introducer) sequences —
ESC [ ... letter, the most common kind: text color (\x1b[31m), bold/underline (\x1b[1m), cursor movement (\x1b[2A), screen/line clearing (\x1b[2J,\x1b[K), and private-mode toggles (\x1b[?25h). - OSC (Operating System Command) sequences —
ESC ] ... BELorESC ] ... ESC \, used to set a terminal window title or emit clickable hyperlinks. - Simple two-character escapes —
ESCfollowed by a single letter, such as save/restore cursor position.
Everything else — the actual text, whitespace, and line breaks — passes through untouched.
How to use it
- Paste terminal output, a CI log, or any text containing ANSI codes into the input box — or drop a
.log/.txtfile onto the uploader; its contents load straight into the box. - The clean, plain-text result appears instantly in the output box as you type.
- The Stats table shows how many escape sequences and how many characters were removed, so you can sanity-check that stripping actually did something.
- Copy the result or download it as a
.txtfile with the buttons on the output card.
FAQ
Why does copy-pasted terminal output look like ^[[0;32m or \x1b[31m instead of colors?
Because the text you pasted into isn't a terminal emulator — it's a plain-text field, so it can't interpret the escape codes and just shows their raw bytes (or a caret-notation representation of them) instead of applying color.
Does this tool render the colors instead of stripping them?
No — it only strips escape codes down to plain text. If you need a colorized preview instead of clean text, you'll want a terminal-to-HTML renderer; this tool is purpose-built for producing clean, portable plain text.
Will it damage text that isn't ANSI-coded?
No. If the input contains no escape sequences, the output is identical to the input (the stats table will show zero sequences and zero characters removed).
Does it handle escaped representations like \x1b or \033 typed as literal backslash text (not real escape bytes)?
No — it matches real ANSI escape bytes (character code 27), which is what you get from an actual copy-paste out of a terminal. Literal text like the four characters \, x, 1, b typed into a script isn't an escape sequence and is left as-is.
Privacy
All processing happens locally in your browser — pasted text and uploaded files are never sent to a server.