XConvert
Downloads
Pricing

Convert VTT to TXT Online

Turn WebVTT (.VTT) subtitle files into plain text (.TXT) for easy reading, copying, and sharing—right in your browser.

Input (VTT)
Output (TXT)

How to Convert VTT to TXT Online

  1. Add Your VTT File: Drag and drop a .vtt file onto the upload area, click "+ Add Files" to browse, or paste WebVTT content straight into the text area. Multiple files can be queued in one batch.
  2. Pick the Output (TXT): TXT is preselected — the converter will strip the WEBVTT header, cue identifiers, timestamp lines (00:00:01.000 --> 00:00:04.500), and inline cue settings, leaving only the spoken text in reading order.
  3. Review the Preview: The text panel shows the cleaned output so you can spot residual speaker tags (<v Speaker>), sound cues ([Music], [Applause]), or repeated lines from YouTube's rolling auto-captions and edit them before download. Conversion runs in your browser session — files never leave the page.
  4. Download Your TXT: Click "Convert" and grab the result as a UTF-8 .txt file (or copy the text directly from the preview). No sign-up, no watermark, no email gating.

Why Convert VTT to TXT?

WebVTT (Web Video Text Tracks, MIME type text/vtt) is the W3C-standard caption format for HTML5 video — it carries timing, positioning, styling, and speaker metadata that browsers consume via the <track> element. Once a video has been captioned, the underlying transcript is locked inside the VTT file, surrounded by timestamps and cue syntax that get in the way of every downstream use. Stripping it back to plain text unlocks:

  • Transcripts for blog posts, show notes, and SEO — Search engines index the body text of a page, not the .vtt track. Pasting a cleaned transcript under an embedded video turns a 30-minute interview into thousands of words of indexable content.
  • Qualitative research and discovery — Researchers analysing interviews, focus groups, or oral histories import plain text into tools like NVivo, Atlas.ti, MAXQDA, or Otter for coding and keyword search. Timestamps and <v> tags break those imports.
  • AI summarisation and Q&A — ChatGPT, Claude, Gemini, and on-device models accept far longer inputs as plain text than as cluttered VTT. A 90-minute lecture compresses from a 250 KB VTT to roughly 60 KB of UTF-8 text once timing data is removed.
  • Accessibility and translation handoff — Sending a script to a human captioner, translator, or voice-over artist is faster as TXT than VTT. They can work in Word or Google Docs without parsing cue syntax.
  • Compliance and archival records — Many regulated industries (legal depositions, FDA-supervised clinical trial training, accessibility audits under ADA/Section 508) require a plain-text transcript in addition to the captioned video.
  • Search inside long videos — Grepping a folder of .txt transcripts for a phrase ("revenue recognition", "sodium-ion") is instant; searching across a folder of VTTs returns noisy matches inside cue headers.

Need to keep the timing or hand the captions to a different tool? Use Word Counter on the cleaned transcript or run the output through Text Case Converter to normalise SHOUTING CAPS auto-captions to sentence case.

VTT vs TXT — What Survives the Conversion

Element VTT (input) TXT (output)
WEBVTT file signature Required first line Removed
Cue timestamps hh:mm:ss.fff --> hh:mm:ss.fff Required per cue Removed
Cue identifiers (optional numeric or named IDs) Optional Removed
Cue settings (line:, position:, align:, size:) Optional Removed
Voice tags <v Speaker>...</v> Supported in spec Tag stripped; speaker text may be kept or removed depending on options
Inline styling <b>, <i>, <u>, <c.classname> Supported Tags removed, text preserved
STYLE, REGION blocks (CSS-like) Supported in header Removed
NOTE comment blocks Supported, ignored by players Removed
Sound descriptions [Music], [Applause], (laughter) Convention, not spec Kept by default; can be filtered
Encoding UTF-8 (per spec) UTF-8
Line endings LF or CRLF LF (Unix)

Where VTT Files Come From — Source Quirks to Watch For

Source Typical quirks in the VTT What to clean up
YouTube Studio download Rolling word-by-word auto-captions create heavily overlapping cues that repeat the same line multiple times Deduplicate consecutive identical lines
YouTube youtube-dl / yt-dlp auto-subs Same rolling captions plus <00:00:01.000> inline word timestamps Strip inline timestamp tags and dedupe
Zoom / Teams / Webex cloud recording One cue per speaker turn with <v Speaker Name> tags Decide whether to keep speaker labels as Speaker: prefixes or drop them
Vimeo / Wistia exports Clean, edited captions with no auto-caption residue Usually a straight strip-and-go
Manually authored (Subtitle Edit, Aegisub) Carefully formatted, often with <i> for narration and [sound] cues Decide whether sound cues belong in the transcript
Whisper / OpenAI Whisper output Long cues, punctuation present, no speaker tags by default Minimal cleanup; just strip timing

Frequently Asked Questions

Will the converter keep my speaker labels?

WebVTT speaker labels are encoded as <v Speaker Name>spoken text</v> voice spans, which the W3C spec defines but most authoring tools render only as a styling hint. By default the conversion preserves the spoken text and removes the surrounding tag. If you want a transcript that reads "Alice: ...\nBob: ..." you can paste the cleaned text into Text Case Converter afterwards, or enable the speaker-prefix option before downloading if your source had <v> tags.

Why does my YouTube VTT look like every line is repeated three times?

YouTube's auto-generated captions render in a scrolling style where each new word produces a new cue containing the prior phrase plus the next word. Downloaded as VTT, this looks like dozens of near-duplicate lines. The cleaner removes consecutive identical lines, but if you grab the file with yt-dlp --write-auto-sub --sub-format vtt the file also contains inline <00:00:01.500> word timestamps that need stripping separately — both happen automatically here.

Does VTT use commas or periods for the millisecond separator?

Periods. WebVTT uses 00:01:23.456 (period before the milliseconds). SRT uses 00:01:23,456 (comma). The --> arrow and the cue numbering are the other big visible differences — see the W3C WebVTT spec for the full grammar.

Will the output keep [Music], [Applause], and other sound descriptions?

By default yes, because they are real words in the transcript and matter for accessibility and search context. If you only want spoken dialogue, the sound-tag filter removes anything in square brackets [...] and round brackets (laughter) style cues. This is the same convention SDH (Subtitles for the Deaf and Hard of Hearing) tracks use.

Can the converter handle multi-line cues correctly?

Yes. A VTT cue can span multiple lines between its timestamp line and the next blank line; those lines are joined with a single space (default), kept as separate paragraph lines, or merged into a paragraph depending on the output mode you pick. The "Sentences" mode also re-joins lines that were broken purely for caption length so a sentence reads as one continuous line.

What encoding does the output use, and will it preserve accented characters?

WebVTT is UTF-8 by spec, and the TXT output is written as UTF-8 with no BOM. Accented Latin characters (Spanish ñ, French é, German ß), CJK ideographs, Arabic and Hebrew right-to-left text, and emoji all survive the round trip. If you need a different encoding (Windows-1252 for legacy Word imports, for example), convert the encoding in your text editor after download.

Is there a file-size or batch limit?

The converter runs entirely in your browser session, so the limit is your device's available memory rather than a server quota. Typical 1-hour lecture VTTs are 200–400 KB and process in well under a second; multi-hour transcripts of several megabytes still process locally without uploading anything. Batching multiple files works — process them all in one queue and download each result individually.

Why convert to TXT instead of SRT or DOCX?

TXT is the universal lowest common denominator — every text editor, programming language, AI tool, and analysis package reads it without configuration. SRT keeps timing (useful if you want to re-time later), and DOCX adds Word formatting (useful for editorial workflows). Pick TXT when you want the raw transcript text and nothing else; convert to SRT first if a downstream tool expects timed captions.

Does anything get uploaded to your servers?

No. The conversion runs as JavaScript inside the page, so the .vtt content and the resulting .txt never leave your browser. There is no account, no watermark, and no hidden Pro tier gating the file size or the dedupe / speaker-label / sound-tag filters.

Related Convert tools
VTT ConverterConvert Vtt To SrtConvert Vtt To AssConvert Vtt To SsaConvert Vtt To SbvConvert Srt To TxtConvert Ass To TxtConvert Ssa To Txt

Image Tools

Image CompressorCompress JPEGCompress PNGCompress GIFCompress WebPImage ConverterJPG ConverterImage Resizer

Video Tools

Video CompressorCompress MP4MP4 to GIFVideo to GIFVideo ConverterMP4 ConverterVideo Cutter

Audio Tools

Audio CompressorCompress MP3Compress WAVAudio ConverterMP3 ConverterFLAC to MP3Audio Cutter

Document Tools

Compress PDFMerge Images to PDFSplit PDFPDF to JPGUnzip FilesRAR Extractor

Converters

Time Zone ConverterMeeting PlannerIST to ESTTime Zone AbbreviationsUnit ConverterLength ConverterFlow Rate Converter
© 2026 XConvert.com. All Rights Reserved.
About UsPrivacy PolicyTerms of ServiceContactHelp Us Grow