Free Tool
Text to SRT Converter
Turn plain text into a subtitle file in one step. Paste a script or transcript and this TXT to SRT generator builds timed cues with SubRip timecodes, ready to load into any player or editor.
- Runs in your browser
- Nothing uploaded
- No signup
Drop your file here
or
Supports .srt, .vtt, .txt files
Add SRT files (2+)
Result
How it works
Text to SRT Converter in three steps
Paste Your Text
Enter your script, transcript, or any text. Separate paragraphs with blank lines.
Auto-Timing
Each paragraph becomes a subtitle cue with automatic duration based on word count.
Download SRT
Get a ready-to-use SRT file with properly formatted timestamps.
Convert text to SRT subtitles in your browser
An SRT file is just a plain-text list of numbered subtitle cues, each with a start and end timecode. Writing those timecodes by hand is slow and easy to get wrong — a single malformed timestamp makes the whole file fail to load. This text to SRT converter builds the structure for you: paste your script, and every paragraph becomes a properly numbered cue with a calculated duration.
Everything happens locally in your browser. Your text is never uploaded to a server, which means you can safely convert client scripts, unreleased episodes, or internal recordings without them leaving your machine.
How the timing is calculated
The generator estimates reading time at roughly 150 words per minute — close to a natural narration pace. Each cue is clamped to a minimum of 2 seconds and a maximum of 8 seconds so that short lines stay readable and long paragraphs get split sensibly, with a 200 ms gap between cues to avoid subtitles running into each other.
This produces subtitles that are correctly formatted and closely timed, which is what you want for a voice-over script, an explainer video, or a rough cut. If you need frame-accurate timing locked to existing audio, generating from text alone will not get you there — transcribe the audio instead, so the timings come from the recording rather than an estimate.
The SubRip (.srt) format
Each cue in a SubRip file has four parts: a sequence number, a timecode line, the subtitle text, and a blank line separating it from the next cue. Timecodes use the format hh:mm:ss,mmm — hours, minutes, seconds, and milliseconds, separated by a comma rather than a period. That comma is the detail most hand-written files get wrong.
1
00:00:00,000 --> 00:00:03,400
Welcome back to the channel.
2
00:00:03,600 --> 00:00:07,100
Today we are converting a script into subtitles.The output of this tool follows that specification exactly, so the file works in VLC, YouTube, Premiere Pro, DaVinci Resolve, CapCut, and anything else that reads standard SubRip.
When to use it
The workflow fits anyone who writes before they record: creators who script videos in advance, teams subtitling training material, translators who already have a written target text and need it back as timed cues, and editors who want a starting file to nudge into place rather than building one from an empty timeline.
Once you have the file, you can shift every timestamp at once if the subtitles drift, convert the result to plain text, or merge several parts into a single track — each of those is a separate free tool below.
Answers
Text to SRT — frequently asked questions
How do I convert text to an SRT file?
Paste your text into the box above, with a blank line between each subtitle cue, then download the result. The tool numbers every cue, calculates start and end timecodes from the word count, and returns a ready-to-use .srt file. Nothing is uploaded — the conversion runs in your browser.
How are the timestamps calculated?
Timing is based on word count at approximately 150 words per minute. Each cue lasts a minimum of 2 seconds and a maximum of 8 seconds, with a 200 ms gap between cues so subtitles do not overlap.
How should I format my text input?
Separate each subtitle cue with a blank line. Everything between two blank lines becomes one cue, so you control exactly where subtitles break by deciding where your paragraphs end.
What is the difference between a TXT and an SRT file?
A .txt file is unstructured text with no timing. An .srt file adds a sequence number and a start/end timecode to each block, which is what lets a video player show the right line at the right moment. This tool adds that structure.
What does the SRT timecode format look like?
SubRip timecodes use hh:mm:ss,mmm — for example 00:01:23,400 — with a comma before the milliseconds, not a period. Start and end times are joined by a two-hyphen arrow on the same line. Files that use a period instead of a comma will fail to load in most players.
Can I adjust the timing after generation?
Yes. Use the Subtitle Time Shift tool to move every timestamp forward or backward at once, which is the usual fix when subtitles are correct but offset from the audio.
What if I need exact timestamps?
Timings generated from text are estimates based on reading speed, so they will drift against a real recording. For timing locked to the audio, transcribe the audio or video file with SozAI instead — the timestamps then come from the recording itself.
Where can I use the .srt file?
Anywhere that accepts standard SubRip: YouTube, VLC, Premiere Pro, DaVinci Resolve, CapCut, and most social platforms. Upload it alongside your video or drop it next to the video file with a matching filename.
Is there a character limit?
No hard limit. Very long scripts may take a moment to process, since the whole conversion happens on your device rather than on a server.
Need Full Transcription?
Upload audio or paste a YouTube link and get a full AI transcript with speaker labels, timestamps, and summaries.
Free on iOS and Android. No account required.