Skip to main content

Duration Converter — seconds, minutes, hours, ISO 8601 and HH:MM:SS

Seconds ⇄ minutes ⇄ hours ⇄ days ⇄ weeks, plus human-readable, ISO 8601 duration and HH:MM:SS — one input, every format — browser-only

  • Runs locally
  • Category Calculator
  • Best for Getting a realistic range before a purchase, plan, workout, or schedule decision.
Quick presets:

Every unit

Milliseconds5400000
Seconds5400
Minutes90
Hours1.5
Days0.06
Weeks0.01

Formatted

Human-readable1h 30m
ISO 8601 durationPT1H30M
Clock (HH:MM:SS)01:30:00

What this tool does

Type a duration in any form and read every other form at once. Enter a plain number in milliseconds, seconds, minutes, hours, days or weeks, or paste a human expression like "1h30m" or "2 days 4 hours", an ISO 8601 duration like "PT1H30M", or a clock value like "01:30:00". The tool resolves it to total seconds, then shows all six unit values side by side plus three formatted outputs: a human-readable string ("1d 2h 3m 4s"), a canonical ISO 8601 duration ("P1DT2H3M4S"), and a clock string that rolls past 24 hours ("100:00:00"). Decimal precision is adjustable from 0 to 10 places, and every row has a one-tap copy button. The input is wired into the URL, so a "share link" reproduces the exact duration for whoever opens it. Everything runs as plain JavaScript in your tab — no upload, no API call, no analytics on what you convert. Built for developers wiring up timeout configs, video editors logging clip lengths, and anyone who has ever Googled "how many seconds in a week".

Tool details

Input
Text + Numbers
The page exposes text boxes, numeric controls, file pickers, or structured inputs depending on the tool.
Output
Live result + Copy
The result area focuses on usable output, with copy, download, or preview actions when supported.
Privacy
Browser-side processing
The main tool logic does not call an external API, so inputs normally stay in the current tab.
Save / share
Shareable URL state
Key settings are encoded in the URL so another person can reopen the same setup.
Performance budget
Initial JS <= 10 KB
No WASM budget is declared, keeping the tool quick to open on mobile.
Best fit
Calculator · Developer
Category and role tags drive related tools, internal links, and quick fit checks.

How to use

  1. 1. Input

    Paste or drop your content into the tool panel.

  2. 2. Process

    Click the button. All processing is local in your browser.

  3. 3. Copy / Download

    Copy the result or download to disk in one click.

How Duration Converter fits into your work

Use it for fast estimates, comparisons, and planning numbers before you make the final call.

Calculation jobs

  • Getting a realistic range before a purchase, plan, workout, or schedule decision.
  • Comparing scenarios by changing one input at a time.
  • Turning rough assumptions into a number you can discuss.

Calculation checks

  • Double-check units, dates, rates, and rounding assumptions.
  • Treat health, finance, tax, and legal outputs as planning aids, not professional advice.
  • Save the inputs that produced an important result so you can reproduce it later.

Good next steps

These links move the current task into a more complete workflow.

  1. 1 Unit Converter Convert between length, weight, temperature, area, volume, speed, time — instant, browser-only Open
  2. 2 Unix Timestamp Converter Unix timestamp ⇄ human date — seconds / milliseconds / ISO 8601 — UTC and local — browser-only Open
  3. 3 Timezone Converter Convert any time between any two timezones — DST-aware, IANA database — browser-only Open

Real-world use cases

  • Set a Kubernetes liveness probe timeout in the format it wants

    You want a probe to time out after 1 minute 30 seconds, but the field accepts either an integer number of seconds or, in newer chart values, an ISO 8601 duration. Type "1h30m" — wait, you meant 1m30s — type "1m30s" in auto mode, read the Seconds row (90) for the integer field, and copy the ISO 8601 row (PT1M30S) for the duration field. No more guessing whether the manifest wants 90, "90s", or "PT1M30S", and no off-by-a-factor-of-60 outages from pasting minutes where seconds were expected.

  • Log a video clip length three different ways

    An editor cuts a clip and the NLE reports its length as the timecode 00:04:37. The CMS wants total seconds, the analytics event wants milliseconds, and the changelog reads better as "4m 37s". Paste "00:04:37" in auto mode: the Seconds row shows 277, the Milliseconds row shows 277000, and the Human-readable row shows "4m 37s". Copy each into the field that needs it instead of doing three mental conversions and fat-fingering one of them.

  • Translate a subscription billing interval to seconds for a cache TTL

    Your billing period is "1 week" but the cache layer wants a TTL in seconds. Type 1, pick Weeks from the dropdown, and read the Seconds row: 604800. Copy it straight into the TTL config. Next sprint the plan changes to a 30-day billing cycle — type 30, pick Days, read 2592000. The exact second count for every common billing interval without opening a calculator app and multiplying by hand.

  • Sanity-check a meeting length before sending the invite

    You blocked "90 minutes" for a workshop but the calendar UI shows the end time in hours and you want to confirm it's not eating into lunch. Type 90, pick Minutes: the Hours row reads 1.5 and the clock row reads 01:30:00. Now you know the block is exactly an hour and a half, and you can paste "1h 30m" into the invite description so attendees see a friendly length rather than a raw minute count.

  • Convert an API rate-limit window from milliseconds to a readable string

    A third-party API documents its rate-limit reset window as 86400000 milliseconds and you need to put a human sentence in your error copy. Type 86400000, pick Milliseconds: the Days row reads 1 and the Human-readable row reads "1d". Now your error message can say "try again in 1 day" instead of echoing a raw millisecond count that no user will parse. Adjust precision to 0 places so the units stay clean in the output.

Common pitfalls

  • Pasting "1h30m" while a fixed unit like Minutes is selected returns an error — the fixed-unit modes only accept a plain number. Either switch the dropdown to Auto for expressions, or type a bare number when a unit is selected. The error message says exactly this, but it trips people who leave the dropdown on a unit from a previous conversion.

  • Confusing the ISO 8601 duration (PT1H30M, a length) with an ISO 8601 timestamp (2026-05-29T08:00:00Z, a moment). This tool only does durations. If you paste a full timestamp it won't parse — that's a job for the timestamp-converter. The giveaway: durations start with P, timestamps start with a year.

  • Expecting 'P1M' to mean one minute. In ISO 8601, an M before the T is months (a calendar unit this tool rejects); the M for minutes comes after the T, as in PT1M. Write minute durations as PT…M, never P…M. The parser rejects the date-M form on purpose rather than silently guessing.

Privacy

Every conversion — the parsers (human / ISO 8601 / clock), the unit arithmetic, and the formatters — is plain JavaScript that runs inside your browser tab. No duration value is sent to a server, nothing is logged about what you convert, and there is no analytics on the input. The one caveat: the shareable URL encodes your current input in the query string (for example ?d=1h+30m), so if you paste a "share link" into chat or email, the destination server's access log will record that value. For ordinary durations that is harmless; the precision preference is the only thing saved, and it lives in your browser's localStorage, never leaving the device.

FAQ

Tool combos

Folks in your role tend to reach for these alongside this tool.

Made by Toolora · 100% client-side · Updated 2026-06-13