monty
Try Monty free
← All articles
Guide2026-10-12· 8 min read

What Is an SRT File? Format, Rules and How to Make One

SRT cue anatomy, how to build a file from plain text, SRT vs VTT, Netflix's 42-character and 20 characters-per-second limits, and 9 errors to check.

Max GPTMax GPTBusiness development at Monty

An SRT file is a plain text subtitle file. It holds numbered cues, and each cue has a start time, an end time and the words to show, so any player or platform that reads it can display captions in sync with the video. It opens in Notepad or TextEdit, and it is one of the two basic formats YouTube recommends to people making caption files for the first time.

The format comes from SubRip, a program first released in March 2000, and it has lasted because there is so little to it. Broken SRT files tend to fail on the same few details: a period where the comma belongs, a missing blank line, or the wrong text encoding.

Anatomy of an SRT cue

  • Line 1, the counter: 1. Cues are numbered in sequence, starting at 1.
  • Line 2, the timecode: 00:00:01,000 --> 00:00:03,200. Start time, a space, an arrow made of two hyphens and a greater-than sign, a space, end time.
  • Line 3, the text: Record one take on your phone. A second text line is allowed when the caption is long.
  • Last line: empty. The blank line closes the cue, and the next cue starts with 2.

The timecode is hours:minutes:seconds,milliseconds, with two zero-padded digits per time unit and exactly three for the fraction, so half a second is ,500 and never ,5. The comma before the milliseconds is the most visible difference from WebVTT. Unofficially, SRT supports HTML-style bold, italic, underline and font colour tags, but YouTube does not recognise formatting in basic formats like SRT. There is no official encoding either, which is why YouTube spells out that it wants UTF-8.

How to make an SRT file from plain text

1Script or transcript
2One caption per line, 42 characters max
3TXT to SRT: numbered cues
4Shift timings to the speech
5Save as UTF-8 .srt and test
Text first, timing second. No subtitle software is needed until the sync step
  1. Split the text into captions, one per line, at or under 42 characters. Break after punctuation or before a conjunction or preposition, never between an article and its noun.
  2. Paste the lines into the free TXT to SRT converter. Each line becomes a numbered cue timed to reading speed, and the conversion runs in your browser.
  3. Match the timings to the speech. The converter places cues back to back from zero, so move each start time to the moment the words are spoken.
  4. Save as plain text with the .srt extension and UTF-8 encoding. In TextEdit on a Mac, choose Format, Make Plain Text first.
  5. Load the file with the video in a player and watch it through to the end.

YouTube has a shortcut. YouTube Studio lets you upload a caption file without timing, or paste the words into auto-sync, and lines the text up with the audio. The language must be supported by YouTube's speech recognition, and YouTube does not recommend it for videos over an hour or with poor audio. To go the other way, the SRT to TXT converter strips numbers and timecodes and leaves a clean transcript for a description or an article.

Line length and timing rules worth copying

Streaming services publish detailed caption rules, and Netflix's are public. Its English (USA) Timed Text Style Guide and general requirements set these limits:

RuleNetflix limitWhat it means in practice
Characters per line42Two full lines hold up to 84 characters
Lines per caption2 maximumStay on one line unless the text goes over the limit
Reading speed, adult contentUp to 20 characters per secondA full 84-character caption needs at least 4.2 seconds
Reading speed, children's contentUp to 17 characters per secondThe same 84 characters need about 5 seconds
Minimum duration5/6 of a second20 frames at 24 fps
Maximum duration7 secondsSplit a longer sentence into two cues
20
characters per second: the maximum reading speed Netflix allows for adult English subtitles. At that pace a full two-line caption needs 4.2 seconds on screen

A 9:16 frame is narrow, so at a readable caption size fewer than 42 characters may fit on one line. Treat 42 as the upper bound and test your caption size first. If lines look cramped, see our notes on the best font for subtitles.

SRT vs VTT vs burned-in captions

PropertySRTWebVTT (.vtt)Burned-in captions
What it isPlain text cues in a separate filePlain text cues in a separate file, opening with a WEBVTT headerText rendered into the video pixels
Timestamp00:00:01,000 (comma)00:01.000 or 00:00:01.000 (period, hours optional)None, the text is part of the picture
EncodingNo official standard; YouTube requires UTF-8Must be UTF-8Not applicable
Styling and positionUnofficial tags, ignored by YouTubeCue settings for position and size, CSS styling via ::cueWhatever your editor can draw
Viewer can switch offYesYesNo
Typical useYouTube uploads, desktop players, video editorsHTML5 video on your own siteShort vertical video in social feeds

Converting between the two file formats is mechanical: add the WEBVTT header, swap the commas for periods, keep the cues. The SRT to VTT converter does it in one step, and the VTT to SRT converter reverses it for editors and players that only read SRT.

Short-form apps work differently. TikTok's documented route is auto captions: you select them on the editing page after recording or uploading, then edit the generated text. Viewers can set in-app captions to off from the share panel, so a caption that must be visible to everyone has to be burned into the video before you post. Our guide to auto captions covers how accurate the automatic versions are.

Errors that break subtitle files

  • A period in the timecode. 00:00:01.000 is WebVTT syntax; SRT needs a comma.
  • Short milliseconds: ,5 or ,50 instead of ,500.
  • No blank line between cues, so two cues are read as one.
  • Counter and timecode on the same line. Number, timecode and text each need their own line.
  • Overlapping times: a cue starts before the previous one has ended.
  • Wrong encoding. A legacy code page turns accented and non-Latin letters into garbage, and YouTube asks for UTF-8.
  • A hidden extension. subtitles.srt.txt looks right when extensions are hidden, but the platform sees a text file.
  • Rich text saved from a word processor, full of formatting codes a subtitle parser cannot read.
  • A renamed file. Changing .srt to .vtt without converting leaves no WEBVTT header and commas in the timecodes.
Quick check before any upload: open the file in a plain text editor, confirm the first cue reads 1, a timecode with commas, text, an empty line, and make sure the last end time is not later than the video.

Where Monty fits

For short vertical video, Monty handles captions without a separate file. It renders kinetic captions synced to speech into the video, in caption styles matched to your brand, and can add subtitles in other languages. The finished video is cut and captioned for each platform and posted to YouTube Shorts, Instagram Reels, TikTok and Telegram, so there is no .srt to export, convert or break.

If you need a standalone .srt or .vtt for a long YouTube video, a course or a player on your own site, use the free converters above. They run in the browser and need no account.

Filming from a script? Use the free online teleprompter: paste the text, scroll it on any phone, no sign-up.

FAQ

What is an SRT file used for?

It stores subtitles as plain text: numbered cues, each with a start time, an end time and the words to show. Video players and platforms such as YouTube read it alongside the video, so viewers can turn the captions on or off.

How do I open or edit an SRT file?

Any plain text editor opens it: Notepad on Windows, or TextEdit on a Mac in plain-text mode. To watch it with the video, load the .srt as a subtitle track in a player that supports subtitles, or upload it in YouTube Studio.

What is the difference between SRT and VTT?

WebVTT opens with a WEBVTT header, uses a period before the milliseconds, allows the hours to be left out, must be UTF-8 and supports positioning and CSS styling. SRT uses a comma, has no header and no official styling. YouTube accepts both.

Can I upload an SRT file to TikTok?

TikTok's documented route is auto captions generated and edited inside the app, and viewers can switch those captions off. If the text must always be visible, burn the captions into the video before posting. An SRT file is still a useful source to burn them from.

Why do my SRT subtitles show up wrong?

Check three things: the file is saved as UTF-8 plain text with a real .srt extension, every timecode uses a comma before three-digit milliseconds, and each cue is separated from the next by a blank line.

Sources

  1. 1.YouTube Help: Supported subtitle and closed caption files
  2. 2.YouTube Help: Add subtitles and captions
  3. 3.Netflix: English (USA) Timed Text Style Guide
  4. 4.Netflix: Timed Text Style Guide, General Requirements
  5. 5.MDN: Web Video Text Tracks Format (WebVTT)
  6. 6.Wikipedia: SubRip
  7. 7.TikTok Newsroom: Introducing auto captions
Share with a friendTelegramEmail

Hey Monty. Make me a reel.

Try Monty free

Keep reading