Skip to main content
← All guides

How to get plain text out of an SRT file

Sometimes the subtitles are the only written record of what was said, and what you want is the transcript, not the file. Stripping the timings sounds like a two-minute job in a text editor, and it is — until the details show up.

What has to come out

An SRT block carries four things, three of which you do not want: the block number, the timing line, the text, and the blank line that ends it. A clean extraction removes the first, second and fourth and keeps the third. That is the easy part. The parts that catch a find-and-replace are the styling tags scattered through the text — <i> and </i> around emphasised speech, occasionally <font> or positioning codes in braces — and the speaker labels, which look like text because they are text. WebVTT adds its own: a WEBVTT header, NOTE blocks that are comments rather than captions, and cue settings hanging off the end of the timing line.

What to do about line breaks

Here is the decision that actually matters, and it is why the result of a naive strip reads so badly. A caption is broken into lines for reading speed, not for meaning. One sentence routinely spans two lines of one caption and then continues into the next caption entirely. Keep those breaks and you get a column of fragments. Remove all of them and you get one unbroken wall of text. The middle path is to join the lines within each caption into one line, and keep one line per caption. You get readable units that correspond to how the thing was actually said, and you can join them into paragraphs yourself if you want prose.

Doing it

Paste the subtitle file into the box on the front page, tick the option to remove styling tags, tick the speaker-label option if the file has them, and choose the .txt output. What comes back is the words, one caption per line, with the numbers and timings gone. Because it all happens in the browser, the file is not uploaded anywhere — which matters more here than for a format conversion. A subtitle file is often the transcript of an interview, a lecture or a meeting that has not been published yet.

What you cannot get back

The extraction gives you words, not a finished transcript. Who is speaking is gone unless the file labelled it. Paragraphing is gone, because a subtitle file has none. And the punctuation is subtitling punctuation, which is lighter than prose punctuation — subtitlers drop commas that a written transcript would keep, because the viewer hears the pause. If the end product is a document somebody will read, expect to spend time on it after the extraction. What you have saved is the retyping, which is the part that was never worth doing by hand.


Frequently asked questions

Can I do this with find and replace in a text editor?

For a clean file, more or less — a regular expression can drop the numbers and the timing lines. It will not handle the styling tags, the speaker labels, or the line-break decision, which are the parts that make the result readable.

Will the text keep its paragraphs?

There are none to keep. A subtitle file has captions, not paragraphs. The nearest useful equivalent is one line per caption, which is what you get.

Does this work on a VTT file too?

Yes. The header, the NOTE blocks and the cue settings are all recognised and dropped, and the text comes out the same way.

Is the subtitle file uploaded anywhere?

No. The whole extraction runs in your browser, on the page. Nothing is sent to a server and nothing is stored.

Extract the text

More guides


Other things we made

Animunda

Also in English, made by the same people.

CoreFeed

Also in English, made by the same people.

Pixygon.io

Also in English, made by the same people.

HazeChat

Also in English, made by the same people.