Skip to main content
LrcSong
WebVTT → TTML converter

Convert WebVTT to TTML

Drop in a WebVTT file and get clean, valid TTML back in milliseconds. Runs entirely in your browser — your file never uploads.

Input

WebVTT file

Subtitle file

Output

TTML file

Spec-compliant

Free · in your browserBidirectionalSpec-compliant output
  • Runs 100% in your browser — nothing uploads
  • No file size limits

See it in action

WebVTT in, TTML out

What you put in what you get back

WebVTT input

What you provide

WEBVTT

00:00:12.340 --> 00:00:15.780
Hello, it's me

00:00:15.780 --> 00:00:19.200
I was wondering if after all

00:00:19.200 --> 00:00:22.840
these years you'd like to meet

TTML output

What you receive

<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml">
  <body>
    <div>
      <p begin="00:00:12.340" end="00:00:15.780">Hello, it's me</p>
      <p begin="00:00:15.780" end="00:00:19.200">I was wondering if after all</p>
      <p begin="00:00:19.200" end="00:00:22.840">these years you'd like to meet</p>
    </div>
  </body>
</tt>

Step-by-step guide

How to use this tool

  1. 01

    Paste or drop WebVTT

    Any valid WebVTT file works — paste the text or drag the file in.

  2. 02

    Hit Convert

    We parse the WebVTT structure and emit valid TTML.

  3. 03

    Verify the output

    Compare side-by-side. Use the Switch Direction button to round-trip and sanity-check.

  4. 04

    Download TTML

    Filename auto-suffixed with .ttml so it's ready to drop into your editor.

Key features

Why use this tool

100% in your browser

We never see your file. Conversion runs as JavaScript in the page you're reading.

Round-trip safe

Convert WebVTT → TTML → WebVTT and you should get the same content back, line-for-line.

Spec-compliant output

TTML files validate against the TTML reference parsers.

Bidirectional

Reverse direction (TTML → WebVTT) is one click away — no need to bookmark a different page.

Common use cases

Who this tool is for

From WebVTT

HTML5 <video>, JW Player, Plyr, Video.js.

To TTML

Apple Netflix, BBC iPlayer, EBU-TT pipelines.

Localization workflows

Translate once in your preferred format, ship to every platform.

Format mismatch fixes

Got a file in the wrong format? Convert in seconds, no editor required.

Questions answered

Frequently asked questions

Web Video Text Tracks — HTML5 native subtitle format with cue settings and styling.

Need to go the other way?

TTML → WebVTT works the same way — we even have a button to switch direction.

We use cookies for auth and, optionally, privacy-friendly analytics. You can accept, decline, or read our privacy policy.

Install LrcSong
Add to your home screen for offline tools and faster startup.