What Is an SRT File?

An SRT file is a SubRip caption file. It is plain text: one cue after another, each cue a number, a start clock, an end clock, and the words, with a blank line before the next cue. The converter under this explanation turns those cues into a Word document. It does not play the video, and it does not rewrite the file on disk.

1 file free · Pro $4.99 one-time

More
Paste SubRip (.srt)
Live preview

The lines inside an SRT file

SubRip became a common sidecar because a player can read it without a special library and a person can read it without one either. There is no header required. There is no style section. There is no font table. The whole format is the cue, repeated until the captions end.

One cue, the way a text editor shows it:

12
00:01:04,200 --> 00:01:07,800
[Alex] The stall is still open.
We can come back after dark.

The first line is the index. Players and editors use it to count blocks. It is usually 1, then 2, then 3, but the converter does not check that the numbers form a perfect sequence. If the first line of a block is all digits, it is treated as the index and left out of the Word paragraph. The index never needs to appear in a transcript.

The second line is the clock. It has a start, an arrow written as -->, and an end. Spaces around the arrow are fine. Anything after the end time on that same line, which is more common in WebVTT than in SubRip, is a cue setting and is ignored when the line is parsed. The words start on the following line.

The caption itself may be one line or several. In the cue above, Alex’s name is a label at the start, in square brackets, and the second sentence is a second line inside the same cue. A blank line — a real empty line, not a line of spaces you meant as a pause — ends the cue. The next number starts the next cue. That blank line is not optional if you want the following cue to stay a cue. Without it, the parser keeps reading and the later index and arrow can become part of the caption text.

How the timecode is written

The usual SubRip clock is hours, minutes, and seconds, then a comma, then milliseconds: 00:01:04,200 means one minute, four seconds, and 200 milliseconds. Both the start and the end use that shape. Hours and minutes and seconds are zero-padded to two digits in files that editors write. Milliseconds are commonly three digits.

This converter also accepts a dot before the fraction, because WebVTT uses a dot and people mix the files up. One, two, or three fraction digits are read. They are treated as milliseconds by padding on the right, so a one-digit fraction is not a single millisecond. If a delivery spec demands three digits and a comma, follow that spec in the caption file. The Word range is only a short label for a person — minutes and seconds, with hours shown once the cue passes an hour — and it drops the millisecond field on purpose.

A missing fraction still parses. 00:01:02 --> 00:01:05 is read as a whole-second cue. You do not need to type ,000 on every line for this converter to see it. Add the fraction if a stricter player requires it.

The end may be earlier than the start. That still parses. The document will show a range that cannot describe a real cue. Overlap, where the next cue starts before this one ends, also parses. Neither case is repaired here. Fix SRT timing is the page for offsets, drift, and overlap, and the repair happens in a subtitle editor before you convert.

The arrow line is the part a caption player cannot live without. A lyrics file that only has a start time is LRC, not SubRip. A SubViewer file that puts a comma between two times and has no arrow is SBV, not SubRip. LRC can be spaced into cues on LRC to SRT. SBV should be exported again as SubRip or WebVTT from the tool that made it.

Encoding, UTF-8, and the BOM

The bytes on disk are text. Editors disagree about which encoding those bytes use. The upload on this site reads the file as UTF-8. A leading byte-order mark, the invisible character U+FEFF that some Windows editors write at the start of a UTF-8 document, is stripped before cues are read. You do not need to delete it by hand.

UTF-16, UTF-16 with a different BOM, and older code pages are not converted to UTF-8 here. If names show up as the wrong letters, or the preview finds no cues in a file that looks fine in one editor and like noise in another, re-save as UTF-8 in an editor that lets you pick the encoding, then drop the file again. Aegisub, Subtitle Edit, and most programming editors can do that save. The caption text is not uploaded while you convert. The re-save happens on your machine.

Accented letters, CJK characters, and emoji are ordinary Unicode once the file is UTF-8. They do not need a special “subtitle encoding” inside this converter. A player or a broadcaster may still have its own rule for the file you deliver. Follow that rule in the caption file. The Word document uses the characters it was given.

How to open, edit, create, or convert

Open the file in any text editor when you want to see the cues. Notepad, TextEdit, Visual Studio Code, and the editors built into subtitle tools all work, because there is no binary wrapper. Open it in Word or Google Docs when you only need a look, and expect the numbers and arrows to remain. Open it in a player or a nonlinear editor when you want the words on the picture. Those programs are reading the clocks. They are not turning the file into a document.

Edit wording in the text editor or in the subtitle tool, on the caption line, not in a Word file you hope to send back. Edit timing in a subtitle editor that can shift or rescale. This site does not offset a cue, and a paragraph in Word cannot be dragged along a timeline. After the words and the clocks are right, convert.

  1. Drop the file on the converter above for a .docx. Show timestamps on when the range should appear. Merge same speaker on when nearby lines from one name should become a paragraph.
  2. Use SRT to text when the document should read as paragraphs with the ranges already hidden.
  3. Use SRT to TXT when you want a .txt of the cue text, one block per cue, clocks removed, lines not joined.
  4. Use VTT to SRT when the file you were sent is WebVTT and a player asked for SubRip.
  5. Use ASS to SRT, SMI to SRT, SUB to SRT, or LRC to SRT when the source is one of those formats.
  6. Use how to create an SRT file when you have plain lines and no clocks yet. The seconds-per-line value spaces the new cues. It does not recover timing an editor never stored.

Creating a file by hand is the same three lines, repeated. Type the index, type the clock line with a comma before the milliseconds, type the words, type a blank line. That is enough for a player that accepts SubRip. Doing it by hand for a full episode is how clocks drift. A subtitle editor exists so you can see the line against the picture while you type.

SRT, WebVTT, and ASS

People say “SRT” when they mean “the captions.” The file they hold is often WebVTT or ASS. The differences that matter for reading and converting are in the table. All three can become a Word document on this site. Only the conversions linked above change one caption format into another.

SubRip WebVTT ASS / SSA
How the file starts Cue 1, or sometimes a BOM and then cue 1 A WEBVTT header Sections such as Script Info, Styles, and Events
Clock Comma before milliseconds, arrow between start and end Dot before milliseconds, arrow between start and end, optional settings after the end Dialogue start and end fields, with a period. Not an arrow line
Speaker Only if someone typed [Name] or Name: in the cue Often a <v Name> voice tag The Name column on the dialogue event
Styling Optional tags such as <i> that some players read Cue settings, voice and class tags, note/style/region blocks Styles and override codes, including karaoke
What this site does with it Word paragraphs, or a .txt of the cue text Word paragraphs, or a SubRip file via VTT to SRT Word paragraphs with effects flattened, or SubRip via ASS to SRT

WebVTT notes, style blocks, and region blocks are not cues. They are dropped when a VTT becomes SubRip or Word. ASS karaoke and positioning become the spoken words, not Word art. A two-language cue is still one cue until you decide how to read it. The comparison of LRC and SubRip, which is a different kind of “timed text,” is on LRC vs SRT.

Common errors

These are the failures that show up when someone asks what an SRT file is supposed to look like, because the one they have does not. Each row is something this converter will or will not forgive.

What you see What it means What to do
No blank line between cues The next index and arrow can be swallowed as caption text Put an empty line between cues, then convert again
No --> anywhere It is not SubRip. It may be SBV, plain prose, or a summary Export SRT or VTT from the tool that made it
A dot instead of a comma WebVTT habit, or a mixed file Fine for this converter. Change it only if the player demands a comma
Letters look corrupted The bytes are not UTF-8 Re-save as UTF-8. A BOM does not need a manual delete
<i> or <font> visible in Word Tags were left in the cue, and they are not mapped to styles Re-export with styling off, or leave the tags if the player needs them in the SRT
The words are right and the video is wrong Offset or drift in the clocks Repair in a subtitle editor. Converting prints the clocks; it does not move them
One person, dozens of tiny lines Captions wrapped for a frame, or a word-level ASR export Merge same speaker joins nearby unlabeled lines into paragraphs. It does not add punctuation

A file can be valid SubRip and still be a bad transcript. Repeated “thanks for watching” cues, music labels, and one word per cue all convert faithfully. Faithful is not the same as readable. Delete the junk in the caption file, or delete the paragraphs in Word. The converter will not decide which sentences a model invented.

From captions to a document

Once the cues are real, the converter on this page is the Word step. Cue numbers and arrow lines leave the preview. A label at the start of the cue becomes a bold name. Consecutive cues with that same label join when the gap is about 2.5 seconds or less and Merge same speaker is on. Show timestamps adds the short range or leaves it out. Download .docx for Word, Word Online, LibreOffice, or a Google Docs upload. Copy formatted when you only need the preview on the clipboard.

Two cues with a short gap illustrate the join without any extra theory. The blank line between them is what keeps them two cues in the file:

1
00:00:01,000 --> 00:00:03,000
First line.

2
00:00:03,200 --> 00:00:05,000
Second line.

With merge on, those two lines become one paragraph because the same unlabeled speaker continues and the gap is a fifth of a second. With merge off, they stay two blocks. With timestamps off, neither block shows a range. The caption file you dropped is the same file afterward.

One file converts without an account. Header, footer, and a ZIP of many documents are the paid unlock on the pricing page. Nothing here changes that. Nothing here transcribes a video that never had captions. If you are still looking at an MP4 and there is no sidecar, the next step is the editor or the meeting product that can write cues — not a second pass through Word.

The reading-transcript version of this job, with ranges hidden and lines joined, is SRT to text. The map for Zoom, Teams, Otter, YouTube, Whisper, and Descript exports is transcript to Word. The basic three-step Word path is how to convert SRT to Word.

Format questions

What the lines mean, which encodings parse, and which clocks this site will not repair.

Is an SRT file a video?

No. It is text. A player or an editor reads the clocks and paints the words on a picture that lives in a different file. Opening the caption file does not play the video.

Can I open it in Word?

Yes. Word treats it as plain text, so you still see cue numbers and arrow lines. The converter on this page turns those cues into paragraphs and can download a .docx. Keep the original file if you still need captions.

Does the comma in the timecode matter?

SubRip usually writes a comma before the milliseconds. WebVTT uses a dot. This converter accepts either. A player or a delivery spec may be stricter. Do not change separators unless the tool that will play the file requires it.

What is the BOM?

A byte-order mark is an invisible character some editors write at the start of a UTF-8 file. The parser ignores a leading one. The upload itself reads the file as UTF-8. UTF-16 and legacy code pages are not transcoded; re-save as UTF-8 if the letters look wrong.

Can this site fix clocks that are early or late?

No. It prints the clocks it was given when you ask for time ranges. Shift or rescale the file in a subtitle editor, then convert. The timing page is the checklist.

Will style tags such as <i> become italics?

In the Word file, no. The characters remain in the paragraph. Some players honor those tags in the caption file. This converter does not map them to Word character styles.

How do I make one if I only have lines of text?

The create page can number plain lines and space them with a seconds-per-line value you choose. Those clocks are spacing, not the timing from an editor. If you already have WebVTT, ASS, SAMI, a text SUB, or LRC, convert that file instead of retyping it.