Text Tools
Smart Quotes Converter
Convert curly quotes, en and em dashes, and ellipsis to plain ASCII, or back to typographic punctuation. Toggle each category, locale-aware.
Direction
Pick which way to convert. Toggles below let you keep specific characters untouched.
What gets converted
Each category is independent. Turn off any group you want to keep untouched.
Smart characters detected
Counts in the original input. The output reflects only the categories you have enabled above.
Double quotes
2
2 replaced
Single quotes
1
1 replaced
Dashes
1
1 replaced
Ellipsis
1
1 replaced
Primes
0
0 replaced
Special spaces and bullets
14
14 replaced
Character reference
The full list of characters this tool understands, with their Unicode codepoints and ASCII equivalents.
| Character | Codepoint | Name | ASCII |
|---|---|---|---|
| “ | U+201C | Left double quotation mark | " |
| ” | U+201D | Right double quotation mark | " |
| „ | U+201E | Double low-9 quotation mark | " |
| ‟ | U+201F | Double high-reversed-9 quotation mark | " |
| « | U+00AB | Left-pointing double guillemet | " |
| » | U+00BB | Right-pointing double guillemet | " |
| ‘ | U+2018 | Left single quotation mark | ' |
| ’ | U+2019 | Right single quotation mark / curly apostrophe | ' |
| ‚ | U+201A | Single low-9 quotation mark | ' |
| ‛ | U+201B | Single high-reversed-9 quotation mark | ' |
| ‹ | U+2039 | Single left-pointing guillemet | ' |
| › | U+203A | Single right-pointing guillemet | ' |
| – | U+2013 | En dash | - |
| — | U+2014 | Em dash | - |
| ― | U+2015 | Horizontal bar | - |
| − | U+2212 | Minus sign | - |
| … | U+2026 | Horizontal ellipsis | ... |
| ′ | U+2032 | Prime | ' |
| ″ | U+2033 | Double prime | " |
| ‵ | U+2035 | Reversed prime | ' |
| ‶ | U+2036 | Reversed double prime | " |
| U+0020 | Non-breaking space | space | |
| U+0020 | Thin space | space | |
| U+0020 | Narrow non-breaking space | space | |
| | U+200B | Zero-width space | (removed) |
| · | U+00B7 | Middle dot | . |
| • | U+2022 | Bullet | * |
How to use
- Pick a direction. Smart to straight flattens typographic punctuation to plain ASCII (the common case after a Word or Google Docs paste). Straight to smart produces proper typographic quotes and dashes for publishing.
- Paste your text into the Input panel or click a sample like Word paste, JSON-breaking text, or Apostrophes to load a realistic example.
- Use the category toggles to keep or convert each kind: double quotes, single quotes, dashes, ellipsis, primes, and special spaces. Each toggle is independent, so you can keep the long dash while flattening only the quotation marks if that is what your downstream format expects.
- For straight to smart, pick a locale to control opening and closing quote pairs (English, German, French guillemets, Japanese, or CJK), and decide whether to expand double or triple dashes and three dots automatically.
- Click Copy output to copy the result, or Replace input with output to chain multiple conversions in the same session.
About this tool
Smart Quotes Converter rewrites typographic punctuation as plain ASCII (the direction most people need) or builds proper typographic punctuation from plain ASCII (the direction writers need before publishing). Smart to straight is the common job: anyone who pastes from Microsoft Word, Google Docs, Apple Notes, Pages, Outlook, iMessage, Slack, Notion, or a content management system ends up with curly opening and closing quotes (left and right double quotation mark, left and right single quotation mark), curly apostrophes inside contractions, en and en-bar dashes, the horizontal ellipsis, primes and double primes (the inch and foot marks that look like quotes but are different codepoints), the low-9 quotation marks used in German typography, French and Swiss guillemets, non-breaking and thin spaces, zero-width spaces, middle dots, and bullet glyphs. All of these break JSON.parse, fail CSV imports, throw off SQL string literals, confuse regex patterns, produce duplicate values in deduplication, and render incorrectly in plain-text contexts like cron jobs and shell scripts. This tool walks the input codepoint by codepoint, replaces each smart character with its ASCII counterpart, and shows the count of each category that was changed. Independent category toggles let you keep, for example, the long dash while flattening only the quotation marks. Straight to smart is the publishing direction: writers preparing copy for a blog, book, magazine, or print landing page can enter plain ASCII (with double-dashes for en dashes, triple-dashes for the longer dash, and three dots for an ellipsis as is common in Markdown) and receive proper typographic punctuation with a context-aware opener/closer heuristic that decides whether each straight quote should become an opening or a closing curly quote. A locale selector picks the conventional opening and closing pair for English, German (low-9 + high), French guillemets, and Japanese / Chinese corner brackets, so the result matches the typography of your target language. Detection counts always show the smart characters actually present in the input, even when their category is disabled, so you know exactly what is hiding in your paste. The character reference table at the bottom lists every codepoint the tool understands, its Unicode name, and its ASCII equivalent for quick reference. Useful for cleaning Word and Docs paste for code editors and JSON, prepping CSV columns before import, normalizing user-pasted content in databases, converting blog Markdown drafts to typeset HTML, fixing inch and foot dimension marks in product descriptions, normalizing German or French quotations, and removing the invisible zero-width spaces that survive copy-paste from rich-text apps. Conversion runs entirely on your device, so the drafts, quotes, and pasted content you process here never leave your browser.
Free to use. Works in your browser. No signup, no login.
Related tools
You may also like
Text Cleaner
Remove duplicate lines, blank lines, extra spaces, tabs, and invisible characters.
Open tool
TextFind and Replace
Find and replace text in plain or regex mode with live match highlighting.
Open tool
TextUnicode Character Inspector
Per-character breakdown with code points, UTF-8/UTF-16 bytes, and hidden character detection.
Open tool
DeveloperHTML Entity Encoder Decoder
Two-way HTML entity encoder and decoder with named, decimal, and hex modes.
Open tool
DeveloperLine Ending Converter
Convert between LF, CRLF, and CR line endings with detection, counts, and download.
Open tool
TextCase Converter
Convert text between six common cases at once.
Open tool