The ad factoryComparison
SRT vs WebVTT for video ad captions
Short answer
SRT and WebVTT both store timed text, but they have different syntax and delivery contexts. Choose the format your destination accepts, export from one canonical cue map and test the imported result. Keep external caption files separate from burned captions. Converting an extension alone does not preserve timestamps, encoding, styling or compatibility.
Choose the destination before choosing the extension
A subtitle delivery starts with a question about the destination: does it expect a sidecar file, a browser text track, an editor import or captions already drawn into the video? Those are different delivery decisions. Choose the format from that requirement, preserve the approved cue map and check how the destination handles the imported result.
The Library of Congress describes SRT as numbered timed-text blocks. The W3C WebVTT specification defines WebVTT syntax and cue behavior. ai ugc ads workflow gives the production context. This comparison focuses on moving accurate cues between systems without treating either file extension as a complete caption design.
A hypothetical product-name caption needs to reach both an editor and a browser-based review. Keep its approved text and timing in one cue map, then serialize the format each receiver accepts. The deliveries still need separate import checks because syntax, supported settings and rendering differ. Changing the extension would not perform that conversion. If the cue needs a wording revision, update the canonical record before regenerating either delivery file.
SRT commonly uses a numeric cue counter, a timing line, text and a blank line between blocks. Its fractional timestamp separator is a comma. WebVTT starts with a WEBVTT header and uses periods for fractional timestamps. A valid file must follow the format’s structure, not merely contain recognizable words and times.
For a hypothetical cue beginning at one second and ending at two and a half seconds, the SRT timing is 00:00:01,000 --> 00:00:02,500; the WebVTT form can be 00:00:01.000 --> 00:00:02.500. This small example concerns syntax only. It does not establish that the cue’s wording or timing is correct for the associated audio.
| Check | Suggested action |
|---|---|
| Destination | Confirm accepted format and caption mode |
| Source | Export from one canonical cue map |
| Syntax | Check timestamps and encoding |
| Playback | Inspect actual imported captions |
Source: Turntake editorial checklist (proposed), October 2026.
Keep one canonical cue map
Store text, start, end and a stable cue ID in one internal representation. Export SRT and WebVTT from that map rather than correcting them independently. Otherwise a spelling fix can appear in one file while the other retains the old word.

In our production in October 2026, word timing follows the voice and display text keeps the script’s standard spelling. A cue map can preserve that relationship across output formats. Keep the audio asset ID beside it. If the voice changes, both exports may need retiming even when the caption text remains identical. Fix caption drift from the first word to the last covers diagnosing drift. A format conversion cannot repair cues timed against the wrong voice version.
- 01Identify destinationChoose delivery mode
- 02Export canonical cuesUse correct syntax and encoding
- 03Parse exported fileCompare text and times
- 04Test destination playbackCheck layout and sync
Separate external captions from burned text
An external caption file supplies timed text to a compatible player or editor. Burned captions are pixels in the rendered image. Sending an SRT file does not remove or replace text already burned into a video.

Choose the intended presentation before delivery. If a destination adds its own caption track over burned captions, the viewer may see duplicate text. If only a sidecar is supplied to a destination that does not use it, the video may display no captions. Record the selected mode in the handoff. Keep a clean video reference where the workflow calls for one, and identify which export already contains the designed caption treatment.
Treat styling as destination-dependent
WebVTT supports cue settings and a styling model; SRT reader behavior can vary, particularly for formatting. These capabilities do not mean every destination preserves every authored style. Test the actual import path before relying on alignment, color or multiple text positions.
For a tightly designed ad, the house caption style may be rendered into the video while a plain text sidecar remains available for another use. Keep the two purposes explicit. Vertical video safe zones: review the final crop covers layout and safe areas. A sidecar cue that is readable in one player can overlap interface elements in another. Do not assume that timing accuracy alone establishes an acceptable layout.
- SRTNumbered text blocksWebVTTWEBVTT header and cues
- SRTComma fractionsWebVTTPeriod fractions
- SRTReader-dependent formattingWebVTTDefined cue settings
- SRTImport path needs testingWebVTTBrowser or player support needs testing
Export encoding deliberately
Use an explicit encoding and test names, punctuation and language-specific characters in the destination. WebVTT uses UTF-8. For SRT delivery, choose the encoding supported by the target workflow rather than relying on an editor’s undocumented default.
A hypothetical export containing an accented product name should be checked after import, not only in the source text editor. A file can look correct locally and display replacement characters elsewhere. Keep the original cue map unchanged when testing an export so an encoding experiment does not damage the canonical text. Record the output format and encoding in the delivery manifest, alongside the video and audio reference IDs.
Validate timestamps and reading intervals
Check that each cue starts before it ends, times use the declared unit and cue order matches the intended sequence. Inspect overlaps deliberately rather than assuming every overlap is either valid or a defect. A speaker change or layered information may need a defined treatment.
Then listen against the actual audio and inspect the first, middle and last cues. A syntactically valid file can be uniformly late or gradually drift. Loudness for social video: measure the finished mix covers final audio loudness as a separate task; that check does not validate caption timing. Keep each output check tied to the property it actually measures.
For a proposed conversion check, parse both exports back into normalized cue records and compare text and times with the canonical map. That exposes a lost cue, changed timestamp or accidental punctuation rewrite. It still does not prove the player’s styling behavior, which needs a playback check in the destination.

Deliver the format the receiver can use
Provide the requested format, associated video ID, language, encoding and whether the video already has burned captions. Include a short compatibility note describing the tested import path. Do not describe a file as universally compatible merely because another application accepted it.
Turntake’s production approach describes Turntake’s production approach. The format choice is an interoperability decision inside the workflow, not an automatic upgrade in caption quality.
For a hypothetical editor handoff, send the canonical cue map, the requested sidecar and a reference render showing intended grouping. The editor can then distinguish content and timing from appearance. If the destination loses positioning, the reference explains the intended result without pretending those settings survived the conversion. Keep the original export as history and create a new revision for any compatibility adjustment.
Test a small compatibility sample
Before exporting a whole series, prepare a hypothetical sample with a short cue, a longer cue, a product name containing an accented character and a deliberately positioned line. Export both requested formats from the same map. Import each into the actual receiver and inspect text, timing and appearance.
If a positioned line becomes a default bottom caption, record that behavior as an import limitation. Do not “repair” the canonical cue text by inserting spaces or extra line breaks that exist only to imitate a layout in one player. Keep a destination-specific export treatment where necessary.
The test should also include the final cue near the media ending. Some compatibility failures become visible only when the video stops while text remains scheduled. Confirm that the delivered video duration and cue map refer to the same revision. This proposed sample is a practical acceptance check; it is not evidence that every player or editor supports the same styling and timing behavior.
Who wrote this We made the ads first, for SmartSolar in Denmark, Sweden and Ireland. Then we built Turntake. Where Turntake comes from
FAQ
Should I choose SRT or WebVTT captions?
SRT and WebVTT both store timed text, but they have different syntax and delivery contexts. Choose the format your destination accepts, export from one canonical cue map and test the imported result. Keep external caption files separate from burned captions. Converting an extension alone does not preserve timestamps, encoding, styling or compatibility.
How do I compare the basic syntax?
SRT commonly uses a numeric cue counter, a timing line, text and a blank line between blocks. Its fractional timestamp separator is a comma. WebVTT starts with a WEBVTT header and uses periods for fractional timestamps. A valid file must follow the format’s structure, not merely contain recognizable words and times.
How do I keep one canonical cue map?
Store text, start, end and a stable cue ID in one internal representation. Export SRT and WebVTT from that map rather than correcting them independently. Otherwise a spelling fix can appear in one file while the other retains the old word.
How do I separate external captions from burned text?
An external caption file supplies timed text to a compatible player or editor. Burned captions are pixels in the rendered image. Sending an SRT file does not remove or replace text already burned into a video.
Sources
- Library of Congress: SubRip format checked 11 October 2026
- W3C: WebVTT specification checked 11 October 2026
- MDN: WebVTT format checked 11 October 2026
Facts from the sources below were checked on the date shown. Pages change, so read the source again before you rely on it.