How to Make an SRT File: A Complete Guide

SRT files are one of those things that sound technical but are surprisingly straightforward once you understand what they actually are. Whether you're adding subtitles to a video, creating captions for accessibility, or preparing content for a streaming platform, making an SRT file is something you can do with tools you likely already have.

What Is an SRT File?

SRT stands for SubRip Subtitle format. It's a plain-text file with the .srt extension that contains timed subtitle entries — nothing more. No special encoding, no proprietary format. Just text, timestamps, and a numbering sequence.

Each subtitle block follows the same structure:

1 00:00:05,000 --> 00:00:08,500 This is the first subtitle line. 2 00:00:09,000 --> 00:00:12,000 And this is the second one. 

That's the entire format. A sequential number, a start and end timestamp in HH:MM:SS,milliseconds format, the subtitle text, and a blank line before the next entry. Video players, editing software, and streaming platforms read this structure universally.

Method 1: Create an SRT File Manually with a Text Editor 📝

The most direct approach requires nothing but a basic text editor — Notepad on Windows, TextEdit on Mac (in plain text mode), or any code editor like VS Code or Notepad++.

Steps:

  1. Open your text editor and create a new blank file
  2. Type each subtitle block following the structure above — number, timestamp, text, blank line
  3. Pay close attention to the timestamp format: hours, minutes, seconds, and milliseconds separated by a comma (not a period) before the milliseconds
  4. Save the file with a .srt extension — name it something like mysubtitles.srt

On Windows, when saving in Notepad, set the file type to All Files and manually type the .srt extension to prevent it from saving as .txt. Choose UTF-8 encoding to support special characters and non-Latin scripts.

This method works well for short videos or when you only have a handful of subtitle lines. For anything longer than a few minutes, it becomes tedious quickly.

Method 2: Use Dedicated Subtitle Software

Subtitle editors are designed specifically for this workflow and make the process much faster, especially for syncing text to audio.

Aegisub is one of the most widely used free subtitle editors. It lets you load a video, play it back, and mark in/out points for each subtitle line in real time. You can visually see where your text appears against the waveform, which makes accurate timing significantly easier.

Subtitle Edit (Windows) is another popular free option with a clean interface, spell check, translation tools, and auto-timing features. It supports importing from other subtitle formats and exporting directly to SRT.

Both tools let you export the finished project as a .srt file once you're done.

Method 3: Auto-Generate with AI or Transcription Tools 🤖

If you're starting from scratch and need to subtitle a video that doesn't already have a transcript, automatic transcription tools can generate an SRT file for you.

Services like YouTube's automatic captioning, Otter.ai, Descript, Rev, and Adobe Premiere Pro's Speech to Text feature all produce subtitle files — and most allow you to export directly in SRT format.

The accuracy of auto-generated SRT files depends heavily on:

  • Audio clarity — background noise, music, and overlapping speech reduce accuracy
  • Accent and dialect — tools trained primarily on certain accents perform less consistently with others
  • Technical vocabulary — industry-specific terms are frequently misrecognized

Auto-generated SRT files almost always require manual review and correction before they're ready to publish.

Key Variables That Affect Your Approach

FactorImpact on Method
Video lengthLonger videos make manual creation impractical
Starting pointDo you have a transcript already, or are you working from audio?
Accuracy requirementsBroadcast/professional use demands manual review
Software accessPremium NLEs like Premiere or Final Cut have built-in tools
Language/charactersNon-Latin scripts require UTF-8 encoding confirmed at save
Platform destinationSome platforms (YouTube, Vimeo) have their own upload workflows

Common Mistakes to Avoid

Timestamp formatting errors are the most frequent issue. The comma before milliseconds (00:00:05,000) is required by the SRT spec — using a period instead will cause many players to fail to read the file correctly.

Missing blank lines between subtitle blocks also breaks the file structure. Every entry needs a blank line separating it from the next.

Encoding issues show up as garbled text or missing characters, particularly with accented letters or non-Latin scripts. Always save as UTF-8 unless the target platform specifically requires a different encoding (some older systems expect ANSI).

Overlapping timestamps — where one subtitle's end time exceeds the next subtitle's start time — cause display glitches in most players.

How Platform and Use Case Change Everything

A short social media clip with three subtitle lines needs nothing more than a text editor. A 90-minute documentary requires dedicated software, careful review, and possibly a style guide for line length and reading speed. A corporate training video destined for an LMS platform may require SRT files in a specific encoding or naming convention that the platform mandates.

Someone creating SRT files for personal use on a local media player has almost no constraints. Someone preparing content for Netflix or a broadcast deliverable is working against strict technical specifications that go well beyond the basics of the format itself.

The SRT format itself is simple — but how you get there, and whether the result is fit for purpose, depends entirely on what you're making it for, what tools you're working with, and how much accuracy your final use case demands.