Eine VTT-Datei, genauer WebVTT, ist eine reine Textdatei mit Untertiteln für Videos im Web. Sie beginnt immer mit der Zeile WEBVTT, danach folgen Zeitangaben wie 00:00:03.400 --> 00:00:06.800 und der Text, der in dieser Zeit erscheint. Anders als bei SRT steht vor den Millisekunden ein Punkt, die Datei muss als UTF-8 gespeichert sein, und sie kann Position, Stil und Sprecher festlegen. Öffnen kannst du sie mit jedem Texteditor, abspielen mit VLC oder im Browser. Wir haben eine deutsche Testdatei geschrieben, in Chrome abgespielt und vierzehn fehlerhafte Varianten geladen, um zu sehen, was die Untertitel verschwinden lässt.

So ist eine VTT-Datei aufgebaut

Eine WebVTT-Datei mit der Kopfzeile WEBVTT, einem Kommentar NOTE, einem STYLE-Block und vier deutschen Untertiteln mit Zeitangaben, Einstellungen wie line:0 und Tags wie i und v Lea, darunter eine Legende
Unsere Beispieldatei rechnung-demo.vtt: dieselben vier Untertitel wie in unserem SRT-Beispiel, gespeichert als UTF-8.
  • Kopfzeile: Die erste Zeile lautet WEBVTT. Dahinter darf nach einem Leerzeichen ein Titel stehen, zum Beispiel WEBVTT - Teammeeting.
  • Untertitel: Jeder Block besteht aus einer freiwilligen Kennung, der Zeitangabe, einer oder mehreren Textzeilen und einer Leerzeile. Die Kennung darf eine Zahl oder ein Wort sein, muss aber laut Spezifikation in der Datei eindeutig sein.
  • Zeitangabe: Stunden, Minuten, Sekunden und genau drei Stellen Millisekunden, mit einem Punkt davor. Die Stunden dürfen fehlen, also 00:03.400. Zwischen Beginn und Ende steht der Pfeil -->.
  • Einstellungen: stehen hinter der Zeitangabe. line:0 setzt den Untertitel an den oberen Bildrand, align:start richtet ihn links aus, position verschiebt ihn waagerecht.
  • Kommentare und Stile: Ein Block, der mit NOTE beginnt, wird nie angezeigt. Ein STYLE-Block enthält CSS für die Untertitel und muss vor dem ersten Untertitel stehen.
  • Tags im Text: <i>, <b> und <u> für kursiv, fett und unterstrichen, <v Name> für die sprechende Person. Die Zeichen < und & im Text schreibst du als &lt; und &amp;.

Die Spezifikation des W3C hatte im Oktober 2026 noch den Status eines Entwurfs einer Kandidatenempfehlung (Candidate Recommendation Draft); Browser setzen sie trotzdem seit Jahren um.

VTT und SRT: die Unterschiede

Links die SRT-Datei mit Nummern und Kommas in den Zeitangaben, rechts dieselben Untertitel als VTT mit Kopfzeile WEBVTT, Punkten, Einstellungen und einem Sprecher-Tag, darunter eine Tabelle der Unterschiede
Dieselben vier Untertitel als SRT und als VTT. In der SRT-Fassung steht die Sprecherin im Text, in der VTT-Fassung als Tag.

Beide Formate speichern dasselbe: wann welcher Text erscheint. VTT ist aus SRT entstanden und kann mehr. Welches du brauchst, hängt vom Ziel ab:

  • Eigener Videoplayer auf einer Website: Das HTML-Element <track> lädt WebVTT. Unsere SRT-Datei hat Chrome als Untertitelspur abgelehnt.
  • YouTube: nimmt beide an. Bei SRT erkennt YouTube laut Hilfe keine Formatierung, bei WebVTT unterstützt es Positionen und <b>, <i> und <u>. Für die erste eigene Untertiteldatei empfiehlt YouTube trotzdem SRT oder SBV.
  • Vimeo: unterstützt beide und empfiehlt WebVTT, kodiert als UTF-8.
  • LinkedIn: verlangt laut Hilfe eine SRT-Datei.

Wie SRT im Detail funktioniert, steht in unserem Ratgeber zur SRT-Datei.

So zeigt Chrome unsere Datei an

Vier Standbilder eines Testvideos mit den Untertiteln aus unserer VTT-Datei: oben im Bild, unten mittig in zwei Zeilen, links unten kursiv, und eine Zeile in gelber Schrift
Unsere Datei unverändert als Untertitelspur in Chrome, vier Zeitpunkte. Das Testvideo hat Chrome selbst aufgenommen, 14. Oktober 2026.

Chrome hat alle Angaben umgesetzt: den ersten Untertitel oben im Bild, den zweiten unten in der Mitte, den mit der Kennung „rechnung“ linksbündig ab einem Zehntel der Breite und kursiv, und Leas Satz in der Farbe aus dem STYLE-Block. Ihren Namen zeigt Chrome nicht an; <v Lea> dient nur der Zuordnung und Gestaltung. Die Farbklassen aus der Spezifikation, etwa <c.red>, hat Chrome in einem zweiten Test dagegen nicht eingefärbt; Farben setzt du zuverlässig über einen STYLE-Block. Ob andere Player Positionen und Stile übernehmen, prüfst du am besten dort.

Was Untertitel verschwinden lässt

Tabelle mit vierzehn Varianten einer VTT-Datei und dem Ergebnis in Chrome: korrekte Varianten mit drei von drei Untertiteln, Windows-1252 mit Ersatzzeichen, fehlende oder falsche Kopfzeile mit Fehler, Kommas und falsche Millisekunden ohne Fehlermeldung
Eine deutsche Testdatei mit drei Untertiteln, in jeder Variante nur an einer Stelle verändert, in Chrome geladen. 14. Oktober 2026.
  • Ohne korrekte Kopfzeile lädt nichts. Fehlt WEBVTT, ist es kleingeschrieben oder folgt direkt ein Bindestrich wie in „WEBVTT-Datei“, bricht Chrome mit einem Fehler ab.
  • Kommas sind tückisch. Mit Kommas in allen Zeitangaben lädt Chrome die Datei ohne Fehlermeldung, zeigt aber keinen einzigen Untertitel. Ein einzelnes Komma lässt nur diesen Untertitel verschwinden.
  • Kleinigkeiten zählen. Zwei statt drei Stellen Millisekunden oder ein Gedankenstrich statt der zwei Bindestriche im Pfeil kosten jeweils den betroffenen Untertitel.
  • Umbenennen reicht nicht. Eine SRT-Datei mit der Endung .vtt hat Chrome abgelehnt.

Erlaubt sind dagegen eine Byte Order Mark am Dateianfang, ein Titel hinter WEBVTT und Zeitangaben ohne Stunden.

Umlaute: VTT ist immer UTF-8

Zwei Standbilder desselben Testvideos: links der Untertitel Die Rechnung über den Betrag ist fällig korrekt, rechts mit Ersatzzeichen statt ü, ä und Euro-Zeichen
Dieselbe VTT-Datei als UTF-8 und als Windows-1252 gespeichert, in Chrome abgespielt, 14. Oktober 2026.

Bei SRT ist die Kodierung nicht festgelegt, deshalb können Player wie VLC eine andere einstellen. Bei WebVTT schreibt die Spezifikation UTF-8 vor, und Browser lesen die Datei immer so. In unserem Test half es nicht einmal, dass der Server die Kodierung „windows-1252“ ausdrücklich mitschickte: Aus ü, ä, ß und dem Euro-Zeichen wurde trotzdem �. Speichere VTT-Dateien deshalb immer als UTF-8. Wie das im Windows-Editor und in TextEdit geht, steht im SRT-Ratgeber.

VTT-Datei öffnen

  • Lesen und bearbeiten: mit jedem Texteditor, unter Windows mit dem Editor, auf dem Mac mit TextEdit.
  • Mit Video abspielen: VLC kann WebVTT seit Version 2.2 und hat die Unterstützung mit Version 3.0 neu geschrieben, inklusive Stilangaben. Liegt die Datei im selben Ordner und heißt wie das Video, lädt VLC sie automatisch.
  • Im Browser: nur über eine Webseite mit Videoplayer und <track>-Element. Liegt die Untertiteldatei auf einer anderen Domain als die Seite, hat Chrome sie in unserem Test nur geladen, wenn das Video-Element das Attribut crossorigin trug und der Server den Zugriff per CORS erlaubte.
  • Mit Vorschau bearbeiten: Subtitle Edit, kostenlos und quelloffen, öffnet VTT-Dateien, zeigt sie zum Video an und speichert sie in andere Formate.

VTT in SRT umwandeln

Am einfachsten mit Subtitle Edit: Datei öffnen, als Format „SubRip“ wählen und über „Datei“ → „Speichern unter...“ als SRT speichern. Positionen und Stile gehen dabei verloren, weil SRT sie nicht kennt.

Ohne Programm geht es mit Suchen und Ersetzen in einem Editor, der reguläre Ausdrücke kann, etwa Notepad++ („Suchen“ → „Ersetzen …“, Suchmodus „Reguläre Ausdrücke“) oder Visual Studio Code. Die Reihenfolge ist wichtig:

  1. Lösche die Kopfzeile und alle NOTE- und STYLE-Blöcke.
  2. Ergänze fehlende Stunden: Suche (?<![\d:])(\d\d:\d\d\.\d\d\d), ersetze durch 00:$1.
  3. Ersetze den Punkt nur in den Zeitangaben: Suche (\d\d:\d\d:\d\d)\.(\d\d\d), ersetze durch $1,$2.
  4. Lösche die Einstellungen hinter der Zeit: Suche ^(\d\d:\d\d:\d\d,\d\d\d --> \d\d:\d\d:\d\d,\d\d\d)[ \t].*$, ersetze durch $1.
  5. Ersetze Kennungen durch fortlaufende Nummern ab 1. Bei langen Dateien übernimmt das Subtitle Edit.
  6. Mache aus <v Name> ein „Name:“ und lösche die übrigen Tags außer <i>, <b> und <u>. Schreibe &lt; und &amp; wieder als < und &.
  7. Speichere als UTF-8 mit der Endung .srt.
Eine VTT-Datei mit zwei Sprechern, daneben die daraus erzeugte SRT-Datei und eine reine Textfassung mit Namen; darunter das falsche Ergebnis, wenn jeder Punkt durch ein Komma ersetzt wird, mit beschädigtem Betrag, Abkürzung und Datum
Unsere Umwandlungsschritte an einem kurzen Besprechungstranskript, Ausgabe unverändert. Unten: was passiert, wenn man alle Punkte ersetzt.

Ersetze die Punkte nie blind in der ganzen Datei. Im Deutschen stecken Punkte in Beträgen, Abkürzungen und Datumsangaben: Aus dem Betrag „1.234,56“ wird dann „1,234,56“, aus „z. B.“ wird „z, B,“ und aus „25.10.2026“ wird „25,10,2026“.

VTT in Text umwandeln, etwa aus Teams

Microsoft Teams bietet Besprechungstranskripte als .docx- oder VTT-Datei zum Herunterladen an, laut Microsoft standardmäßig für Organisatoren und Mitorganisatoren. Die Sprecher stehen in der VTT-Datei laut Microsofts Entwicklerdokumentation als <v Name>-Tags. Brauchst du nur den Text, ist die .docx-Datei der kürzeste Weg. Aus einer VTT-Datei wird Text, wenn du Kopfzeile, Kommentare, Kennungen und alle Zeilen mit --> löschst, <v Name> durch „Name:“ ersetzt, die übrigen Tags entfernst und die Zeilen jedes Untertitels zusammenführst. Subtitle Edit kann Untertitel auch direkt als Text exportieren.

Aus dem Transkript ein Protokoll zu machen, beschreibt unser Ratgeber zum Besprechungsprotokoll. Lädst du Transkripte bei einem Online-Konverter hoch, gibst du personenbezogene Daten an einen Dritten weiter; wandle sie besser lokal um.

Wo du VTT-Dateien einsetzen kannst

  • YouTube: Upload als SRT oder WebVTT. Nur bei WebVTT unterstützt YouTube Positionen und die Tags <b>, <i> und <u>.
  • Vimeo: SRT und WebVTT, empfohlen wird WebVTT, kodiert als UTF-8.
  • LinkedIn: nur SRT.
  • Microsoft Stream: nimmt WebVTT an, die erste Zeile muss WEBVTT lauten. Kommentare und Stile entfernt Stream beim Hochladen, und eine Datei darf höchstens 4 MB groß sein.
  • PowerPoint: fügt seit Office 2016 Untertitel im WebVTT-Format in Videos ein, SRT erst seit Version 2411.
  • Zoom: speichert Audiotranskripte von Cloud-Aufzeichnungen laut englischer Hilfe im VTT-Format.