Smart ↔ Straight Quote Converter
Text
Turns `"plain"` and `'plain'` quotes into proper typographic ones (`“fancy”`, `‘fancy’`) — or the reverse, to make text safe to paste into code, JSON, or CLI commands. Apostrophes inside words (`it's`) are detected and emitted as the closing single quote, not an opening one. Style follows the chosen language: English curly, French guillemets `« »`, or German low-9 `„ “`.
“Knowledge is power” — Bacon’s old line, and it’s still true today. She said ‘hi’ to me.
The apostrophe rule (`it's`, `world's`) is heuristic — review the output if your text has unusual punctuation.
How to use
- Pick a direction: To Smart (publishing) or To Straight (code / data).
- When going to Smart, choose the language so the right style is used.
- Paste text in the input — the output updates as you type.
Frequently asked questions
- Why are smart quotes a problem in code?
- JavaScript, Python, JSON, shell, and SQL all expect ASCII `"` and `'`. When you copy text from Word, Notion, or many CMSes it brings curly quotes along, which then break string literals with a confusing parse error. Round-tripping through this tool fixes it.
- How does it know an apostrophe vs. a closing single quote?
- When a `'` sits between two letters (`don't`, `world's`), it's almost always an apostrophe and gets the closing single quote glyph. Outside that pattern, the tool alternates open / close like a regular quotation.
- What's special about French and German styles?
- French uses guillemets with non-breaking inner spaces (`« hello »`). German uses low-9 open and high-9 close (`„hello“`). Both are correctly emitted; the straight-quote inverse strips the extra spacing back out.
Related tools
URL Slug Generator
Turn any text into a clean URL slug — strip accents, choose a separator, set a max length.
Markdown Table Generator
Paste CSV, TSV, or pipe-delimited data and get a properly aligned GitHub-flavored Markdown table.
Text Diff Viewer
Compare two pieces of text and see line-by-line or word-by-word additions and removals.
Lorem Ipsum Generator
Generate placeholder text by paragraphs, sentences, or words.
Case Converter
Convert text between UPPER, lower, Title, camelCase, snake_case and more.
Character & Word Counter
Count characters, words, sentences, lines, and bytes in real time.