Shotcut imports subtitle files in four formats — SRT, VTT, ASS and SSA — and it drops them wherever the playhead is sitting when you import. That second half is what ruins most VTT imports: the cues are fine, the file is fine, but the whole track lands offset by however far into the timeline you had scrubbed.
This walkthrough follows the order of operations that avoids that, using only what Shotcut's own user guide and release notes state. You need a clip on the timeline, a .vtt file, and a version of Shotcut new enough to have the Subtitles panel.
Before you start
Three things from the official documentation decide whether this goes smoothly.
You need the Subtitles panel. The user guide says plainly: "The Subtitles Panel was added in Shotcut 24.08". On older builds there is nothing to import into.
Subtitles attach to the timeline and to nothing else. In the guide's words: "Subtitles can only be added to the Timeline. They can not be added to the playlist or clips." If your footage is still sitting in the playlist, or you are working with a clip open in the Source player, move it onto the timeline first.
Finish the edit before you touch subtitles. This is Shotcut's own recommendation, not ours: "We recommend to save subtitle editing until the timeline editing is complete because moving or cutting clips on the timeline will break the subtitle synchronization." A VTT written against a finished cut will not survive you trimming a clip near the start afterwards.
Step 1: Get the project into its final shape
Lay the clips down, cut them, and settle the edit. Once the subtitle track exists, any move or cut on the timeline is working against the synchronisation the guide just warned you about.
Step 2: Create a subtitle track
Open the Subtitles panel and create a track. The guide describes the action as: "To start editing subtitles, click the "add" button and give the subtitle track and name and language."
What you get back is described just as literally: "After the subtitle track is created the subtitle track area will appear in the timeline above the top video track." You can have more than one — the guide notes that "Multiple subtitle tracks can be added. But only the currently selected subtitle track is shown in the Subtitle Panel and the Timeline."
That last sentence is worth holding on to. If you import a second language later and it seems to have vanished, it has not; you are looking at a different selected track.
Step 3: Park the playhead before you import — this is the whole trick
Here is the sentence that explains almost every "my Shotcut subtitles are shifted" complaint, quoted from the user guide:
"Subtitles are imported at the current cursor position."
And the instruction the guide attaches to it:
"So be sure to place the cursor before importing subtitles from a file."
So the import is relative, not absolute. A VTT whose first cue starts at 00:00:02.000 does not land two seconds into your timeline — it lands two seconds after wherever the cursor is. Scrub to 1:30 to check a shot, import without thinking, and the whole track is ninety seconds late. Nothing in the file is wrong, which is exactly why this one is so hard to diagnose after the fact.
For a caption file authored against the full video from frame one, move the playhead to the very start of the timeline first. If instead you are dropping a translated block onto one section, put the cursor at the start of that section on purpose — the same behaviour becomes useful once you know it is there.
Step 4: Import the VTT file
With the track created and the cursor placed, import the file. The guide's list of accepted formats is explicit: "Supported subtitle import formats include: SRT, VTT, ASS, and SSA." The Features page words the same capability as "Imports subtitle formats SRT, VTT, ASS, and SSA".
Check the first and last cue against the picture before doing anything else. Checking the last cue matters as much as the first: the release notes record that "Subtitles works incorrectly after a couple of minutes with non-integer frame rates" was fixed in Release 25.01.25, so a project on a fractional frame rate is worth a look further down the timeline as well as at the head.
If your caption file needs to be SRT instead
Shotcut's import list has four formats, but its export section names one: "Subtitles can be exported to a file. Subtitles are exported in SRT format." So the round trip is asymmetric — a VTT goes in, an SRT comes back out.
That matters if a collaborator hands you a VTT and the rest of your pipeline expects SRT, or if you want a plain SRT sitting next to the project file before you start editing captions. Converting first also gives you the format Shotcut itself writes, which keeps both directions consistent.
Try it right here
Runs in your browser. Your file is not uploaded anywhere.
That runs in your browser tab — the caption file is read from disk and rewritten locally, so an unreleased script never travels to a server. The standalone page is VTT to SRT, and SRT to VTT goes back the other way when a web player needs WebVTT.
Getting the subtitles into the finished video
Two routes, and the guide treats them separately.
Soft (embedded) subtitles. "When exporting a Shotcut project, subtitles will be embedded in the output file if the file format supports it. Formats that commonly support subtitles include MKV, MOV and MP4." Note the wording: commonly support and if the file format supports it — that is an example set with a condition, not a whitelist. There is also an opt-out: the release notes for 24.08.29 record "Added Export > Other > Disable subtitles checkbox."
Burned-in subtitles. The Subtitle Burn-In filter overlays subtitles authored in the Subtitles panel, and it has one hard placement rule the guide states twice: "The filter can only be added to the Timeline Output." The 24.08.29 release note repeats it as "only works on Output track". Add it to a clip and you will get nothing.
Common mistakes
- Importing with the playhead parked mid-timeline. The single most common cause of a uniformly offset track. Fix: undo, move the cursor to the start, import again.
- Trying to attach subtitles to a playlist item or a clip. The guide restricts them to the timeline outright.
- Editing the timeline after importing. Moving or cutting clips breaks synchronisation, per the guide's own warning.
- Adding the Burn-In filter to a clip instead of the Timeline Output. Officially Output-only.
- Assuming a missing second track is a failed import. Only the currently selected subtitle track is shown in the panel and the timeline.
FAQ
Can Shotcut import VTT files directly? Yes. The user guide lists the supported import formats as SRT, VTT, ASS and SSA, and the Features page repeats the same four.
Why are my imported subtitles offset from the video? Because the import is placed at the cursor. The guide states that "Subtitles are imported at the current cursor position", so the position of the playhead at import time becomes the offset for the whole file.
Can I export subtitles back out as VTT? The guide's export wording is "Subtitles are exported in SRT format". If you need WebVTT for a web player, convert the exported SRT with the tool above or the SRT to VTT page.
Why does my Subtitle Burn-In filter do nothing? Almost certainly placement. The guide says the filter "can only be added to the Timeline Output", and the 24.08.29 release note says the same thing in shorter words.
Can I pull subtitles out of a video file I already have? Shotcut lists an Extract Subtitles item under Properties, and the release notes for 25.12.30 record "Added support for mov_text and SSA in Properties > Extract Subtitles." Behaviour beyond that is not described in the official pages we used here — check the official documentation.
More Shotcut walkthroughs live in the how-to hub, and if your export itself is misbehaving rather than your captions, start with why a Shotcut export fails or hangs. The rest of the browser-based toolkit is listed at all Clapr tools.
Quotations taken from the Shotcut User Guide (June, 2026) and the official release notes, as captured in September 2026. Verify against the current documentation before relying on version-specific details.