What is the SRT file format?
A file with a .srt extension contains movie subtitles saved in plain-text format. Each subtitle block contains three elements, separated from the next block by a blank line:
- Sequential number - a 1-based integer identifying each subtitle entry,
- Timestamps - start and end times in the format
HH:MM:SS,mmm --> HH:MM:SS,mmm(note the comma as decimal separator, not a period), - Subtitle text to be displayed on screen (one or more lines).
Below the timestamps, optional display coordinates may appear. When no position data is present, subtitles are by default shown in the bottom-centre of the screen.
.srt files are saved in the SubRip format, developed around 2000. The format is supported by virtually all media players and video platforms, including VLC, mpv, and YouTube. It supports basic inline formatting via HTML-style tags such as <i> for italics, <b> for bold, and <u> for underline, though player support for these tags varies.
Files are typically encoded in UTF-8. A UTF-8 BOM (EF BB BF) may appear at byte 0 but is not required and can cause display issues in some players.
.srt files often follow a naming convention that includes the movie title and subtitle language - for example, Titanic.eng.srt. They can be converted to other formats such as WebVTT or .ASS, edited with dedicated tools like Subtitle Edit, or opened in any plain-text editor.
Security & safety
RISK: LOWAn .srt is plain text and cannot execute code, so the file itself is safe to open. Two historical cautions: (1) years-old player vulnerabilities (e.g. the 2017 "Subtitle Hell" research) abused malformed subtitle parsing, so keep your media player updated; (2) subtitles downloaded from sketchy sites occasionally carry misleading filenames or links in the text - read, don't blindly trust. Watch encoding too: save as UTF-8 so accented characters display correctly.
Format details
in a nutshellPrograms that open SRT files
Technical details
deep spec| File type | Plain-text timed subtitle format |
| MIME type | application/x-subrip |
| Text encoding | UTF-8 (preferred) or legacy ANSI/Windows-1252; optional BOM (EF BB BF) permitted at byte 0 |
| Line endings | LF or CRLF; both accepted by most players |
| Timecode format | HH:MM:SS,mmm --> HH:MM:SS,mmm - comma separates seconds from milliseconds (not a period) |
| Block structure | Sequence integer → timecode line → one or more text lines → blank line separator |
| Inline formatting | HTML-style tags (<b>, <i>, <u>, <font color="...">); player support varies |
| Optional position data | X1, X2, Y1, Y2 pixel coordinates appended to the timecode line |
| Default subtitle position | Bottom-centre of video frame when no coordinates are specified |
| File signature | None - no magic bytes; identified by block structure and .srt extension |
| Sequence numbering | 1-based integers; most players tolerate non-sequential or restarted numbering |
| Overlapping subtitles | Permitted - two blocks may share overlapping time ranges |
| Platform support | Universally accepted; natively supported by YouTube, Vimeo, and most streaming services |
| Related formats | .vtt (WebVTT), .ass/.ssa (Advanced SubStation Alpha), .sub (MicroDVD), .sbv (YouTube) |
| Released | circa 2000 (SubRip program by Zuggy); the de facto standard subtitle format |
| Open standard | Yes · royalty-free |
| Specification | en.wikipedia.org |
SRT conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about SRT files.