#580 · Developer Tool

Duration ISO8601 Builder

Build a normalized ISO 8601 duration from readable key=value fields. Supply any combination of years, months, weeks, days, hours, minutes, and seconds; omitted units default to zero. The builder validates non-negative finite numbers, keeps fractional values where ISO notation permits them, and places date and time components on the correct side of the T separator.

Developer Input

Duration fields as key=value
Ad space

How to use this developer tool

  1. Paste or type a value in the input area.
  2. Choose the conversion option when one is available.
  3. Select Build Duration or press Ctrl/Cmd + Enter.
  4. Review the interpretation and copy or download the result.

What this developer tool does

The generated value is a duration expression, not an anchored date range. Calendar units remain calendar units and are not silently approximated as days.

Parse supported keys case-insensitively, reject duplicates and unknown fields, trim trailing decimal zeroes, and assemble P plus date fields and an optional T section.

Fractional values should normally appear only on the smallest unit used. Some consuming libraries impose stricter profiles than ISO 8601.

Example

Try the sample input, then run the converter. The output panel reports the normalized value and the fields used to derive it.

years=1
months=2
days=3
hours=4
minutes=5
seconds=6.75

Use cases

  • Inspect values copied from logs, headers, or API payloads.
  • Normalize configuration before committing it.
  • Compare timestamp representations during debugging.
  • Create a reproducible test fixture for date-handling code.

Tips for reliable output

  • Include an explicit UTC marker or numeric offset for portable instants.
  • Keep the original input beside a converted value during debugging.
  • Test boundary dates near midnight and New Year.
  • Do not assume a fixed offset carries daylight-saving rules.
  • Confirm the consumer uses the same token or date standard.

Processing details

Parse supported keys case-insensitively, reject duplicates and unknown fields, trim trailing decimal zeroes, and assemble P plus date fields and an optional T section.

Fractional values should normally appear only on the smallest unit used. Some consuming libraries impose stricter profiles than ISO 8601.

Frequently asked questions

What input does the Duration ISO8601 Builder accept?

Use the format shown in the sample. The parser rejects empty input and reports malformed values instead of guessing silently.

Does the Duration ISO8601 Builder use my local timezone?

UTC and offset-aware values represent a fixed instant. Any output labeled local uses the timezone configured in your browser.

Can I use the output in production code?

The output is copy-ready, but verify it against the date library and runtime used by your application, especially for legacy formats.

Why can date results differ between browsers?

Browsers may ship different timezone database versions and may parse non-standard legacy date strings differently. Prefer explicit standard formats.

Is my date or duration uploaded to a server?

No. The conversion runs in this page with browser APIs and does not require a network request.

Time format reference

ValueMeaning
UTCCoordinated Universal Time
Unix epoch1970-01-01T00:00:00Z
ISO 8601International date and time notation