How to Add Closed Captions to a Video
Learn how to add closed captions to a video: prepare a transcript, time it, export an SRT or WebVTT file, attach it as a track and check sync and display.
Closed captions make a video usable without sound and accessible to viewers who are deaf or hard of hearing. This guide covers the general workflow that applies to most editors, players and video platforms: preparing the text, timing it, saving a caption file and attaching it to the video. Exact menus differ between tools, so follow the documentation of the software or platform you actually use for the individual controls.
Before you start
Decide which kind of captions you need. Closed captions are a separate text track that viewers can switch on or off. Open captions, often called burned-in captions, are drawn into the picture itself and cannot be turned off. This guide focuses on closed captions and mentions burning in only as an alternative for destinations that do not accept caption tracks.
- Finish the edit first. If you cut or move footage after captioning, every caption after the change will be out of sync.
- Keep an untouched copy of the original video file so every step stays reversible.
- Find out which caption formats your destination accepts. Video platforms, media players and editing applications each support their own set of formats and attachment methods.
- Check where transcription happens. Some tools generate captions on your own computer, while others upload the audio or the whole video to an online service. Read the tool's documentation and privacy terms before uploading private or confidential recordings rather than assuming the file stays local.
- Have a plain text editor or a dedicated subtitle editor available for corrections.
The two most widely supported caption formats are SRT and WebVTT. Both are plain text files stored alongside the video, usually called sidecar files. Some container formats, such as MP4 and MKV, can also carry caption tracks inside the video file. Which of these options works depends on the player or platform, not on the recording format of your original footage.
Step-by-step instructions
1. Create the transcript
You can type the transcript manually or use automatic speech recognition built into your editor or video platform. Automatic transcripts save time but usually need correction, especially for names, technical terms, overlapping speakers and poor audio. Unlike plain subtitles, closed captions should also describe meaningful non-speech audio, for example [music], [door slams] or [laughter], and identify speakers when it is not obvious who is talking.
2. Split and time the captions
Break the transcript into short cues of one or two lines, each shown while the matching words are spoken. Split at natural pauses or phrase boundaries rather than in the middle of a phrase, and leave each cue on screen long enough to read comfortably. Subtitle editors and many video editors let you adjust start and end times against the audio waveform, which is the most reliable way to align text with speech.
3. Export a caption file
Save the captions in the format your destination supports. An SRT file contains numbered cues; each cue has a timing line such as 00:00:01,000 --> 00:00:03,500, followed by the caption text and a blank line. A WebVTT file begins with the line WEBVTT and uses a period instead of a comma before the milliseconds. Save the file with UTF-8 text encoding so accented letters and non-Latin scripts display correctly.
4. Attach the captions to the video
- Upload as a separate track: most video platforms let you upload a caption file alongside the video and assign it a language. This keeps captions editable and switchable.
- Add a soft subtitle track to the file: a muxing or editing tool can add the caption file as a track inside a container such as MP4 or MKV. Muxing normally copies the existing video and audio streams without re-encoding them, so picture quality is unchanged.
- Load a sidecar file in a local player: some media players automatically load a caption file stored in the same folder with the same base name as the video. Check your player's documentation to confirm this behaviour.
- Burn in the captions only when necessary: this produces open captions, requires re-encoding the whole video and can reduce quality if the bitrate or encoding settings are lower than the original. Keep your caption file and original video so you can redo it.
Check the output
Play the finished video with captions switched on and confirm that the track can also be switched off, which is what makes the captions closed. Check synchronisation near the beginning, in the middle and at the end. Captions that are correct at the start but drift progressively later or earlier usually indicate a timing or frame rate mismatch between the caption file and the version of the video it is attached to.
- Read the full text for spelling, names and missing sound descriptions.
- Look for garbled or replaced characters, which point to an encoding problem.
- Test on the devices and players your audience is likely to use. Players render caption tracks with their own fonts and styles, and some ignore positioning or styling information in the file.
- For burned-in captions, check legibility at the final resolution and after the platform's own compression.
Common problems and next steps
Captions do not appear: confirm the destination supports the file format, that the caption track is enabled in the player, and, for sidecar files, that the name and location match what the player expects. Some platforms also need time to process an uploaded caption file before it becomes available.
All captions are early or late by the same amount: apply a global time offset in a subtitle editor instead of retiming each cue. If the gap grows over time, retime against the exact video version you are publishing, or check whether the captions were made for a version with a different frame rate.
Strange symbols instead of letters: open the caption file in a text editor and save it again with UTF-8 encoding, then reattach it.
Captions vanish after editing or converting the video: some editors and converters drop embedded subtitle tracks when exporting. Keep the sidecar caption file as your master copy and reattach it after any re-export.
Format not accepted: many subtitle editors can convert between SRT and WebVTT. Once your main captions are working, you can add translated caption files as extra tracks, each labelled with its language, using the same attachment method.