Conversion Plan: Non-Registered User
File Size Limit: 10 MB
Conversions: 5 / Daily (up to 50 / Monthly)
Online Converter: Build SRT subtitle files from an Excel spreadsheet (XLSX or XLS)
Instantly translate your subtitles into one of 30+ languages with cutting-edge AI technology.
Perfect for translators, content creators, educators, and global audiences.
Beta • 10 AI Conversion Credits per translation • Free registration required
Set options and click 'Run Conversion' button
Need a custom converter? Build it yourself with AI in minutes!
Chat-based converter creation • Ready in minutes • 100 free AI credits/month, buy more anytime
You may help others to find this website - Share your experience!
Convert an Excel spreadsheet into an SRT subtitle file. The converter reads the subtitle data from your columns and writes a properly formatted subtitle file with sequential numbering, timecodes and text - ready for any video player or editing suite.
You do not have to rearrange your sheet first. Column headers are matched by meaning, so the wording your subtitle editor or translator used is very likely already understood. Both XLSX (Excel 2007 and later) and the legacy XLS format are accepted. This is the return leg of our SRT to Excel converter, so the usual workflow is: export subtitles to a spreadsheet, edit or translate them there, convert back.
Only three things are essential: a start time, an end time and the subtitle text. Everything else is optional.
00:00:01,000 --> 00:00:03,000.Beyond that, the converter is deliberately forgiving:
Start Time, Timecode In and START all mean the same thing.An optional type column is read when present; leave it out and every row becomes a normal subtitle cue.
Letter case and surrounding spaces are ignored, so Index, INDEX and index are all the same header. These wordings are understood:
| Column | Headers that work |
|---|---|
| Numbering optional | index, no, no., #, num, number, id, line, entry, entry #, serial, serial number, seq, sequence, cue |
| Start time | start, start time, start_time, in, in time, timecode in, tc in, begin, from |
| End time | end, end time, end_time, out, out time, timecode out, tc out, finish, to, until |
| Subtitle text | text, subtitle, subtitles, subtitle text, subtitle content, caption, content, dialogue, original |
If your sheet has more than one text column - an original and a translation, say - the first one is used, and the conversion result tells you which column it took. To export the other language, move that column in front of the first one, or delete the one you do not need.
Prefer to start from something that already works? Download the sample file: sample.xlsx
Here is a sheet of the kind subtitle tools actually produce: a title in row 1, headers no one would call index or text, and a speaker column that has nothing to do with the subtitle file. Nothing here needs renaming.
| Episode 4 - English subtitles (final) | ||||
| Entry # | Start Time | End Time | Speaker | Subtitle Text |
|---|---|---|---|---|
| 1 | 00:00:01,000 | 00:00:05,000 | Narrator | Welcome to our video tutorial. |
| 2 | 00:00:05,500 | 00:00:10,000 | Narrator | Today we will look at file conversions. |
| 3 | 00:00:11,000 | 00:00:15,500 | Host | Let's get started! |
100:00:01,000 --> 00:00:05,000Welcome to our video tutorial.200:00:05,500 --> 00:00:10,000Today we will look at file conversions.300:00:11,000 --> 00:00:15,500Let's get started!
The title row and the speaker column are left out of the subtitle file, and the cues are numbered from 1 in row order. Delete the Entry # column entirely and the result is identical.
Any of these work, and you can rely on the one your tool already writes:
HH:MM:SS,mmm - the SRT standard, for example 00:01:23,456HH:MM:SS.mmm - a full stop instead of the commaMM:SS,mmm - the hours part left outHH:MM:SS - whole seconds, no millisecondsHH:MM:SS:FF and HH:MM:SS;FF - SMPTE timecode, including the drop-frame form with a semicolonOne column holding both times. If your sheet keeps the range in a single cell, such as 00:00:01,000 --> 00:00:03,000, that is understood too - no need to split it into two columns.
Spreadsheet software eagerly reinterprets anything that looks like a time, so a perfectly good 00:01:23,456 can turn into a clock value the moment you press Enter. Those cells are now read as times, so the conversion still runs.
It is still worth keeping the timecodes as text if you can, because that is the only way a cell stays exactly as you typed it, milliseconds and all:
12:03:00 AM, the sub-second part of what you typed may have been rounded away by the spreadsheet. Reformat the column as text and paste the timecodes in again to be sure.Subtitles are numbered from 1 in the order the rows appear, so gaps or duplicates in your numbering column are corrected automatically, and a sheet with no numbering column at all works just as well. Sort the rows by start time and the output follows.
Every worksheet is converted into its own subtitle file. One sheet gives you a single .srt file; several sheets give you a ZIP archive with one subtitle file per sheet. That makes a workbook a tidy container for one language per sheet, or one episode per sheet.
For a subtitle that takes two lines on screen you have two options: put a line break inside the text cell, or add a continuation row with empty start and end cells - its text is appended to the cue above as a new line rather than dropped. Fully empty rows are skipped.
Other ways in and out of a subtitle file:
A start time, an end time and the subtitle text. A numbering column is optional. Header wording is flexible - Start Time, Timecode In and In all mean the start of a cue - and letter case and surrounding spaces are ignored. Extra columns are ignored too.
No. The common wordings that subtitle editors and transcription tools export are recognised as they are, including Entry #, No., Cue, Start Time, Timecode Out, Subtitle Text, Caption and Dialogue. The full list is in the table above. If a header of yours is not on it, renaming that one column is enough.
No. If there is no numbering column, the cues are numbered from 1 in the order the rows appear. If there is one, its values are still replaced with clean sequential numbers, so gaps, duplicates or a counter starting at 0 do no harm.
No. A file name, an episode title or a note sitting above the header row is tolerated - the header row is located automatically within the first several rows.
HH:MM:SS,mmm and HH:MM:SS.mmm, the shorter MM:SS,mmm, plain HH:MM:SS without milliseconds, SMPTE timecode as HH:MM:SS:FF (or HH:MM:SS;FF for drop-frame), and Excel time values. A single column holding a whole range, such as 00:00:01,000 --> 00:00:03,000, is understood as well.
The first text column in the sheet, and the conversion result tells you which one that was. To export the other language, move its column in front of the first one or remove the column you do not need.
That row is skipped and the rest of the file is still converted, so one stray cell no longer costs you the whole conversion.
Yes. Both the modern XLSX format and the legacy XLS format are accepted. There are also dedicated XLSX to SRT and XLS to SRT pages if you prefer to start from one of those.
Each sheet becomes its own subtitle file. With several sheets the result is a ZIP archive containing one SRT file per sheet.
Either put a line break inside the text cell, or add a continuation row with empty start and end cells - its text is appended to the cue above as a new line.
Yes. Our SRT to Excel converter writes a layout this page reads without any renaming, so the round trip is straightforward.
Conversion is free to try, with larger files, batch conversion and API access covered by our pricing plans. Uploads are encrypted in transit, the source file is deleted right after the conversion, and the result is removed automatically within 24 hours.