Zalgo Text Generator
Glitched, cursed, creeping text — with a separate control for each place the marks can go, a limit that keeps it short enough to post, and a cleaner that strips it all back off again.
0 characters. Nothing leaves your browser.
Start from
characters
Type something above to see it glitch.
"He comes" at every preset
The same two words through each preset, generated when this page was built. The plain phrase is 8 characters; watch what happens to that number.
- Whisper H̡ͨę̊ c̘͗o̱̔ṃͯe̪͂š̪ 22 characters for 8 visible; tallest stack 2 marks.
- Unsettled H̩̖̗̏̅e̤̦̲ͮ͆ͦ ç͖͐ͥ̍ǒ͙͚̦͂m̘̮̾͊ę̗͂̈s̲̺͊͗̓ 42 characters for 8 visible; tallest stack 6 marks.
- Corrupted H͚̼̲̦ͭ̇̒̕ė̡͚̘̮̉͗̕ ç̵̦̰͆͆͌̐ͦ͛ǫ̸̞͍͉̅ͮ̏ͪm̵̻̬͎ͥ̋͐e̴͔͙̮͈͆ͧ̀ş̷̙̫͚̉͗̊͊ 67 characters for 8 visible; tallest stack 10 marks.
- Rising H̝̅e̢͕̍̎ ć̨̤̝̊̉o̷̲̹̤̜͉̎͆ͮ̇̚m̷͙̬̬͉̣͇̐̾̇̒ͯ͋ę̨͕͇̼̱͖̒͌͛̋̋̍̚̕s̵̨̗̭͇̯͈͚̞ͫͤ͛̓̊͒͋͌ 76 characters for 8 visible; tallest stack 17 marks.
- Total H̷̨͔̲͍̣̫̼͔̜̿́ͯ̀̋͆̂ͭ̌̚̕ͅẹ̸̵̢̳͍̺͖̖̙̣̗̐ͩͫ̀̔͊̂̽̄̈ c͍̩̯͈͕͕̥͍̟̗ͦ̊ͬ̆̐ͤ̔ͪ̋̍̕̕ớ̧̧̛̥̘̦͇̥̯̤̤͋ͯ̐͌ͯ̀ͨ͑͋m̸̧͕͓̩͈͍̠̥͕̙͗̾̃ͯ̽̅ͯ̋͌̚͘e̶̸̡̝̝͚̻̮̰͉͎̼̍ͧ̇̽̅͆̐̅̋̾s̵̛̟̠͕̰̦̲̙̫̦̜̎ͣ̿ͣ͗ͦͪ̃ͭͨ 162 characters for 8 visible; tallest stack 22 marks.
What zalgo text actually is
Every letter you see in glitch text is an ordinary letter. What makes it look broken is what comes after it: a run of combining marks, characters with no width of their own that are drawn relative to the letter before them. An acute accent is one. So is a tilde, a small arrow, a vertical tick, a tiny letter x perched on top.
In normal writing a letter carries one mark, occasionally two — Vietnamese stacks a tone mark on top of a vowel mark. Unicode does not stop there. Nothing in the standard limits how many marks may follow a letter, and a text renderer will dutifully try to draw all of them, stacking each new one above or below the last. Pile on fifteen and the letter grows a column of debris reaching into the line above. That column is zalgo.
The tool draws from 100 different marks, all from the Combining Diacritical Marks block, so nothing exotic is needed to display them. Any font that can show é and ñ can show these.
Where the name comes from
Zalgo started around 2004 on the Something Awful forums, as a run of edited newspaper comic strips. Ordinary, cheerful panels were doctored so the characters' eyes bled and their faces dissolved, with a looming presence called Zalgo and the line "he comes". The meme spread, the corrupted lettering in those edits came to stand for the whole thing, and generators that reproduced the effect with Unicode marks gave it the name it carries now.
Its most famous appearance outside horror is a 2009 Stack Overflow answer to someone asking how to parse HTML with regular expressions. The answer explains, with mounting despair, why that cannot work — and the text itself dissolves into zalgo as it goes, as if the attempt were summoning something. It is still passed around as one of the best answers ever posted there.
Three places a mark can go
Every combining mark has a property that tells the renderer where to put it, and they fall into three groups. The tool gives each group its own slider, because they behave very differently.
Above
48 marks that sit on top of the letter: accents, breves, dots, small arrows, the tiny superscript letters used in medieval manuscripts. Each new one is stacked higher than the last, so this slider controls how far the text reaches upward. It is the most legible zone to overdo, because the letters themselves stay clear underneath.
Through
8 marks drawn across the letter itself — strokes, slashes, a tilde overlay — plus a couple that hang off its shoulder. These do the most damage to legibility, because they sit exactly where the reader is looking. One or two make text look scratched; five turn each letter into a black smudge. The presets keep this one low for that reason.
Below
44 marks that hang underneath: dots, rings, tacks, cedillas, underlines. The mirror of the above zone, so this slider controls how far the text drips downward. Matching it to the above setting gives the classic symmetrical look; leaving it at zero gives text that seems to be rising off the page.
Uneven, rising and spaced
Three checkboxes change how the marks are spread, and they matter more than the numbers.
Uneven gives each letter somewhere between half and all of the setting rather than exactly the setting. Real corruption is not tidy, and even stacks look mechanical, like a fence. This is on by default.
Build up across the text starts almost clean at the first letter and reaches the full setting at the last, so a sentence decays as it is read. It is the most effective way to use zalgo for an actual effect rather than as decoration: everything is fine becoming steadily less fine.
Leave spaces clean keeps word breaks bare. Marks on a space still draw, which smears the gaps between words and makes the text harder to read for no gain, so this is on by default too.
How high can it go?
Unicode itself sets no maximum. What it does publish is a recommendation called the Stream-Safe Text Format, in its report on normalization: no more than 30 marks in a row after a letter, so that software can process text in fixed-size chunks without reading arbitrarily far ahead. Text that breaks that rule is still valid, but it is exactly the kind of input a careful system is entitled to cut short.
The tool respects it. Each slider tops out at ten, and no letter ever carries more than 30 marks however the settings combine. That is still far more than enough; at the Total preset the text is already unreadable.
The real cost is length
Here is the thing every other glitch generator leaves you to discover. A mark takes up no room on screen, but it is still a character, and character limits count it. Look at the examples at the top: "He comes" is 8 characters plain and several times that once glitched.
That is why the result card shows three numbers. Visible is what a person would say the length is. Characters as most sites count them is the number of Unicode code points, which is what bio fields, post limits and username checks generally measure. Bytes is what it takes to store, which is what some databases cap instead, and each mark takes two of them.
If you know the limit you are writing for, type it into Fit within. The tool works out how many marks the limit leaves room for and trims the tallest stacks first, so the text flattens evenly rather than losing its ending. If the plain text alone is already over the limit, it says so — no amount of trimming fixes that.
When a site rearranges your marks
Some platforms normalize text when you post it, which is a sensible thing to do and has one visible effect on zalgo. Normalization sorts the marks after each letter into a fixed order by where they attach, so all the marks below come before all the marks above. The picture barely changes — each mark still goes to the same place — but the characters are now in a different order, and a few combinations collapse into a single accented letter.
The practical upshot is that copying glitch text back off a site does not always give you the exact characters you posted. It looks the same, and it cleans up the same.
Cleaning glitch text back off
Switch to Clean glitch text and paste anything in. Every combining mark from the diacritic blocks is removed and you are left with the letters underneath — useful for a username someone else glitched, a quote you need to search for, or a message too corrupted to read.
The difficult part is not removing marks; it is knowing which ones to keep. Café contains a combining mark when its accent is stored separately, and stripping everything would leave Cafe. With Keep real accents ticked, the tool tests each letter: if its marks fold into a single accented character that exists in its own right — é, ñ, ộ — the letter is a real one and stays. A letter wearing a stack of random marks never folds away completely, so it is cleaned. One test separates a French word from glitch text without needing to know any French.
The cleaner also leaves other writing systems alone. Hindi vowel signs, Arabic vowel marks and Thai tone marks are combining characters too, and a cruder tool would delete them along with the zalgo. These come from different blocks, and the cleaner only touches the blocks glitch text is made of.
Where it breaks, and who it shuts out
Glitch text is designed to be hard to read, and it succeeds for everyone, but for some readers it is impossible. A screen reader either skips the marks or announces them one by one — "combining tilde, combining dot below, combining acute" — which turns a short phrase into a minute of noise. Anything a blind visitor needs to understand should not be glitched.
It also spills. The stacks extend into the lines above and below, overlapping whatever is there, and in a chat that can hide other people's messages. Many communities strip it automatically or ban it for exactly that reason. Use the light presets in shared spaces and save Total for your own.
And it cannot be searched. A glitched word is the word plus dozens of other characters, so nothing will find it unless the search engine strips marks first. Never glitch a name you want people to look up.
Good uses for it
- Titles and posts for horror games, creepypasta, Halloween events and alternate reality games.
- A single word that should feel wrong in an otherwise normal sentence — the rising mode does this best.
- Error screens, "corrupted file" jokes and anything that wants the look of a system failing.
- A display name with one glitched letter, leaving the rest readable and searchable.
Related tools
The Fancy Text Generator has light and heavy glitch among 58 other styles. The Strikethrough Text Generator uses the same kind of mark in a controlled way — one line through every letter — and the Upside Down Text Generator flips text over rather than burying it. For a name sinister enough to deserve the treatment, try the Demon Name Generator.
Common questions
What is zalgo text?
Ordinary text with combining marks — accents, strokes, small arrows — piled onto each letter until it looks corrupted. The name comes from an internet horror meme of the mid-2000s, where the creeping, glitching lettering came to stand for something unspeakable breaking through.
How do I make zalgo text?
Type into the box above and copy the result. Pick a preset to start, then use the three sliders to control how many marks go above, through and below each letter. Re-roll gives a different arrangement with the same settings.
Why is my zalgo text too long to post?
Because every mark is a character. A letter carrying twenty marks counts as twenty-one characters even though it takes up one letter’s width. Type a number into Fit within and the tool trims marks, evenly across the text, until the whole thing fits.
How do I remove zalgo text?
Switch to Clean glitch text and paste it in. Every stray mark is stripped. With Keep real accents ticked, a letter that composes into a genuine accented character — é, ñ, ộ — keeps its accent, so a French or Vietnamese word survives the clean-up.
Can zalgo text crash a phone or an app?
Not in any modern app we know of, but it can make one misbehave: very tall stacks spill across lines, slow down rendering of long threads and obscure messages next to them. That is why many forums and chat servers strip it or ban it, and why the sliders here stop at a sensible ceiling.
Is the text I type sent anywhere?
No. The marks are added in your browser. Nothing is uploaded or saved.