Video Duration Formatter

Convert video duration between mm:ss, seconds, and HH:mm:ss formats

About This Tool

Your editing software exports duration in seconds, your client wants a list in mm:ss, and YouTube uses HH:mm:ss for anything over an hour. None of these are hard to convert in your head, but doing it 47 times for a batch of clips is the kind of thing that turns into a typo waiting to happen.

Drop in a value in any of the three formats. The output gives you the others. Useful when prepping a deliverable file list, writing video chapters, calculating total runtime across a series of clips, or sanity-checking that the 1:30:00 in your spreadsheet really means an hour and a half rather than ninety seconds. Hours are dropped automatically when the value is under an hour, so you don't end up with awkward 0:05:30 strings when 5:30 is what you wanted.

The conversion logic: seconds to mm:ss is integer-divide by 60 for minutes and modulo 60 for the remainder. Above 3,600 seconds, hours are introduced (integer divide by 3,600). The reverse — parsing mm:ss or HH:mm:ss — splits on colons and converts each segment to seconds (the rightmost segment as seconds, the next as minutes × 60, the next as hours × 3,600). The formatter uses zero-padding for minutes and seconds (always two digits) but not for hours, which matches YouTube's chapter format and most video-editor conventions. Frame counts aren't included because they depend on frame rate (24, 25, 30, 60 fps) and converting requires that context.

A worked example: you're listing chapters for a 1-hour 24-minute lecture and your editor exported each chapter start as seconds. First chapter at 0 seconds → 0:00. Second at 245 seconds → 4:05 (because 245 / 60 = 4 remainder 5). Third at 1,880 seconds → 31:20. Fourth at 3,725 seconds → 1:02:05 (because we crossed the hour mark). Total runtime at 5,040 seconds → 1:24:00. YouTube chapter formatting requires HH:mm:ss for anything over an hour; mm:ss alone won't be parsed. The formatter handles the format switch automatically.

Where the formatter is intentionally limited: timecodes with frame counts (HH:mm:ss:ff) need frame-rate context. Drop-frame timecode (used for NTSC 29.97 fps work) introduces additional complexity that the formatter doesn't model — for that, use your NLE or a dedicated timecode tool. Sub-second precision (milliseconds) is rounded to whole seconds; if you need millisecond accuracy for sync work, your editing software handles that natively. The formatter is built for delivery-time formatting (chapter markers, runtime lists, cue sheets) where whole-second precision is the norm. Batch processing isn't included; if you have 100 durations to convert, paste them into a spreadsheet and use a TEXT formula instead.

The about text and FAQ on this page were drafted with AI assistance and reviewed by a member of the Coherence Daddy team before publishing. See our Content Policy for editorial standards.

Frequently Asked Questions