Skip to content
BrowserPine

Subtitle Tools

VTT to SRT Converter

Convert a WebVTT .vtt subtitle into a broadly compatible UTF-8 SRT file locally in your browser, with clear notices for WebVTT-only features that SRT cannot retain.

Convert a WebVTT subtitle

Choose one VTT file, review its cues and WebVTT-only features, then create a UTF-8 SRT file.

Processed locally

Local processing

Your WebVTT file stays on your device

The VTT file is decoded, validated, parsed, and converted inside your browser. BrowserPine does not upload or store the subtitle text, and the converter needs no server API.

Read how BrowserPine handles files

Three simple steps

How to convert VTT to SRT

Choose your VTT file

Select or drop one WebVTT subtitle. Valid UTF-8 and an optional UTF-8 byte-order mark are handled automatically.

Review compatibility

Check cue timing, identifiers, settings, WebVTT blocks, the first converted cues, and any feature-loss notices before continuing.

Download SRT

Create a sequentially numbered UTF-8 SRT file with comma milliseconds, CRLF line endings, and no upload.

What changes from WebVTT to SRT?

WebVTT timestamps use a dot before milliseconds and can omit the hour field. SRT uses HH:MM:SS,mmm, so 01:02.345 becomes 00:01:02,345 without shifting the cue.

SRT cues receive new sequential numbers starting at 1. WebVTT cue identifiers are not reused as SRT numbers, while valid cue order, exact start and end milliseconds, multiline text, Unicode, and overlaps remain unchanged.

WebVTT-only features and compatibility

SRT cannot represent WebVTT header metadata, NOTE, STYLE, or REGION blocks, cue positioning settings, or identifier semantics. The converter counts and reports these structures rather than claiming a perfectly lossless conversion.

Common bold, italic, and underline tags are retained. Class, voice, language, ruby, and inline karaoke timestamp markup is removed while readable text remains. Unknown markup is escaped as visible text and never executed.

Why convert WebVTT to SRT?

SRT is widely accepted by subtitle editors, desktop media players, publishing tools, and services that do not support WebVTT-specific presentation features.

This tool converts the timed-text document only. It does not upload media, burn captions into video, or change the original VTT file.

Encoding and safe validation

Valid WebVTT is expected to use UTF-8. UTF-8 with an optional BOM is detected automatically, and output is always UTF-8 without a BOM. An explicit legacy-encoding fallback is available for malformed real-world files without guessing.

Invalid headers, ambiguous or backwards timing, binary content, inseparable cue blocks, excessive input, and X-TIMESTAMP-MAP streaming metadata are blocked. Timestamp maps are not ignored because doing so could silently misalign every cue.

Common questions

VTT to SRT FAQ

Are my VTT subtitles uploaded?

No. Decoding, parsing, cue-text conversion, and SRT creation happen locally in your browser. BrowserPine does not send or store the subtitle text.

What is the difference between VTT and SRT timestamps?

WebVTT uses a dot before milliseconds and may omit the hour field. SRT uses HH:MM:SS,mmm. The converter changes the syntax while preserving the exact millisecond values.

Does VTT to SRT preserve cue positioning and styles?

No. SRT cannot represent WebVTT cue settings, STYLE blocks, or REGION blocks. The tool reports the affected counts and preserves normal cue timing and readable text.

What happens to WebVTT voice, class, language, and ruby tags?

Their unsupported semantics and markup are removed while readable cue text remains. Bold, italic, and underline tags are retained where compatible.

Can this converter handle X-TIMESTAMP-MAP?

No. Files with mapped streaming timestamps are blocked with a specific message because ignoring the map could produce a silently misaligned SRT file.

What encoding does the SRT download use?

The downloaded SRT uses UTF-8 without a byte-order mark, sequential cue numbers, comma milliseconds, and consistent CRLF line endings.

Keep working

Available

SRT to VTT

Convert SubRip SRT subtitles to UTF-8 WebVTT locally in your browser.

View tool

Available

ASS / SSA to SRT

Convert ASS or SSA dialogue timing and visible text to simpler SRT subtitles.

View tool

Available

SRT Cleaner

Normalize SRT structure and preview optional formatting, SDH, speaker-label, or duplicate cleanup.

View tool