The detector has a fixed six-code-point contract: U+200B, U+200C, U+200D, U+2060, U+FEFF, and U+180E. It does not use a broad invisible-character regular expression, so soft hyphen, bidirectional controls, variation selectors, combining marks, and other default-ignorable code points are not silently removed.
Inspect only selects no characters. Common cleanup selects U+200B and U+FEFF. All supported selects all six. Choose types applies the exact checked set in a deterministic definition order; duplicate selections cannot cause duplicate removal.
ZWSP provides a line-break opportunity, WORD JOINER and legacy U+FEFF can prohibit breaks, ZWNJ and ZWJ affect joining in complex scripts, ZWJ participates in emoji sequences, and MVS is Mongolian-specific. These semantics make broad deletion a potentially meaning-changing operation.
Positions use zero-based internal code-point and UTF-16 offsets, displayed as a one-based code-point position plus one-based line and column. CRLF counts as one line boundary, astral characters count as one code point, and visible context escapes tabs, line endings, and adjacent supported controls.
Input is rejected rather than truncated when it is empty, contains an unmatched UTF-16 surrogate, or exceeds 1,048,576 UTF-8 bytes. All occurrences contribute to totals; at most 200 detailed records are retained by the engine and the interface displays the first 25 to keep the page responsive.
Output is built by omitting selected code points only. The engine does not trim, normalize, change line endings, reinterpret encoding bytes, or contact a server. U+FEFF is inspected in decoded text; byte-level BOM identification belongs to a separate file-encoding workflow.