Zalgo Text Generator & Cursed Text Maker

A zalgo text generator stacks Unicode combining marks (U+0300–036F) above, through, and below your characters to produce the classic "cursed" glitch effect. Type below, watch the live result, copy it, and see exactly how many SMS segments it consumes.

0
Characters
0
SMS segments

How does a zalgo text generator work?

A zalgo text generator builds its effect by appending Unicode combining diacritical marks (U+0300–U+036F) to ordinary characters. These marks do not occupy their own horizontal space — instead they stack above, through, or below the base glyph. The result is the familiar "glitchy," corrupted, or "cursed" look, while the underlying characters stay intact and machine-readable. In short, zalgo text is visual noise layered on top of perfectly normal characters.

The combining marks split into three groups: above (U+0300–U+0314, U+031A–U+0327, U+032E–U+0337, U+033F–U+034F, U+0350–U+036F), middle (U+0334–U+0338, U+033C, U+0342, U+0345), and below (U+0316–U+0319, U+0328–U+032D, U+0339–U+033B, U+033D–U+033E, U+0346–U+034F). This generator randomly picks marks from whichever directions you enable and layers a number of them per character based on the intensity you choose — Mild, Medium, or Cursed. The base letters, numbers, and spaces never change, which is why a screen reader, search engine, or SMS parser still sees the original message underneath the decoration.

That machine-readable core is the key takeaway: zalgo changes how text looks, not what it says. The decoration is invisible to most automated systems, but it is very visible to the SMS billing and encoding logic, which is where the real cost shows up.

Where does cursed text render correctly — and where does it break?

Most modern social platforms (X/Twitter, Facebook, Reddit) render combining marks faithfully, so your cursed text appears as intended. Some messaging apps, email clients, and older handsets strip or ignore combining marks and show only the base characters. SMS carriers treat every combining mark as a separate UCS-2 unit, which forces the whole message into 16-bit encoding at 70 characters per segment instead of 160.

Because each mark is billed as its own unit, the cost adds up fast: one base character with ten combining marks uses eleven units. The segment counter above shows the real impact live. Before you send anything, run it through the SMS character counter to estimate cost, or the SMS text transformer to strip combining marks from copy. You can also review our SMS Unicode encoding deep dive for the full GSM-7 vs UCS-2 breakdown.

As a rule of thumb, the same sentence that fits in a single 160-character GSM-7 segment can balloon into five or six paid UCS-2 segments once heavy zalgo decoration is applied — turning a fraction-of-a-cent message into one that costs many times more to deliver.

How many SMS segments does zalgo text use per character?

With GSM-7 encoding a standard SMS carries 160 characters per segment; with UCS-2 (the mode zalgo forces) that drops to 70 characters per segment. Every combining mark you stack counts as its own character toward that 70, so a single decorated letter can consume anywhere from two to a dozen units depending on intensity.

The live counters next to the tool update in real time, so you can watch exactly how many SMS segments your decorated string would consume before you ever paste it into a campaign.

Does zalgo text hurt SMS deliverability and accessibility?

Screen readers and text-to-speech engines may skip combining marks, read them as separate characters, or produce garbled audio. For anyone relying on assistive technology, cursed text is confusing or inaccessible, and it can also trigger carrier filtering on promotional routes. Use it sparingly, only in visual contexts where the effect is deliberate, and never in transactional messages like one-time passwords or alerts.

If you need to clean text before sending, the invisible character detector finds and removes combining marks. You can also paste into a plain-text editor or run a regex that strips every character in the U+0300–U+036F range.

What is the difference between GSM-7 and UCS-2 for SMS?

GSM-7 is the compact 7-bit alphabet used for most Latin-script messages; it packs 160 characters into one segment and is the cheapest way to send SMS. UCS-2 is the 16-bit encoding used whenever a message contains a character outside the GSM-7 set — including emoji and Unicode combining marks like those used for zalgo. UCS-2 fits only 70 characters per segment, so the same message costs more than twice as many segments to deliver.

This is why a zalgo string is expensive to send: the combining marks pull the entire message out of GSM-7 and into UCS-2. Our SMS segment math explained guide walks through the exact thresholds, and GSM-7 vs UCS-2 helps you pick the right encoding for your copy.

Frequently asked questions

What is zalgo text?
Zalgo text is ordinary text corrupted by stacking Unicode combining diacritical marks above, through, and below each character. It creates a glitchy, cursed visual effect while preserving the original characters underneath, so the message stays machine-readable.
Does zalgo text work in SMS?
Sometimes. Many modern phones render combining marks, but plenty of carriers and handsets strip them. Because each combining mark is a separate UCS-2 unit, zalgo text forces your SMS into 16-bit encoding, cutting the per-segment limit from 160 to 70 characters and raising the cost. The segment counter above shows the real impact.
Can zalgo text crash apps?
Very long strings of combining marks can cause rendering slowdowns or crashes in some text editors, chat apps, and terminal emulators — a known side effect of combining-mark abuse. Stick to the Mild or Medium intensity to stay safe.
How do I remove zalgo corruption from text?
Use the invisible character detector to find and strip combining marks, paste the text into a plain-text editor, or run a regex that removes every character in the U+0300–U+036F range.
Is zalgo text safe for professional use?
No. Zalgo text is a novelty effect. It harms accessibility, inflates SMS cost, and looks unprofessional in business communication. Reserve it for fun or artistic contexts only, and never in transactional or promotional SMS.

Related guides & tools

Need to send real SMS without zalgo corruption? Start sending with smsroute — direct carrier routes, transparent pricing, and delivery in minutes.