Quotation Mark Symbols Complete Guide
Unicode defines typographic quotation marks — curly quotes — for dozens of languages, including single and double guillemets, low-9 quotation marks, and various right and left quotation marks. This guide lists all Unicode quotation mark characters with their code points, language contexts, and keyboard shortcuts.
Quotation marks are among the most linguistically varied characters in Unicode. English uses curly double quotes " ", French uses guillemets << >>, German opens with low-9 marks ,, and closes with high marks '', and Japanese uses corner brackets. The ASCII typewriter gave us a single ambiguous character — the straight quote — but Unicode restores the typographic richness that centuries of printing established. This guide catalogs every quotation mark character in Unicode, maps out which languages use which marks, and provides practical guidance for developers working with multilingual text.
Quick Copy-Paste Table
| Symbol | Name | Code Point | HTML Entity | Common Usage |
|---|---|---|---|---|
| " | Left Double Quotation Mark | U+201C | “ |
English opening |
| " | Right Double Quotation Mark | U+201D | ” |
English closing |
| ' | Left Single Quotation Mark | U+2018 | ‘ |
English single open |
| ' | Right Single Quotation Mark | U+2019 | ’ |
English single close / apostrophe |
| « | Left-Pointing Double Angle Quotation Mark | U+00AB | « |
French / Russian opening |
| » | Right-Pointing Double Angle Quotation Mark | U+00BB | » |
French / Russian closing |
| ‹ | Single Left-Pointing Angle Quotation Mark | U+2039 | ‹ |
French single open |
| › | Single Right-Pointing Angle Quotation Mark | U+203A | › |
French single close |
| „ | Double Low-9 Quotation Mark | U+201E | „ |
German / Polish opening |
| ‚ | Single Low-9 Quotation Mark | U+201A | ‚ |
German / Czech single open |
| " | Quotation Mark (straight) | U+0022 | " |
ASCII / programming |
| ' | Apostrophe (straight) | U+0027 | ' |
ASCII / programming |
| ‟ | Double High-Reversed-9 Quotation Mark | U+201F | ‟ |
Rare / historical |
| ‛ | Single High-Reversed-9 Quotation Mark | U+201B | ‛ |
Rare / historical |
| 「 | Left Corner Bracket | U+300C | 「 |
Japanese / Chinese |
| 」 | Right Corner Bracket | U+300D | 」 |
Japanese / Chinese |
| 『 | Left White Corner Bracket | U+300E | 『 |
Japanese / Chinese (titles) |
| 』 | Right White Corner Bracket | U+300F | 』 |
Japanese / Chinese (titles) |
Language-Specific Quotation Conventions
Different languages have deeply entrenched conventions for quotation marks. Using the wrong style in a localized application is a typographic error equivalent to misspelling:
| Language | Primary Quotes | Nested Quotes | Example |
|---|---|---|---|
| English (US) | "..." | '...' | "She said 'hello'" |
| English (UK) | '...' | "..." | 'She said "hello"' |
| French | << ... >> | < ... > | << Elle a dit < bonjour > >> |
| German | ,,..." | ,...' | ,,Sie sagte ,hallo'" |
| Polish | ,,..." | << ... >> | ,,Powiedziala < |
| Russian | <<...>> | ,,..." | < |
| Swedish | "..." | '...' | "Hon sa 'hej'" |
| Danish | >>...<< | >...< | >>Hun sagde >hej<< |
| Japanese | [...] | [[...]] | [Kanojo wa [[konnichiwa]] to itta] |
| Chinese (Simplified) | "..." | '...' | "Ta shuo 'ni hao'" |
| Finnish | "..." | '...' | "Han sanoi 'hei'" |
| Hungarian | ,,..." | >>...<< | ,,Azt mondta >>szia<<" |
Note: The table above uses ASCII approximations for readability. In actual text, use the proper Unicode characters from the copy-paste table.
French Guillemets
French quotation marks «...» (guillemets) are distinctive because they include a non-breaking space between the guillemet and the quoted text. This is a strict typographic rule in French:
<!-- Correct French quotation -->
<p>Il a dit « bonjour ».</p>
<!-- Using CSS for automatic spacing -->
<style>
q:lang(fr) { quotes: "\00AB\00A0" "\00A0\00BB" "\2039\00A0" "\00A0\203A"; }
</style>
<p lang="fr"><q>Bonjour</q></p>
The non-breaking spaces (U+00A0) prevent line breaks between the guillemet and the first/last word of the quotation.
German Low-9 Quotes
German opens with a low quotation mark „ (U+201E) that sits on the baseline, and closes with a standard left double quotation mark " (U+201C) — which looks like the opening mark in English. This is a common source of confusion for developers:
| Context | Opening | Closing |
|---|---|---|
| English | " (U+201C) | " (U+201D) |
| German | „ (U+201E) | " (U+201C) |
German uses what English considers the "opening" quote as its closing quote.
CJK Corner Brackets
Japanese and Traditional Chinese use corner brackets 「...」 for primary quotation and double corner brackets 『...』 for nested quotation or titles. These characters are full-width and part of the CJK Symbols and Punctuation block (U+3000–U+303F):
<p lang="ja">彼女は「こんにちは」と言った。</p>
<p lang="ja">『源氏物語』は日本の古典文学です。</p>
Straight vs Curly Quotes
The ASCII character set provides only two quote characters: " (U+0022, QUOTATION
MARK) and ' (U+0027, APOSTROPHE). These are "straight" or "typewriter" quotes —
vertically neutral characters that do not distinguish between opening and closing.
Typographic ("curly" or "smart") quotes distinguish direction:
| Straight | Curly Open | Curly Close | Type |
|---|---|---|---|
| " (U+0022) | " (U+201C) | " (U+201D) | Double |
| ' (U+0027) | ' (U+2018) | ' (U+2019) | Single |
When to Use Straight Quotes
- Source code: Programming languages use straight quotes as string delimiters. Curly quotes in code will cause syntax errors.
- Data formats: JSON, CSV, XML attributes all require straight quotes.
- URLs: Query parameters and path segments use straight quotes.
When to Use Curly Quotes
- Prose and articles: Published text should always use curly quotes.
- UI labels: App interfaces in natural language should use typographic quotes.
- Email: Professional correspondence benefits from proper quotation marks.
The Apostrophe Problem
The right single quotation mark ' (U+2019) doubles as the typographic apostrophe in English. This dual role creates a well-known problem: in the word "don't", the apostrophe should be U+2019, but many systems insert U+0027 instead. Meanwhile, at the start of abbreviated years like '90s, smart-quote algorithms often incorrectly insert the left single quote ' (U+2018) because they assume any quote after a space is an opening quote.
# Common smart-quote mistake
text = "'90s music"
# Naive algorithm produces: \u2018 90s music (wrong - opening quote)
# Correct result: \u2019 90s music (apostrophe / closing quote)
Unicode Technical Standard #39 and the CLDR project provide locale-aware quotation mark data that helps resolve these ambiguities programmatically.
CSS Quotes Property
CSS provides the quotes property for controlling quotation marks in the <q> element:
/* English */
q:lang(en) { quotes: "\201C" "\201D" "\2018" "\2019"; }
/* French (with non-breaking spaces) */
q:lang(fr) { quotes: "\00AB\00A0" "\00A0\00BB" "\2039\00A0" "\00A0\203A"; }
/* German */
q:lang(de) { quotes: "\201E" "\201C" "\201A" "\2018"; }
/* Japanese */
q:lang(ja) { quotes: "\300C" "\300D" "\300E" "\300F"; }
The <q> element automatically inserts the appropriate quotation marks based on the
document's language, making it the semantic choice for inline quotations:
<p lang="en">She said <q>hello</q>.</p>
<p lang="fr">Elle a dit <q>bonjour</q>.</p>
<p lang="de">Sie sagte <q>hallo</q>.</p>
Prime Marks vs Quotation Marks
Another common confusion: prime marks (for feet/inches and minutes/seconds) are distinct from both straight quotes and curly quotes:
| Character | Code Point | Name | Usage |
|---|---|---|---|
| ′ | U+2032 | Prime | Minutes of arc, feet |
| ″ | U+2033 | Double Prime | Seconds of arc, inches |
| ‴ | U+2034 | Triple Prime | Rarely used |
| " | U+0022 | Quotation Mark | ASCII straight quote |
| " " | U+201C/D | Curly Quotes | Typographic quotation |
The correct way to write measurements is with prime marks: 5′10″ (five feet ten inches), not 5'10" (straight quotes) or 5'10" (curly quotes).
Key Takeaways
- Unicode defines 20+ distinct quotation mark characters covering the typographic traditions of every major language.
- Straight quotes (" ') are for code and data; curly quotes (" " ' ') are for prose.
- Each language has its own quotation convention — French uses «guillemets», German uses „low-9 opening marks", Japanese uses 「corner brackets」.
- The right single quotation mark ' (U+2019) doubles as the apostrophe, creating challenges for smart-quote algorithms in words like 'twas and '90s.
- Use the CSS
quotesproperty with the<q>element for automatic locale-aware quotation marks in HTML. - Prime marks (′ ″) for measurements are distinct from all quotation mark characters.
Symbol Reference のその他のガイド
Unicode contains hundreds of arrow symbols spanning simple directional arrows, double arrows, …
Unicode provides multiple check mark and tick symbols ranging from the classic …
Unicode includes a rich collection of star shapes — from the simple …
Unicode contains dozens of heart symbols including the classic ♥, black and …
Unicode's Currency Symbols block and surrounding areas contain dedicated characters for over …
Unicode has dedicated blocks for mathematical operators, arrows, letterlike symbols, and alphanumeric …
Beyond the ASCII parentheses and square brackets, Unicode includes angle brackets, curly …
Unicode offers a wide variety of bullet point characters beyond the standard …
Unicode's Box Drawing block contains 128 characters for drawing lines, corners, intersections, …
Unicode includes musical note symbols such as ♩♪♫♬ in the Miscellaneous Symbols …
Unicode includes precomposed fraction characters for common fractions like ½ ¼ ¾ …
Unicode provides precomposed superscript and subscript digits and letters — such as …
Unicode contains dozens of circle symbols including filled circles, outlined circles, circles …
Unicode includes filled squares, outlined squares, small squares, medium squares, dashed squares, …
Unicode provides a comprehensive set of triangle symbols in all orientations — …
Unicode includes filled and outline diamond shapes, lozenge characters, and playing card …
Unicode provides various cross and X mark characters including the heavy ballot …
The hyphen-minus on your keyboard is just one of Unicode's many dash …
Unicode includes dedicated characters for the copyright symbol ©, registered trademark ®, …
The degree symbol ° (U+00B0) and dedicated Celsius ℃ and Fahrenheit ℉ …
Unicode's Enclosed Alphanumerics block provides circled numbers ①②③, parenthesized numbers ⑴⑵⑶, and …
Unicode includes a Number Forms block with precomposed Roman numeral characters such …
Greek letters like α β γ δ π Σ Ω are widely …
The Unicode Dingbats block (U+2700–U+27BF) contains 192 decorative symbols originally from the …
Unicode includes a Playing Cards block with characters for all 52 standard …
Unicode provides characters for all six chess piece types in both white …
Unicode's Miscellaneous Symbols block includes the 12 zodiac signs ♈♉♊♋♌♍♎♏♐♑♒♓, planetary symbols, …
Unicode's Braille Patterns block (U+2800–U+28FF) encodes all 256 possible combinations of the …
Unicode's Geometric Shapes block contains 96 characters covering circles, squares, triangles, diamonds, …
The Unicode Letterlike Symbols block contains mathematical and technical symbols derived from …
Unicode's Miscellaneous Technical block contains symbols from computing, electronics, and engineering, including …
Diacritics are accent marks and other marks that attach to letters to …
Unicode defines dozens of invisible characters beyond the ordinary space, including zero-width …
Unicode includes warning and hazard symbols such as the universal caution ⚠ …
Unicode's Miscellaneous Symbols block includes sun ☀, cloud ☁, rain ☂, snow …
Unicode includes symbols for many of the world's major religions including the …
Unicode includes the traditional male ♂ and female ♀ symbols from astronomy, …
Apple's macOS uses Unicode characters for keyboard modifier keys such as ⌘ …
Unicode symbols like ▶ ◀ ► ★ ✦ ⚡ ✈ and hundreds …