StringMash.com

Cursed text generator

Marks hang above and below each letter, 12 at a time, until the paragraph closes up.

Conversion
9 characters
Updates as you type

Copy and paste anywhere

Using the cursed text generator

This page opens at 12 marks per letter, which is heavy enough that the text climbs into the lines above and below on the first try. Drag Marks per letter down to four or five if you want something that still fits where you're pasting it.

Hang marks decides which way the growth goes. Swap the boxes to strip everything back off, including text cursed somewhere else.

Why platforms fight back

Each visible letter of cursed text can cost a dozen code points. A renderer that draws all of them will happily paint straight through the surrounding lines, and a comment box full of it can push a page around.

Unicode has a rule for this, though almost nothing enforces it. The Stream-Safe Text Format in UAX #15 caps a run of combining marks at 30 in a row and breaks a longer one with an invisible joiner, U+034F, precisely so that software processing text in chunks can't be handed an unbounded pile. Browsers don't apply it, and will draw far more than 30 if asked.

Most platforms take the blunter route. Name fields accept a short list of characters, so cursed text that survives in a message usually won't make it into a username.

Cursed, zalgo, glitch

They're mostly the same thing under different names, and the names came from different places. Zalgo is a horror character from edited comic strips in the mid 2000s, and the zalgo page tells that story along with the Stack Overflow answer that made it famous among programmers.

"Cursed" is also the word for a cursed image, a photo that's wrong in a way nobody can name.

Glitch text is the one that genuinely differs. It swaps letters for other letters and stacks nothing on top, so it stays on its line and reads as damaged type.

Related conversions

Creepy text is the same mechanism hanging everything below the line, so it drips. Strikethrough is the restrained end of it, exactly one mark per character.

The characters underneath are never touched by any of them, and the Unicode converter will show you that: the original letters are still in there, in order, between the marks.

Questions

Is cursed text the same as zalgo?

In practice, yes. Both stack Unicode combining marks on ordinary letters. The names come from different corners of the internet and describe the same characters.

How do I remove cursed text?

Paste it in and swap the boxes. Every combining mark the tool recognizes is dropped, and the original characters come back in order.

Why won't it work in my username?

Name fields tend to accept a short list of plain characters, and Discord's username takes only a to z, 0 to 9, the characters . and _. A name that's three lines tall would break every list it appeared in. Bios and messages usually allow them.

Is there a limit on how cursed it gets?

This tool stops at 15 marks per letter. Unicode's own Stream-Safe Text Format suggests 30 as a processing limit, but nothing in a browser enforces it.

Sources

Added . Last updated and reviewed . What's new