Skip to content
Owais KhanSoftware Reviews

SRT to YouTube Chapters

Paste an SRT file and get a chapter list you can drop straight into a YouTube description. The first chapter is moved to 0:00 for you, because YouTube throws away the whole list if it is not — which is why most converted chapter lists silently do nothing.

Everything runs locally: what you paste never leaves your browser.

Convert SRT subtitles to YouTube chapters

Paste this into your description4 chapters from 4 cues

Valid — YouTube will accept this list.

How it works

Each SRT block is parsed into a cue with a start time and its text. Cues closer together than the gap you choose are merged, because subtitle cues land every few seconds and a chapter every three seconds is not a chapter list. The text of the surviving cue becomes the chapter title, with italics, {\an8} positioning tags, leading dashes and speaker labels removed.

Then the first chapter is moved to 0:00. This is the step that matters. A subtitle file that begins at 0:07 is completely normal, and a converter that copies that timing across produces a list YouTube discards in full — no error, no partial chapters, nothing. Finally the timestamps are rewritten into YouTube's format:M:SS below an hour, H:MM:SS above it, never SRT's zero-padded00:04:31,240.

What YouTube actually requires

  • The first chapter starts at 0:00.
  • There are at least 3 chapters.
  • Every chapter runs at least 10 seconds.

Break any one of them and the list is ignored entirely rather than partially applied. That all-or-nothing behaviour is why a chapter list can look perfectly correct in the description and still never appear on the video. This tool checks all three and tells you which one failed instead of handing you a list that quietly does nothing.

What this is, if you searched for something else

People look for this as a youtube chapter generator, ansrt to chapters converter, or asubtitle to youtube chapters tool. They are the same job: you already have timings in a subtitle file, and you want them as chapters without retyping them. The part that varies between tools is whether they handle the 0:00 rule for you — which is the one that decides whether the list works at all.

Where these rules come from

The 0:00 requirement, the three-chapter minimum and the ten-second floor are YouTube's own published rules for video chapters, enforced by the platform when it parses a description. They are pinned as constants in this tool's source and asserted in its test suite, so if YouTube changes one, the page and the tests move together rather than drifting apart.

Frequently asked questions

Why does my YouTube chapter list not work?
By far the most common reason is that the first chapter does not start at 0:00. YouTube silently ignores the entire list when that happens — it does not show an error, the chapters simply never appear. Subtitle files almost never begin at zero, so a converter that copies cue timings straight across produces a list that looks right and does nothing. This tool moves the first chapter to 0:00 for you.
How many chapters does YouTube require?
At least 3, and each one has to run for at least 10 seconds. A list that breaks either rule is ignored in full rather than partially applied. Subtitle cues are usually a few seconds apart, so converting every cue into a chapter fails the ten-second rule immediately — the gap control below merges them into something YouTube will accept.
What timestamp format do YouTube chapters use?
YouTube wants M:SS below an hour and H:MM:SS at or above it — 0:00, 4:31, 1:02:03. It does not use the zero-padded 00:04:31,240 form that SRT files contain, and it does not want the milliseconds. Each line is a timestamp, a space, then the title. This tool emits exactly that.
Does this work with VTT or other subtitle formats?
This parser targets SRT specifically, including the CRLF line endings, byte-order marks and missing index numbers that real files carry. WebVTT uses a dot rather than a comma before the milliseconds, which this tool also accepts, but VTT cue settings and styling blocks are not parsed. For anything else, convert to SRT first.
Is anything I paste uploaded or processed on a server?
No. The entire tool runs as a small script inside this page, so whatever you paste never leaves your browser. There is no upload step, no API call and no analytics here. That is enforced rather than promised: this site’s test suite scans the shipped HTML for every browser API capable of sending data off the page and fails the build if it finds one.