Skip to main content
SubtitleMatrix

SRT Subtitle Format

Format conversionSubRip (SRT)

What this format can express

Text styling
Plain text only
On-screen positioning
No
Karaoke timing
No
Line breaks inside a cue
Yes
Timeline
Start and end time for every cue
Timing resolution
1 ms
Timing stored as frame numbers
No
Right-to-left text
Yes

Examples

A typical SRT file, and what is read out of it

File

1
00:00:01,000 --> 00:00:03,500
Hello there.

2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.

3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.

What it holds

3 cues, 4 lines of text

  00:00:01,000 → 00:00:03,500
    Hello there.
  00:00:03,500 → 00:00:06,000
    Whispering now.   [italic ×1]
    And a second line.
  00:00:06,000 → 00:00:09,250
    Bold statement.   [bold ×1]

Outside the cues:
  nothing — SRT stores cues and nothing else

The right-hand side is not a converted file — it is what this site reads out of the left-hand side, and what every conversion of that file starts from.

An awkward SRT file, and what is still read out of it

File

# exported by some tool

5
00:00:10,000 --> 00:00:12,000
Second in the file, first in time.

2
00:00:02,000 --> 00:00:05,000
First in time, second in the file.

00:00:06,000 --> 00:00:09,500
No index line at all.

# keep this comment
3
00:00:12,000 --> 00:00:14,500 X1:100 X2:200 Y1:300 Y2:400
Positioned cue.

4
00:00:20,000 --> 00:00:19,000
Ends before it starts.

6
00:00:28,000 --> 00:00:33,000
Long one.

7
00:00:31,000 --> 00:00:32,000
Inside the long one.

What it holds

7 cues, 7 lines of text

  00:00:02,000 → 00:00:05,000
    First in time, second in the file.
  00:00:06,000 → 00:00:09,500
    No index line at all.
  00:00:10,000 → 00:00:12,000
    Second in the file, first in time.
  00:00:12,000 → 00:00:14,500
    Positioned cue.
  00:00:20,000 → 00:00:20,001
    Ends before it starts.
  00:00:28,000 → 00:00:33,000
    Long one.
  00:00:31,000 → 00:00:32,000
    Inside the long one.

Outside the cues:
  nothing — SRT stores cues and nothing else
  except 1 cue that had a comment line above it — that line stays attached to its cue

Reported while reading — repaired or skipped, never silently:
  1 × blocks with no readable timecode (they were skipped)
  1 × cues using SRT's non-standard X1/Y1 screen coordinate extensions
  1 × cues whose end time was not after their start time (they were given a 1ms duration)

Real files arrive with a byte-order mark, Windows line endings, a stray line before a timecode, or a timecode that cannot be read at all. None of it throws: whatever cannot be understood is reported rather than dropped in silence.

Convert SubRip (SRT) to another format

Each of these runs entirely in your browser. The labels say what that direction costs before you open it.

Convert SRT to CSV in your browser — nothing is lost in this direction.

Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.

Convert SRT to JSON in your browser — nothing is lost in this direction.

Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.

Convert SRT to SBV in your browser — nothing is lost in this direction.

Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.

Convert SRT to SMI in your browser — nothing is lost in this direction.

Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.

Convert SRT to TTML in your browser — nothing is lost in this direction.

Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.

Convert SRT to VTT in your browser — nothing is lost in this direction.

Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.

Converting into this format

SubRip (SRT) is one of the subtitle formats this site handles, and this page is its reference: what it can store, what it cannot, and a page for every format you can convert it to.

The table above is the whole of it — there is no hidden feature list. When a row says no, that is exactly what is lost by converting into SRT, and each conversion page linked below says so before you open a file.

Every one of those conversions runs in your browser. Nothing is uploaded and no account is needed, which matters for material under an NDA, a patient record or a broadcast embargo.

Frequently asked questions

What is an SRT file?

`.srt` is the format almost everything reads: VLC, mpv, most television firmware, YouTube's subtitle upload and the editors that ship with them. A cue is a number, a timecode line and a line or two of text.

Does SRT store styling?

No — it stores cues, and a cue is text with two times on it. SRT files in the wild often carry `<b>` and `<i>` in the text and most players act on them, but nothing in the file declares a font, a colour or a position.

Does every SRT cue store both a start and an end?

Yes, and a moment in an SRT file reads `00:00:04,126`. That is as fine as SRT goes — to the millisecond — and the number is exact, so a cue can be short, long, or overlap the next one without anything being implied.

Which formats can I convert SRT to without losing anything?

VTT, SBV, SMI, TTML, JSON and CSV — everything SRT can express, they can too. The table above is where that comes from: a row that says yes on both sides is a feature that survives. Every other direction drops something, and each of those pages names its own list.

Can I open an SRT file in a text editor?

Yes. An `.srt` file is a number, a timecode line and the text, repeated — and the thing that is easy to get wrong by hand is the punctuation of the timecode: `00:00:01,250`, with a comma.