Combining Unicode marks

Strikethrough text generator

This strikethrough text generator adds a combining long stroke to each grapheme so you can copy crossed-out plain text. Switch to underline marks when you need a low line instead. Conversion runs in your browser.

Type or paste your text.
5 / 500 graphemes
Decorated text

5 graphemes · strikethrough

How to use

  1. Type or paste text in the source box.

  2. Choose Strikethrough or Underline in Converter settings; the result updates instantly.

  3. Copy the decorated text and paste it anywhere plain text works.

What is strikethrough and underline text?

Strikethrough here uses the combining long stroke overlay U+0336 after each grapheme, not CSS text-decoration and not an installable font. Underline mode uses the combining low line U+0332. The output is ordinary copy-paste plain text. Many apps and fonts show the marks, but some strip combining characters or render them poorly—try a short sample in your target app.

LiteralKit publishes this in-browser tool; see About for who we are and Contact to send a correction.

How this strikethrough text generator differs from CSS

Word processors draw a line through letters with a formatting bit that disappears when you paste into a bio. This strikethrough text generator instead appends U+0336 to every grapheme cluster it can measure. The letter stays the same code point; a combining overlay rides after it. Destinations that understand combining marks draw a stroke. Destinations that strip marks show the original letters. Destinations with poor fonts show a misplaced line or a box. That is font behavior, not a second style toggle. The same idea applies to the optional low line U+0332. Neither mark is an installed typeface.

Grapheme clustering matters for emoji. When Intl.Segmenter exists, a ZWJ sequence is treated as one cluster so the mark attaches once. Without Segmenter, a flag or family emoji may split and pick up several strokes. Try a short sample. Input is limited to 500 graphemes. Conversion runs in your browser; the source is not uploaded. Copy uses the clipboard on your device. If a site sanitizes combining characters from names, the stroke will vanish there even though it looks perfect here. Keep a plain original.

People search “crossed out text” for jokes, completed list items, and fake redactions. A combining stroke is a joke or a visual cue, not a security control. Anyone can copy the underlying letters. If you need true redaction, delete the words. Chat apps often keep U+0336. Some games strip it. Email clients vary by font. Because the URL is strikethrough-text-generator, the default mode is the long stroke; underline is a second mode on the same page rather than a separate product. Naming both in the heading used to make “underline text generator” the denser phrase; the page now leads with the stroke.

CSS text-decoration: line-through and HTML <s> keep the original letters and only paint a line in that document. They are the right choice inside a website you control. They are the wrong choice for a Discord nickname. Unicode combining marks are the right choice for plain-text fields that allow them. They are the wrong choice for a printed book that needs real strikethrough in a typesetting system. Pick the layer that survives the destination. This strikethrough text generator is the Unicode layer.

Underline in word processors is also formatting. Combining low line is a different code point that many fonts draw too far from the letter or overlapping a descender. If a destination already underlines links, adding U+0332 on a URL looks messy. Use underline mode when you want a low line in a bio that has no CSS. Do not expect it to equal a professional underline in print. The FAQ restates that both modes are ordinary Unicode, not a guaranteed system-wide text-decoration feature.

Related writing tools reverse letters, enlarge them, or map them to Mathematical Bold. Those maps change letters. This page does not. A bold Unicode letter plus U+0336 is possible if you paste styled text in; the converter will mark each resulting cluster. The result can be heavy and may break in apps that dislike stacked marks. Prefer plain Latin plus one mark. Cursed text already uses combining overlays; stacking a long stroke on zalgo is usually unreadable. Start from plain source.

Accessibility: a screen reader may ignore combining marks or announce them as “strikethrough overlay” depending on the voice. Do not rely on the stroke to communicate a completed task to a screen-reader user; say the word “done” in letters. Search will still find the underlying letters in some databases and miss them in others. Passwords and identifiers should never use these marks. Decorative paste only.

When you publish an example, say that the line is U+0336 (or U+0332) and may vanish in some apps. That sentence is more useful than a screenshot of one font. Round-trip a sample: generate, copy, paste into the target, paste back into a plain field. If the marks survive, you are done. If they do not, use the destination’s own completed-style or a different joke. This strikethrough text generator will not invent a CSS class you can carry across the web. It only copies characters.

Strikethrough marks

Strikethrough mode adds the combining long stroke overlay U+0336 after each grapheme. Use that setting to create crossed-out text you can copy as Unicode.

Underline marks

Underline mode adds the combining low line U+0332 after each grapheme. Switch to that setting when you want an underlined plain-text result rather than a CSS style.

Frequently asked questions

How does strikethrough / underline text work?

Combining Unicode marks (U+0336 and U+0332) are added after each grapheme, so the result is ordinary copy-paste plain text rather than a CSS style.

Will it work everywhere?

Many apps and fonts show the marks, but some strip combining characters or render them poorly. Try a short sample in your target app. This is ordinary Unicode, not a guaranteed system-wide text-decoration feature.

What about emoji or special characters?

The tool uses grapheme clusters when Intl.Segmenter is available so ZWJ sequences stay intact when supported. Without Segmenter, complex sequences may split.

Is this a font?

No. There is no installable font involved; the output is ordinary Unicode text.

Does it run locally?

Yes. Conversion and copying stay in your browser; your text is not uploaded.

Strikethrough vs underline?

Switch styles in Converter settings. Both are first-class modes on this page.

Loading interactive tools…