Convert CSV to SRT

Finished translating subtitles in Excel or Google Sheets? Export as CSV, drop it here, and get a clean SRT back.

Drop a CSV file here, or click to chooseYou can also paste text below. Multiple files are converted together.

🔒 Runs in your browser. Your files and text are not uploaded.

How to use the CSV to SRT Converter

  1. In your spreadsheet choose File → Save as → CSV (UTF-8). In Google Sheets use File → Download → Comma-separated values.
  2. Drop the CSV (or TSV) onto the box. The first row may be a header; names such as start, end, text, subtitle or index are recognised in several languages.
  3. Leave the delimiter on Auto-detect unless the preview looks wrong. If your times are plain numbers, tell the tool whether they are seconds or milliseconds.
  4. Convert and download the .srt. Warnings list any row that was skipped because of a bad time.

Expected columns

Three columns are enough: start, end and text. An optional first column with an index number is ignored and regenerated. Columns can be in any order if the file has a header row with recognisable names; without a header the tool assumes [index,] start, end, text.

start,end,text
00:00:01.000,00:00:03.500,Hello and welcome
00:00:04.000,00:00:06.250,"This line has a comma, so it is quoted"

Time formats it understands

  • 00:01:02,500 and 00:01:02.500 (SRT and VTT style)
  • 1:02.5 and 62.5 style short times
  • Plain decimal numbers (seconds, e.g. 62.5) or integers (milliseconds, e.g. 62500) — set the unit manually if auto-detect guesses wrong
  • Spreadsheet time cells exported as text such as 0:01:02

Be careful that your spreadsheet does not turn times into dates or round them; format the column as text before pasting.

Multi-line subtitles and special characters

A cell that contains a line break (Alt+Enter in Excel, Ctrl+Enter in Sheets) becomes a two-line subtitle. Quotes inside a cell must be doubled in CSV files — your spreadsheet does this automatically when it saves. The result is encoded as UTF-8, so accents and non-Latin text are preserved if the CSV itself was saved as UTF-8.

Checking the result

After converting, open the SRT in your video player or run Check SRT to find overlapping cues, lines that last too briefly and other timing problems that are easy to introduce in a spreadsheet.

Frequently asked questions

Which delimiter does it expect?

Auto-detect handles comma, semicolon and tab. Choose one manually if your text contains many of the others.

My accents turned into strange characters. What now?

The CSV was probably saved in a legacy encoding. Re-export as “CSV UTF-8”, or fix the file first with the encoding repair tool.

Can I convert several CSV files at once?

Yes. Drop multiple files and download them separately or as one ZIP.

What if some rows have empty text?

Rows with no text are skipped and reported, because empty cues can cause problems in some players.

Do start and end have to be in order?

No. The cues are sorted by start time, and a warning is shown if an end time is before its start time.

Is my spreadsheet uploaded?

No. It is read and converted locally.