Staaarter

CSV Zalgo Corruptor

Applies Zalgo-style Unicode combining-character corruption to the visible text inside every CSV cell, cell by cell, so the glitchy 'cursed text' effect appears throughout the data while row/column structure and delimiters stay perfectly intact and the file remains valid CSV. A free online tool from Staaarter, right in your browser.

Runs locallyUpdated 2026-07-29
By Staaarter Team
csvnoveltyzalgo

Overview

Introduction

Zalgo text, the glitchy, "cursed" look created by stacking Unicode combining marks onto ordinary characters, is a fun way to make text look corrupted or haunted. This tool applies it to an entire CSV, one cell at a time.

Because corruption is scoped to each cell's text rather than the raw file as a whole, the CSV's structure survives completely intact, only the words inside look like they're falling apart.

What Is CSV Zalgo Corruptor?

A per-cell Zalgo text corruptor for CSV data: every cell's visible text gets a random stack of combining diacritical marks (above, through the middle of, and below each character), while delimiters and row breaks are left completely alone.

The combining-mark logic is adapted from this site's `string` category Zalgo Text Generator, applied cell by cell here so structure survives where a naive whole-file corruption wouldn't.

How CSV Zalgo Corruptor Works

The CSV is parsed into a grid, and every non-empty cell's characters each get a random number of combining marks appended, drawn from three Unicode ranges (above, middle, below the base character), scaled by the chosen intensity.

The corrupted grid is then re-serialized with the same RFC 4180-aware writer used across this category, so quoting and delimiters remain exactly correct even though the cell text itself is now visually chaotic.

When To Use CSV Zalgo Corruptor

Use this for a fun, spooky, or attention-grabbing effect on CSV data you're sharing for entertainment, not for any real data-processing purpose.

It's also a fun way to stress-test how a downstream CSV viewer or parser handles unusual Unicode combining characters inside cell values.

Often used alongside CSV Zalgo Remover and CSV Animator.

Features

Advantages

  • Corrupts only the visible text inside cells, so the CSV remains structurally valid and parseable throughout.
  • Intensity is adjustable from subtle to extremely chaotic.
  • Directly reuses well-tested combining-mark logic from this site's string-category Zalgo generator, rather than reinventing it.

Limitations

  • This is a novelty/fun effect, not a serious data transformation, the resulting cell values are no longer meaningful as data.
  • Very high intensity can make cells extremely wide (many combining characters stacked per character), which may look broken in some renderers even though the text remains valid Unicode.

Examples

Corrupting a simple CSV

Input

id,name
1,Ada

Output

i̷̢d̶̛,n̸͎a͈m̷͙e̴̮
1̵̭,A̶̪d̷͇a̸͎

Every character in every cell gets a random cluster of combining marks; the delimiter (",") and row break are completely untouched, so the CSV structure stays valid.

Best Practices & Notes

Best Practices

  • Use a lower intensity if you still want the corrupted text to be roughly legible; go higher for maximum visual chaos.
  • Keep an unmodified copy of the original CSV around, since Zalgo corruption is meant to be undone with CSV Zalgo Remover, not the original source data itself.
  • Don't use this on data you actually need to keep readable or machine-processable afterward.

Developer Notes

Corruption skips empty cells (`cell.length > 0`) so blank fields stay blank rather than gaining combining marks with nothing to attach to; the three combining-mark ranges (above U+0300-U+0315ish, middle U+0334-U+0338, below U+0316-U+0333) are the same fixed arrays used by the `string` category's Zalgo Text Generator, copied here rather than imported across category boundaries to keep the `csv` category self-contained.

CSV Zalgo Corruptor Use Cases

  • Adding a fun, spooky visual effect to a CSV shared for entertainment or a Halloween-themed demo
  • Stress-testing a CSV viewer or parser's handling of unusual Unicode combining characters
  • Demonstrating what Zalgo/combining-character corruption looks like applied at the cell level rather than to plain text

Common Mistakes

  • Using this on real data you still need to process afterward, corrupted cells are no longer meaningful values.
  • Setting intensity to maximum and being surprised the output looks extremely wide or chaotic, that's the expected effect at high intensity.

Tips

  • Start at a low-to-medium intensity (2-4) if you want the corrupted text to remain roughly readable.
  • Pair with CSV Zalgo Remover afterward to demonstrate the corruption is fully reversible.

References

Frequently Asked Questions