Subtitle Converter
Convert SRT to WebVTT and VTT to SRT, shift timings, fix frame rates and overlaps, and spot broken cues. Free, instant and private — nothing is uploaded.
- No upload — 100% private
- Instant, on your device
- Free, no sign-up
- Works offline once loaded
How it works
How to use Subtitle Converter
Paste subtitles or open a .srt or .vtt file — the input format is detected automatically.
Choose the output format: SRT or WebVTT.
Optionally shift every timing (for example -1500 ms), convert the frame rate, renumber cues or fix overlaps.
Check the cue list for warnings, then copy the result or download the new subtitle file.
Why use it
Why use our Subtitle Converter tool
SRT ↔ WebVTT both ways
Timestamps, numbering, line breaks and basic <b>, <i> and <u> formatting are converted correctly, and & and < are escaped for WebVTT.
Forgiving parser
Handles byte-order marks, Windows and old Mac line endings, missing blank lines, hour-less timestamps and dots or commas before milliseconds.
Re-sync timings
Shift every cue earlier or later by any number of milliseconds, or convert between 23.976, 24, 25 and 29.97 fps.
Fix common problems
Renumber cues, trim overlapping cues and see warnings for zero-length, empty or out-of-order cues before you upload them anywhere.
Keeps WebVTT extras
Header metadata, NOTE comments, STYLE blocks, cue ids and positioning settings survive a VTT-to-VTT edit.
Private and offline
Subtitles are processed in your browser and never uploaded — safe for unreleased films and client videos.
FAQ
Frequently asked questions
What is the difference between SRT and VTT?
Both are plain-text subtitle formats. SRT numbers every cue and uses a comma before milliseconds (00:00:01,000). WebVTT starts with a WEBVTT line, uses a dot (00:00:01.000), allows optional cue ids, comments and positioning, and is the format HTML5 video players and YouTube-style web players expect.
How do I fix subtitles that are out of sync?
If every line is early or late by the same amount, enter that difference in Shift timings — a positive number shows subtitles later, a negative number earlier. If they drift further out of sync over time, the frame rate is wrong: pick the matching conversion such as 23.976 → 25 fps.
Which frame-rate conversion do I need?
Pick the frame rate the subtitles were made for first, then the frame rate of your video. Subtitles made for a 23.976 fps release that run slow on a 25 fps (PAL) video need 23.976 → 25, which makes every timing about 4% earlier.
What does Fix overlaps do?
It sorts cues by start time and shortens any cue that is still on screen when the next one starts, so two subtitles never show at once. Many players and upload sites reject or garble overlapping cues.
Will formatting and positioning be kept?
Bold, italic and underline tags are kept in both formats. WebVTT voice tags become "Name: text" in SRT, and SRT font colours and {\an8} position codes are removed because WebVTT doesn't support them. WebVTT cue settings are kept when the output is WebVTT.
Are my subtitle files uploaded?
No. Parsing, conversion and timing changes all happen locally in your browser, so nothing leaves your device.
Related tools
Text Cleaner
Fix messy text: extra spaces, line breaks, hidden characters.
Find and Replace
Search and replace text with live highlights and regex support.
Word Counter
Count words, characters, sentences and reading time.
Unix Timestamp Converter
Convert epoch timestamps to dates and back in any time zone.
Case Converter
UPPERCASE, Title Case, camelCase, snake_case and more in one click.
Lorem Ipsum Generator
Placeholder paragraphs, sentences, words or HTML lists in a click.
Remove Duplicate Lines
Delete repeated lines from lists, keep first or last occurrence.
Text Sorter
Sort lines A–Z, naturally, by length, reversed or shuffled.