What Are Combining Characters in Unicode?
By Maya Chen, lettering designer and type educator · Checked by Jordan Hale · · How we review content
Most Unicode characters take up space on their own: a letter sits on the baseline, a space moves the cursor, a digit stands alone. A combining character is different. It has no width and no position of its own, and instead attaches itself to the character in front of it. Type a, then the combining grave accent U+0300, and the app draws à. The accent is not a separate glyph in a row; it is stacked on the letter.
The main block: U+0300 to U+036F
The Combining Diacritical Marks block holds 112 characters, from U+0300 to U+036F. They include everyday accents and unusual extras:
| Code point | Name | Looks like (on a) |
|---|---|---|
| U+0300 | Combining grave accent | à |
| U+0301 | Combining acute accent | á |
| U+0304 | Combining macron | ā |
| U+0323 | Combining dot below | ạ |
| U+0305 | Combining overline | a̅ |
| U+0332 | Combining low line | a̲ |
| U+0336 | Combining long stroke overlay | a̶ |
| U+0338 | Combining long solidus overlay | a̸ |
Beyond that block there are others, such as Combining Diacritical Marks Extended and Supplement, marks for symbols (including the enclosing keycap, U+20E3), and many marks inside individual scripts such as Hebrew vowel points and Devanagari signs.
Text effects from combining marks
Several of the styles in the generators on this site are made by putting one combining mark after every letter:
- Strikethrough text uses U+0336 for a line through each letter.
- Underline and double underline use U+0332 and U+0333, and overline uses U+0305.
- Slashed text uses U+0338, and wavy strike uses U+0334, the combining tilde overlay.
- Cross-above text uses U+033D, and the arrow-below style uses U+0362.
The glitch text generator goes further: it piles up many different marks above and below each letter, which is what people call zalgo text. Because there is no limit in the standard on how many marks a character can have, the pile can be as tall as the generator makes it.
These effects are plain text, so they copy and paste into a username, bio or caption without any formatting support. The price is that the app and its font decide how it looks.
Rendering and its problems
An app draws combining marks using the font’s own rules, positioning each above or below its base letter according to the mark’s combining class. The results vary:
- Overlay marks can drift. A strikethrough that lines up perfectly in one font may sit too high or low in another, or look broken between letters.
- Stacks can overflow. Marks above a letter move up with each additional mark. Without clipping, a tall stack overlaps the line above.
- Missing glyphs show boxes. If the font has no glyph for a rare mark, you will see a box or dotted circle.
- Monospace can break. A monospace font keeps each cell fixed, but a mark that is wider than the cell makes the layout look off.
Combining marks and normalization
Unicode often provides a precomposed character as well. é can be one code point (U+00E9) or e followed by U+0301. The two look identical, but they are different strings, so a search can miss one or the other. Normalisation converts between them: NFC composes where it can, NFD splits everything into base letter plus marks. Many combinations have no precomposed form at all, such as q with a diaeresis, and those can only be written with a combining mark. See diacritic for the linguistic side.
In lettering
Hand letterers use the same logic: an accent belongs to its letter, so draw it as part of the shape, not an afterthought, to keep spacing even. A struck-out word in a design should have its line near the middle of the x-height, as fonts place it.
Accessibility and counting
Screen readers handle combining marks inconsistently. Some skip them, and some speak each one. A word with a stroke on every letter may be read as the plain word, as a string of mark names, or not at all. That is why we advise not using combining-mark styles for anything important. The how fancy text works guide covers this, and the unstyle text tool strips the marks from copied text so you can restore a clean version.
Combining marks also affect length. Counting code points, a letter and its mark are two characters, while a user sees one. Platforms count differently: some count by code point, some by grapheme cluster, and some by a weighted scheme. If a post fails because of length, a heavy use of marks is a likely cause.
Common confusions
- A combining character is not a letter. It has no meaning alone, and without a base it shows on a dotted circle.
- Combining is not the same as ligature. A ligature merges two letters into one shape; a combining mark adds to a letter.
- Zalgo is not a font. It is ordinary letters plus many marks.
Frequently asked questions
What is the Unicode range for combining characters?
How does strikethrough text work in Unicode?
Why does zalgo text overflow its line?
Do combining characters count in character limits?
Related terms
- What Is a Diacritic?A diacritic is a mark added to a letter to change its sound, stress or meaning, such as the accent in é, the tilde in ñ or the umlaut in ü. In Unicode, many diacritics are combining characters that attach to the letter before them.
- What Is a Glyph in Fonts?A glyph is a specific visual shape stored in a font, such as one drawing of the letter a. A character is the abstract unit of text, and a code point is the number Unicode assigns to it; fonts map characters to glyphs.
- What Is a Ligature in Typography?A ligature is a single glyph that replaces two or more letters that would otherwise collide, such as fi, fl or ffi. Standard ligatures are applied automatically by the font; discretionary ones are decorative and optional.
- What Is a Monospace Font?A monospace font is a typeface in which every character occupies the same horizontal width, so an i takes as much space as an m. Typewriters, terminals and code editors use them to keep text aligned in columns.
- Typography & Lettering GlossaryThe Typography & Lettering Glossary defines twenty terms that type designers and letterers use every day, from kerning and x-height to serif, ligature and blackletter. Each entry gives a precise definition, then shows what the idea means for hand lettering and for the styled Unicode text our generators produce.
- What Is an Ampersand? Origin of the & SymbolThe ampersand is the symbol & meaning "and". It began as a handwritten ligature of the Latin word et, its name comes from the old schoolroom phrase "and per se and", and many typefaces draw it in strikingly elaborate ways.