SRT Caption Guide: Subtitle Formats, Timing, and Accessibility
Captions are no longer optional — YouTube, Netflix, and most social platforms require them for accessibility. Whether you're a YouTuber, course creator, or filmmaker, understanding subtitle formats and timing is essential.
Common Subtitle Formats
| Format | Platform | Notes |
|---|---|---|
| SRT | YouTube, VLC, most players | Most widely supported |
| VTT (WebVTT) | HTML5 video, web players | Like SRT with CSS styling support |
| TXT (plain text) | Transcripts, AI tools | No timing info — needs conversion |
SRT Format Structure
1
00:00:01,000 --> 00:00:04,000
Hello, welcome to this video.
2
00:00:04,500 --> 00:00:07,000
Today we'll learn about captions.
Characters Per Second (CPS)
CPS measures reading speed. If captions appear too fast, viewers can't read them:
- 15 CPS — Comfortable for most viewers
- 17 CPS — Maximum recommended
- 20+ CPS — Too fast — split into two lines or extend duration
Common Issues and Fixes
- Timing drift — Apply a time offset to shift all captions forward or back
- Long lines — Wrap at 42 characters per line, max 2 lines
- Format conversion — SRT ↔ VTT conversion is straightforward
- Auto-generated errors — YouTube's auto-captions often have timing and accuracy issues
Format and fix Your Captions
Use our SRT Caption Formatter to convert between SRT/VTT/TXT, apply time offsets, wrap long lines, and check CPS — auto-detects format.
Worked Example: Fixing a 2.5-Second Drift and a Fast Cue
A 12-minute talking-head video was cut to remove a 2.5-second intro, but the captions were never updated — every cue now appears 2.5 seconds early. Fixing it:
- Load the SRT into a formatter and apply a +2.5s offset to all cues:
00:00:01,000becomes00:00:03,500 - Scan for cues over the CPS limit. One cue holds 68 characters across 2.5 seconds — 27 CPS, far above the 17 CPS ceiling
- Split it into two cues of 34 characters each, 2.5 seconds apiece — now 13.6 CPS, comfortable to read
- Wrap any line over 42 characters, then renumber the cues sequentially
| Cue | Duration | Characters | CPS | Verdict |
|---|---|---|---|---|
| Before (single cue) | 2.5s | 68 | 27.2 | Too fast |
| After (split in two) | 2.5s each | 34 | 13.6 | Comfortable |
Total time for the whole file: about five minutes with the SRT Caption Formatter, versus an hour of nudging individual cue timings by hand in a text editor.
Common Mistakes
- Editing cue numbers but not timestamps — the sequence numbers are just labels; players order cues by timestamps. Renumbering without fixing times changes nothing on screen.
- Creating overlapping cue times — two cues occupying the same milliseconds render stacked or flicker. Leave a small gap of 50-100ms between consecutive cues.
- Using periods instead of commas in SRT — SRT wants
00:00:01,000while WebVTT wants00:00:01.000. Copying the wrong one breaks parsing on strict players. - Leaving one line of 90 characters — viewers read the start, lose the end, and give up. Hard-wrap at 42 characters per line, two lines maximum.
- Uploading captions without a final watch-through — auto-generated timing errors, missing punctuation, and unmarked speaker changes are obvious when reviewing at 1.5× playback and invisible in the raw file.
Frequently Asked Questions
Should I burn captions into the video or use SRT?
Use SRT whenever the platform supports it. Side-loaded captions can be toggled, indexed by search, translated, and fixed later. Burned-in text is permanent, hurts aspect-ratio flexibility, and cannot be extracted for SEO.
How do I convert SRT to VTT?
Change the header to WEBVTT, replace the comma in each timestamp with a period, and delete the sequence numbers (they are optional in VTT). Most converters do this in one click, and the result plays in any HTML5 video element.
What CPS should I target for accessibility?
Aim for 15 CPS or less. Guidance for caption readability suggests viewers should not have to rush; 20+ CPS forces skim-reading, which defeats the purpose for deaf and hard-of-hearing viewers who rely on captions entirely.
Why do my captions look fine locally but misaligned on YouTube?
YouTube re-processes uploaded SRT files and can shift timing by a frame or two, and preview playback can differ from the published version. Always re-watch a minute of the published video at the start, middle, and end before calling it done.
The Bottom Line
- SRT is the most universal subtitle format
- Keep CPS under 17 for readable captions
- Max 2 lines, 42 characters per line
- Always check auto-generated captions for timing and accuracy errors
Disclaimer: This guide is for informational purposes only.
Related Free Tools
Put this guide into practice with our free browser-based tools — no signup, no upload, 100% local processing.