Skip to content
youtubeFeatured

YouTube Chapter Generator- Format timestamps instantly

Convert timestamped bullet lists or notes into properly formatted YouTube chapters. Automatically parses various timestamp formats (mm:ss, h:mm:ss), removes duplicates, detects non-chronological entries, and ensures your first chapter starts at 0:00.

How it works

  1. 1

    Provide Timestamped Content.

  2. 2

    Run the tool to generate the output.

  3. 3

    Copy or download the result for immediate use.

Examples

Simple timestamp list

Input
{
  "input": "0:00 Introduction\n1:30 Getting Started\n5:45 Deep Dive\n12:00 Conclusion"
}
Expected output
0:00 Introduction
1:30 Getting Started
5:45 Deep Dive
12:00 Conclusion

Bullet point format

Input
{
  "input": "• 0:00 - Welcome to the video\n• 2:15 - Setting up the project\n• 8:30 - Building the feature\n• 15:00 - Testing and debugging"
}
Expected output
{
  "chapters": "0:00 Welcome to the video\n2:15 Setting up the project\n8:30 Building the feature\n15:00 Testing and debugging",
  "sortedChapters": "0:00 Welcome to the video\n2:15 Setting up the project\n8:30 Building the feature\n15:00 Testing and debugging",
  "parsed": [
    {
      "timestamp": "0:00",
      "title": "Welcome to the video",
      "seconds": 0,
      "original": "• 0:00 - Welcome to the video"
    },
    {
      "timestamp": "2:15",
      "title": "Setting up the project",
      "seconds": 135,
      "original": "• 2:15 - Setting up the project"
    },
    {
      "timestamp": "8:30",
      "title": "Building the feature",
      "seconds": 510,
      "original": "• 8:30 - Building the feature"
    },
    {
      "timestamp": "15:00",
      "title": "Testing and debugging",
      "seconds": 900,
      "original": "• 15:00 - Testing and debugging"
    }
  ],
  "stats": {
    "count": 4,
    "totalDuration": "15:00",
    "isMonotonic": true
  },
  "warnings": []
}

Non-chronological (needs sorting)

Input
{
  "input": "5:00 Middle Section\n0:00 Start\n10:00 End\n2:30 Early Part"
}
Expected output
{
  "chapters": "5:00 Middle Section\n0:00 Start\n10:00 End\n2:30 Early Part",
  "sortedChapters": "0:00 Start\n2:30 Early Part\n5:00 Middle Section\n10:00 End",
  "parsed": [
    {
      "timestamp": "5:00",
      "title": "Middle Section",
      "seconds": 300,
      "original": "5:00 Middle Section"
    },
    {
      "timestamp": "0:00",
      "title": "Start",
      "seconds": 0,
      "original": "0:00 Start"
    },
    {
      "timestamp": "10:00",
      "title": "End",
      "seconds": 600,
      "original": "10:00 End"
    },
    {
      "timestamp": "2:30",
      "title": "Early Part",
      "seconds": 150,
      "original": "2:30 Early Part"
    }
  ],
  "stats": {
    "count": 4,
    "totalDuration": "10:00",
    "isMonotonic": false
  },
  "warnings": [
    "Timestamps are not in chronological order",
    "First chapter should start at 0:00 for YouTube"
  ]
}

Output

Run the tool to generate output

Frequently Asked Questions

What timestamp formats are supported?

The tool supports multiple formats: m:ss (1:30), mm:ss (01:30), h:mm:ss (1:30:45). Timestamps can be at the start or end of each line.

Why does the first chapter need to start at 0:00?

YouTube requires chapters to start at 0:00. Videos with chapters starting later will not display chapter markers.

What if my timestamps are out of order?

The tool will detect non-chronological timestamps and show both the original order and a sorted version. You can use whichever fits your needs.

How many chapters can I have?

YouTube requires at least 3 chapters for them to appear. There is no strict upper limit, but keeping chapters meaningful (not too many) improves viewer experience.