Clean an SRT File — Remove Ad Lines, Junk Cues & Bad Formatting

If your subtitle file arrived full of sponsor bumps, duplicated entries, broken timecodes or mojibake characters, you're in the right place. SRTKit cleans SRT files in your browser — no sign-up, no forced watermark, no upload to a sketchy server.

Clean My SRT File — Free See how it works

No account required · No forced watermark on output · Files processed [TODO:实测: in-browser or auto-deleted within X hours]

What "clean SRT file" actually means here

Most people searching how to clean an SRT file mean one of four things. SRTKit handles all four in one pass.

1. Strip ad lines and sponsor bumps

Auto-injected "Subscribe!" / "Visit our sponsor" / "Patreon: ..." lines that some downloader tools append? Removed. You can keep only cues inside a defined time window if you need to cut a whole block.

2. Remove duplicate cues

Two subtitle files got merged and now line 5 and line 47 say the same thing at overlapping timestamps? Deduped by text content, with timecodes preserved from the earliest cue.

3. Fix timecode drift and overlaps

Out-of-sync files where cue 100 starts before cue 99 ends? Renumbered sequentially. Overlapping intervals get the second cue pushed to the first cue's end-time + a 1-frame gap.

4. Normalize encoding and line breaks

Garbled "测试" or "’" characters from a Latin-1/UTF-8 mismatch? Re-decoded. CRLF, lone BOMs, trailing whitespace, and stray HTML tags all stripped on output.

How to clean an SRT file online (3 steps)

  1. Drop your .srt file into the upload zone, or paste raw subtitle text.
  2. Pick what to clean — checkboxes for ad-line removal, dedup, encoding fix, timecode repair. Defaults are sane for most files.
  3. Download the cleaned .srt. The output is plain UTF-8, CRLF or LF terminated, ready for YouTube, VLC, Premiere or Netflix-style review tools.

For files you don't trust running through any server, the cleaner runs [TODO:实测: 100% client-side in your browser via WASM].

Clean SRT vs. just opening it in a text editor

You can open an SRT file in Notepad. You can sed-replace "Subscribe to" with "". That works for one file, once. For a batch of 200 episodes pulled from a feed that auto-injects sponsor blocks every 12 minutes, you need:

  • Regex that actually understands SRT cue structure (not raw lines)
  • Encoding auto-detection across GBK, Big5, Latin-1, Windows-1252
  • Timecode arithmetic (HH:MM:SS,mmm → milliseconds, compare, shift, re-emit)
  • A way to keep line-1 timestamps intact while only editing line 2 text

SRTKit bakes these into a single pipeline so you don't write the same Notepad macros twice.

What gets preserved when you clean an SRT file

Cleaning is destructive if done wrong. Here's the hard rule we follow: original cue text is preserved exactly unless you opt into a transform. Numbering is renumbered. Encoding is normalized to UTF-8. Timecodes shift only if you enable "repair overlaps". Nothing else.

If a cue fails validation (missing arrow, malformed timestamp), it's flagged in the report and copied into a separate _issues.txt — never silently dropped.

Ready to clean your SRT file?

Free, no sign-up, output stays yours.

Open the SRT Cleaner Need this in a pipeline? See the API →

Frequently asked questions

How do I clean an SRT file of ads without losing real subtitles?

Use the "strip ad lines" option with a whitelist of common patterns (Subscribe, Patreon, sponsored by, visit our). The cleaner only removes cues that match these patterns — real dialogue stays untouched. Always download the cleaned file and spot-check 3 random cues before overwriting your master copy.

Will cleaning an SRT file re-encode my video?

No. SRTKit only touches the .srt text file. Your .mp4 / .mkv / .mov is not uploaded, not opened, not modified.

Does the output have a watermark or forced branding?

No. Output is plain UTF-8 SRT with no header comments, no footer cues, no "Created with X" lines. It's the same format you'd hand to a reviewer.

Can I clean multiple SRT files at once?

Yes — use the batch mode to drop a folder of files and apply the same cleaning rules across all of them. Useful for back-catalogues where every episode has the same ad injection.

What if my file isn't actually UTF-8?

The cleaner auto-detects between UTF-8, UTF-8-BOM, Windows-1252, Latin-1, GBK and Big5, then re-emits everything as UTF-8. Mojibake characters ("测试", "’") are resolved in the same pass.