- subtitles
- chrome
- guides
How to add subtitles to a video in Chrome (SRT, VTT, ASS)
Learn how to add subtitles to a video in Chrome: SRT vs VTT vs ASS, Live Caption, subtitle extensions, and how to fix out-of-sync or garbled subtitles.
- By Better Stream Team
- Published
- 7 min read

Want to add subtitles to a video in Chrome? Maybe you're learning a language, watching with the sound low, or the film you're entitled to watch just didn't come with the language you need. The good news: you don't need to re-encode anything. This guide covers the three subtitle formats you'll meet (SRT, VTT and ASS), the built-in Chrome options, how to load your own subtitle file, and how to fix the classic problems: subtitles out of sync, strange characters and missing styling.
SRT, VTT and ASS: which subtitle format is which
Subtitle files are small text files that sit next to the video. The three common formats look different and do different things.
SRT (SubRip) is the most common. Numbered blocks, a timestamp line with commas, then the text:
1
00:00:12,400 --> 00:00:15,000
Keep the engine running.
VTT (WebVTT) is the web standard, defined by the W3C WebVTT specification. It starts with a WEBVTT header and uses dots in timestamps. It supports basic positioning and styling and is the only format Chrome's built-in <track> element understands.
WEBVTT
00:00:12.400 --> 00:00:15.000
Keep the engine running.
ASS (Advanced SubStation Alpha) is what anime fansubbers and professional typesetters use. It has named styles, fonts, colors, outlines, exact on-screen positions, and even karaoke effects. If you've seen signs translated in place on screen, that was probably ASS.
| Format | File extension | Styling | Positioning | Plays natively in Chrome | Typical use |
|---|---|---|---|---|---|
| SRT | .srt |
Minimal (bold, italic) | No | No | Most downloadable subtitles |
| WebVTT | .vtt |
Basic (CSS-like) | Basic | Yes, via <track> |
Websites and streaming players |
| ASS / SSA | .ass, .ssa |
Full (fonts, colors, outlines) | Full | No | Anime, typeset signs, karaoke |
The practical takeaway: Chrome on its own handles VTT only when the website wires it up. To add an SRT or ASS file to a video yourself, you need a player or extension that brings its own subtitle engine.
Option 1: Chrome's Live Caption (automatic, no file needed)
Chrome has a built-in feature that generates captions for any audio playing in the browser. It's the fastest option when you don't have a subtitle file and the video is in a supported language.
- Open Chrome Settings.
- Go to Accessibility.
- Turn on Live Caption.
According to Google's Live Caption help page, audio and captions are processed on your device and never leave it. Live Caption supports a list of major languages, including English, Spanish, French, German, Japanese and Portuguese. It's great for accessibility, but it's automatic speech recognition, so names and fast dialogue can come out wrong, and it transcribes rather than translates.
Option 2: A subtitle extension that overlays text on websites
Extensions like Substital draw subtitles on top of videos on many websites. You load a file (or search for one), and the extension displays it over the page's own player, with a manual sync offset. This works well when you're watching on a site you already use and just want to add a file. Limits to keep in mind:
- The website still controls playback, so styling and positioning are usually basic.
- Advanced ASS styling is typically flattened to plain text.
- Some sites change their player often, which can break overlays.
Option 3: Play the video in a player with a real subtitle engine
If you organize your own sources in a dedicated player, subtitles can be handled properly from end to end. Better Stream's player includes a full subtitle engine:
- SRT, VTT and ASS support.
- Automatic charset detection, so older files in non-Unicode encodings display correctly.
- Multi-source subtitle search, with languages fetched in parallel, through the subtitle plugins you install.
- Timing offset adjustment for subtitles that are early or late.
- Per-title memory, so your language and offset choice is remembered for that title.
How to add subtitles to a video in Chrome, step by step
Here's the general process in Better Stream. Install it first if you haven't: the setup takes about a minute.
- Start playing the video from a source you're entitled to watch.
- Open the subtitles menu in the player controls.
- Pick a track. Subtitles supplied by the source are listed first, in whichever of SRT, VTT or ASS they come in.
- Search for more languages. If you've installed a subtitle plugin, search across its sources in the languages you choose. Results are fetched in parallel, so a missing language doesn't hold up the rest.
- Check the sync. Watch the first spoken line. If the text appears early or late, adjust the timing offset until it matches.
- Carry on watching. Better Stream remembers the track and offset for that title, so next time it's already set.
Fixing common subtitle problems
Subtitles are out of sync
There are two kinds of sync problems, and they need different fixes:
- Constant delay. Every line is, say, 2 seconds late. A timing offset fixes this instantly. Shift the subtitles by the same amount in the opposite direction.
- Drift. Lines start in sync but get worse over time. This usually means the subtitle file was made for a different version of the video, often one with a different frame rate (for example 23.976 vs 25 frames per second) or extra scenes. An offset can't fix drift. Find a subtitle file made for your exact version instead.
A quick check: sync the first line, then jump to the middle. If it's still in sync, you had a constant delay. If not, it's drift.
Strange characters like é or ?????
That's an encoding mismatch. Many older subtitle files aren't saved as UTF-8; they use regional encodings such as Windows-1251 for Cyrillic or Windows-1256 for Arabic. A player that assumes UTF-8 will show garbage. Better Stream detects the charset automatically. If you're using another tool, open the file in a text editor and re-save it as UTF-8.
ASS styling is gone
If fancy positioning and fonts turn into plain white text at the bottom, the player you're using is converting ASS to plain text. Use a player that renders ASS natively, or accept the simplified version.
The subtitles are in the wrong language or have SDH tags
Files labeled SDH (subtitles for the deaf and hard of hearing) include sound descriptions like [door slams]. That's useful for accessibility, but if you only want dialogue, pick a non-SDH track.
Making subtitles easier to read
A few settings make a big difference, especially on a laptop screen or in picture-in-picture:
- Size: large enough to read at a glance without covering faces. Slightly bigger is usually better in a small window.
- Background or outline: a semi-transparent background box or a dark outline keeps white text readable over bright scenes.
- Position: keep subtitles near the bottom unless they cover on-screen text; ASS files often place signs elsewhere on purpose.
- Line length: if a file crams long sentences into one line, it's a poor-quality file. Look for a better one rather than fighting it.
If you watch with subtitles in a floating window, see our guide to picture-in-picture in Chrome for keeping them visible.
Where to get subtitles legally
- The source itself. Streaming services and publishers often include several subtitle languages. Check the player's subtitle menu first.
- Disc and digital purchases. Blu-rays and many digital purchases include official subtitles.
- Make your own. Free tools such as Subtitle Edit (SRT, VTT) and Aegisub (ASS) let you write and time subtitles for your own videos.
- Community subtitle sites. Many people use them, but subtitles are translations of someone else's dialogue, so check the site's terms and respect any takedown requests. Use them only with videos you're entitled to watch.
Subtitles never make a video legal to watch. If the source isn't licensed, a subtitle file doesn't change that. Our guide to free legal movie streaming lists services where you can watch legally, many of which include subtitles already.
Key takeaways
- SRT is the most common format, VTT is the web standard, and ASS adds full styling and positioning.
- Chrome plays VTT natively only when a site supports it. For SRT and ASS, use a player or extension with its own subtitle engine.
- Live Caption is a quick, private option when you have no file at all.
- Fix constant delays with an offset; fix drift by getting a file made for your exact video version.
- Garbled characters mean an encoding problem; automatic charset detection solves it.
Want subtitles that just work, with SRT, VTT and ASS support, search, sync and memory per title? Add Better Stream to your browser. Everything, including your subtitle preferences, stays on your device (privacy policy). If a file won't load, check the FAQ or contact us. And if you watch live channels too, the Live TV guide works with the same player.
Frequently asked questions
Not natively. Chrome's built-in track support only understands WebVTT (.vtt). To use an SRT or ASS file, you need a player or extension with its own subtitle engine.
If every line is off by the same amount, adjust the timing offset. If the delay grows over time, the file was made for a different version of the video, so find one that matches your version.
The file uses a different text encoding than the player expects, often an older regional encoding. Use a player with automatic charset detection, or re-save the file as UTF-8.
SRT is simple text with timestamps. ASS adds styles, fonts, colors and exact on-screen positions, which is why it's popular for anime and translated on-screen signs.
Yes. Live Caption, under Settings > Accessibility, generates captions on your device for audio playing in Chrome, in a range of supported languages.


