How do I add subtitles to an MP4 file?
Two approaches: burn them in (subtitles become part of the video pixels — permanent, always visible) or add a soft subtitle track (SRT/VTT stored alongside the MP4 — toggleable). Use burn-in for social, soft tracks for YouTube and Vimeo.
Detail
Adding subtitles to an MP4 file means either embedding the text permanently into the video pixels (burned-in, also called hardcoded or open captions) or attaching a subtitle file alongside the MP4 (soft captions, closed captions, sidecar file). Burned-in approach: upload your MP4 to a caption tool (SoCaptions), generate or paste the transcript, style the captions, and export a new MP4 with the text baked in. The result is a single MP4 where the captions are visible to every viewer on every platform. Soft caption approach: create an SRT or VTT file with matching timestamps, and upload both the MP4 and the SRT to a platform like YouTube or Vimeo that displays SRT caption tracks in its player. The viewer can then toggle captions on or off. For social platforms (TikTok, Reels, Shorts, X, LinkedIn), burned-in is the only reliable option — most don't support uploadable caption files for short-form content. For YouTube long-form, Vimeo, and LMSes, soft SRT is the preferred delivery.
| Method | Visible by default | Toggleable | Best for |
|---|---|---|---|
| Burned-in (hardcoded) | Always | No | TikTok, Reels, Shorts, X |
| Soft SRT track | Only if viewer enables | Yes | YouTube, Vimeo, LMS |
| Both (recommended) | Always (burned-in) | Yes (SRT) | All platforms |
Burn them in for short-form social (TikTok, Reels, Shorts, X). Deliver SRT for long-form (YouTube, Vimeo, courses, sermons).
SRT for almost everything: video editors, YouTube, Vimeo, every major platform. VTT only when you're embedding video on a website with HTML5 <track>.