CSV Subtitle Format
What this format can express
- Text styling
- Plain text only
- On-screen positioning
- No
- Karaoke timing
- No
- Line breaks inside a cue
- Yes
- Timeline
- Start and end time for every cue
- Timing resolution
- 1 ms
- Timing stored as frame numbers
- No
- Right-to-left text
- Yes
Examples
A typical CSV file, and what is read out of it
File
start,end,text
00:00:01.000,00:00:03.500,The quick brown fox.
00:00:04.000,00:00:06.250,"Jumps over, the lazy dog."
00:00:07.000,00:00:09.000,"Two lines here.
And a second one."
What it holds
3 cues, 4 lines of text
00:00:01.000 → 00:00:03.500
The quick brown fox.
00:00:04.000 → 00:00:06.250
Jumps over, the lazy dog.
00:00:07.000 → 00:00:09.000
Two lines here.
And a second one.
Outside the cues:
header start,end,text
delimiter ","The right-hand side is not a converted file — it is what this site reads out of the left-hand side, and what every conversion of that file starts from.
An awkward CSV file, and what is still read out of it
File
id,start,end,note,text
1,00:00:01,000,00:00:04,000,cue one,"Hello there, friend."
2,00:00:05.000,00:00:07.000,cue two,Second line.
bad,notatime,00:00:09.000,cue three,Unreadable start.
4,00:00:10.000,00:00:09.000,cue four,End before start.
5,00:00:12.000,00:00:14.000,cue five,Unquoted comma in text, right here.
What it holds
4 cues, 4 lines of text
00:00:01.000 → 00:00:04.000
Hello there, friend.
00:00:05.000 → 00:00:07.000
Second line.
00:00:10.000 → 00:00:10.001
End before start.
00:00:12.000 → 00:00:14.000
Unquoted comma in text, right here.
Outside the cues:
header id,start,end,note,text
delimiter ","
Reported while reading — repaired or skipped, never silently:
1 × rows whose start time could not be read (they were skipped)
1 × cues whose end time was not after their start time (they were given a 1ms duration)Real files arrive with a byte-order mark, Windows line endings, a stray line before a timecode, or a timecode that cannot be read at all. None of it throws: whatever cannot be understood is reported rather than dropped in silence.
Convert CSV Spreadsheet to another format
Each of these runs entirely in your browser. The labels say what that direction costs before you open it.
Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.
Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.
Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.
Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.
Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.
Nothing is lost in this direction — every feature of the source format has somewhere to go in the target format.
Converting into this format
- SubRip (SRT) → CSV Spreadsheet
- WebVTT (VTT) → CSV Spreadsheet
- Advanced SubStation Alpha (ASS) → CSV Spreadsheet
- SubStation Alpha (SSA) → CSV Spreadsheet
- YouTube SBV → CSV Spreadsheet
- SAMI (SMI) → CSV Spreadsheet
- LRC Lyrics → CSV Spreadsheet
- MicroDVD → CSV Spreadsheet
- TTML (Timed Text) → CSV Spreadsheet
- SubtitleMatrix JSON → CSV Spreadsheet
- Plain Text (TXT) → CSV Spreadsheet
CSV Spreadsheet is one of the subtitle formats this site handles, and this page is its reference: what it can store, what it cannot, and a page for every format you can convert it to.
The table above is the whole of it — there is no hidden feature list. When a row says no, that is exactly what is lost by converting into CSV, and each conversion page linked below says so before you open a file.
Every one of those conversions runs in your browser. Nothing is uploaded and no account is needed, which matters for material under an NDA, a patient record or a broadcast embargo.
Frequently asked questions
What is a CSV file?
`.csv` is a subtitle as a spreadsheet: a header row and then one row per cue with its start, end and text. It is what you reach for when a person has to read, edit or hand back timings in Excel or Google Sheets.
Does CSV store styling?
No — it stores cues, and a cue is text with two times on it. A spreadsheet cell holds text, so a tag left in one shows up as characters rather than as formatting.
Does every CSV cue store both a start and an end?
Yes, and a moment in a CSV file reads `00:00:04.126`. That is as fine as CSV goes — to the millisecond — and the number is exact, so a cue can be short, long, or overlap the next one without anything being implied.
Which formats can I convert CSV to without losing anything?
SRT, VTT, SBV, SMI, TTML and JSON — everything CSV can express, they can too. The table above is where that comes from: a row that says yes on both sides is a feature that survives. Every other direction drops something, and each of those pages names its own list.
Can I open a CSV file in a text editor?
Yes. Yes — though in practice you open it in a spreadsheet rather than a text editor. The columns are `start`, `end` and `text`, and the times read `00:00:01.000`.