<track> attaches timed text or timed data to a media element. It is void and refers to a WebVTT resource with src. A track’s kind tells the browser how that resource is intended to be used.
Observe synchronized descriptions
This silent demonstration has a short embedded WebVTT track. Play the clip and enable the English captions if the player does not display them by default.
HTML and CSS
HTML
<p>Transcript: a blue screen is shown for one second, then a green screen for one second. There is no sound.</p>
<video controls playsinline width="320" height="180" preload="metadata" aria-label="Color changes with timed text"><source src="data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAOTbW9vdgAAAGxtdmhkAAAAAAAAAAAAAAAAAAAD6AAAB9AAAQAAAQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAr10cmFrAAAAXHRraGQAAAADAAAAAAAAAAAAAAABAAAAAAAAB9AAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAKAAAABaAAAAAAAkZWR0cwAAABxlbHN0AAAAAAAAAAEAAAfQAAAgAAABAAAAAAI1bWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAABAAAAAgABVxAAAAAAALWhkbHIAAAAAAAAAAHZpZGUAAAAAAAAAAAAAAABWaWRlb0hhbmRsZXIAAAAB4G1pbmYAAAAUdm1oZAAAAAEAAAAAAAAAAAAAACRkaW5mAAAAHGRyZWYAAAAAAAAAAQAAAAx1cmwgAAAAAQAAAaBzdGJsAAAAwHN0c2QAAAAAAAAAAQAAALBhdmMxAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAKAAWgBIAAAASAAAAAAAAAABFUxhdmM2Mi4yOC4xMDIgbGlieDI2NAAAAAAAAAAAAAAAGP//AAAANmF2Y0MBZAAK/+EAGWdkAAqs2UKN+TARAAADAAEAAAMACA8SJZYBAAZo6+PLIsD9+PgAAAAAEHBhc3AAAAABAAAAAQAAABRidHJ0AAAAAAAADZgAAAAAAAAAGHN0dHMAAAAAAAAAAQAAAAgAABAAAAAAFHN0c3MAAAAAAAAAAQAAAAEAAABIY3R0cwAAAAAAAAAHAAAAAQAAIAAAAAABAABQAAAAAAEAACAAAAAAAQAAAAAAAAABAAAQAAAAAAEAAEAAAAAAAgAAEAAAAAAcc3RzYwAAAAAAAAABAAAAAQAAAAgAAAABAAAANHN0c3oAAAAAAAAAAAAAAAgAAALrAAAAGwAAABEAAAANAAAAEAAAABYAAAAPAAAADQAAABRzdGNvAAAAAAAAAAEAAAPDAAAAYnVkdGEAAABabWV0YQAAAAAAAAAhaGRscgAAAAAAAAAAbWRpcmFwcGwAAAAAAAAAAAAAAAAtaWxzdAAAACWpdG9vAAAAHWRhdGEAAAABAAAAAExhdmY2Mi4xMi4xMDIAAAAIZnJlZQAAA25tZGF0AAACrQYF//+p3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDE2NSByMzIyMiBiMzU2MDVhIC0gSC4yNjQvTVBFRy00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAyNSAtIGh0dHA6Ly93d3cudmlkZW9sYW4ub3JnL3gyNjQuaHRtbCAtIG9wdGlvbnM6IGNhYmFjPTEgcmVmPTMgZGVibG9jaz0xOjA6MCBhbmFseXNlPTB4MzoweDExMyBtZT1oZXggc3VibWU9NyBwc3k9MSBwc3lfcmQ9MS4wMDowLjAwIG1peGVkX3JlZj0xIG1lX3JhbmdlPTE2IGNocm9tYV9tZT0xIHRyZWxsaXM9MSA4eDhkY3Q9MSBjcW09MCBkZWFkem9uZT0yMSwxMSBmYXN0X3Bza2lwPTEgY2hyb21hX3FwX29mZnNldD0tMiB0aHJlYWRzPTMgbG9va2FoZWFkX3RocmVhZHM9MSBzbGljZWRfdGhyZWFkcz0wIG5yPTAgZGVjaW1hdGU9MSBpbnRlcmxhY2VkPTAgYmx1cmF5X2NvbXBhdD0wIGNvbnN0cmFpbmVkX2ludHJhPTAgYmZyYW1lcz0zIGJfcHlyYW1pZD0yIGJfYWRhcHQ9MSBiX2JpYXM9MCBkaXJlY3Q9MSB3ZWlnaHRiPTEgb3Blbl9nb3A9MCB3ZWlnaHRwPTIga2V5aW50PTI1MCBrZXlpbnRfbWluPTQgc2NlbmVjdXQ9NDAgaW50cmFfcmVmcmVzaD0wIHJjX2xvb2thaGVhZD00MCByYz1jcmYgbWJ0cmVlPTEgY3JmPTIzLjAgcWNvbXA9MC42MCBxcG1pbj0wIHFwbWF4PTY5IHFwc3RlcD00IGlwX3JhdGlvPTEuNDAgYXE9MToxLjAwAIAAAAA2ZYiEABP//urj/MstsBc2CqWqI419bldTT0hMRL3GW2p9vz+1MlfKUX2po6nubIEjAAQIDZx5AAAAF0GaJGOeB+ApQOgD/A/A3QS//rUqgB4wAAAADUGeQniCX+YIex60zYEAAAAJAZ5hdEEPACDgAAAADAGeY2pBD+j0PGnRfwAAABJBmmdJqEFomUwIIf/+qlUAPGEAAAALQZ6FRREsEf8AEXEAAAAJAZ6makEPACDh" type="video/mp4"><track src="data:text/vtt,WEBVTT%0A%0A00%3A00%3A00.000%20--%3E%2000%3A00%3A01.000%0ABlue%20screen%20%28silent%29%0A%0A00%3A00%3A01.000%20--%3E%2000%3A00%3A02.000%0AGreen%20screen%20%28silent%29%0A" kind="captions" srclang="en" label="English descriptions" default>Video playback is unavailable.</track></source></video>
CSS
video {
max-width: 100%;
height: auto;
}
Edit HTML or CSS to update the preview as you type. Copy code snippet copies the selected tab. Preview spacing and font defaults are not included.
Kinds and attributes
Captions include dialogue and meaningful sounds for readers who cannot hear them. Subtitles usually translate or transcribe dialogue for readers who may hear the audio. This silent fixture uses timed descriptions as a visible track exercise; it is not a substitute for reviewing real captions against real speech.
Kinds also include descriptions, chapters, and metadata. srclang identifies language and is required for subtitles. label names the track in the chooser. default is Boolean and requests default selection; do not mark multiple tracks as default.
Delivery and verification
WebVTT begins with WEBVTT and contains valid cue timings and text. Served tracks normally need an appropriate text/vtt type and origin/CORS setup. Avoid overlapping unrelated cues or captions that cover important information.
Copy the document, play through both seconds, and inspect video.textTracks. Native audio elements do not offer a video surface for visible captions; test your player and alternative transcript rather than assuming every kind is rendered automatically.
Sources and browser support
MDN: track describes the syntax and links to the specification and compatibility data. Check individual values in that table when supporting older browsers.