Time Unit Converter
Convert between every time unit — nanoseconds, microseconds, milliseconds, seconds, minutes, hours, days, weeks, months, years, decades, centuries — with explicit, switchable month (28/30/30.44/31) and year (365/365.25/366) definitions. BigInt-safe down to nanoseconds, so even huge magnitudes stay exact. Single input fans out to all units. Humanize mode ('1d 1h 1m 1s'), inverse parser, dev units (ticks, jiffies, frames@fps) and JS/Python code snippets. 100% client-side.
About Time Unit Converter
Convert between every time unit — nanoseconds, microseconds, milliseconds, seconds, minutes, hours, days, weeks, months, years, decades, centuries — with explicit, switchable month (28/30/30.44/31) and year (365/365.25/366) definitions. BigInt-safe down to nanoseconds, so even huge magnitudes stay exact. Single input fans out to all units. Humanize mode ('1d 1h 1m 1s'), inverse parser, dev units (ticks, jiffies, frames@fps) and JS/Python code snippets. 100% client-side. Everything runs locally in your browser — your data never leaves your device.
How to use
- Enter your input in the tool above.
- Adjust any options to your preference.
- Use the Copy or Download buttons to save the result.
- Everything happens locally — your data never leaves your browser.
FAQ
How does this converter handle month and year ambiguity?
A 'month' and a 'year' aren't a fixed number of seconds — a month can be 28, 29, 30 or 31 days, and a year can be 365 or 366 days (or 365.25 averaged). This tool surfaces that ambiguity rather than hiding it: you pick an explicit month definition (28, 30, 30.44 average, or 31 days) and year definition (365, 365.25 average, or 366 days). Every conversion uses the chosen definition, so you always know exactly what '1 month' means.
Why does this tool use BigInt and how does it preserve nanosecond precision?
JavaScript Number is a 64-bit float, so beyond about 9 × 10¹⁵ (a few months in nanoseconds) it loses integer precision. This tool stores the source value internally as BigInt nanoseconds and computes every conversion in integer math, only converting to Number (or a scientific-notation string) at the very end for display. That means 1 year = 31_536_000_000_000_000 ns stays exact, and even centuries stay precise to the nanosecond.
What is the humanize duration mode?
Humanize takes a value in seconds (or any unit) and expresses it as a friendly compound string like '1d 1h 1m 1s' instead of 90061. It picks the largest meaningful units and only shows as many as you ask for (e.g. top 3 units). The inverse parser does the opposite: type '1d 1h 1m 1s' and get back 90061 seconds. They round-trip cleanly so you can copy a humanized duration and paste it back to verify.
What are the developer units (ticks, jiffies, frames)?
Ticks (.NET) are 100 ns each. Jiffies (Linux) historically are 10 ms each (HZ=100) but you can configure the HZ rate. Frames are a media unit: at 60 fps one frame is 1/60 s, at 30 fps it's 1/30 s. This tool lets you set the fps for frame conversion and the HZ rate for jiffies, so you can convert a frame count to milliseconds for video timing, or a tick count to nanoseconds for .NET diagnostics.
What extra features does this tool have compared to others?
(1) 12 base time units from ns to centuries. (2) Switchable month (28/30/30.44/31) and year (365/365.25/366) definitions, surfaced not hidden. (3) BigInt-exact integer math down to ns — no float rounding. (4) Single-input fan-out batch table to every unit. (5) Humanize mode (seconds → '1d 1h 1m 1s'). (6) Inverse parser ('1d 1h' → seconds). (7) Dev units: ticks (100 ns), jiffies (configurable HZ), frames (configurable fps). (8) JS and Python code snippets for the conversion. (9) Scientific notation for very small / very large magnitudes. (10) Copy-per-row buttons. (11) Shareable URL encoding value + source unit + definitions. (12) localStorage history (max 20, metadata only). (13) 100% offline, no network.
Is my data sent anywhere?
No. All conversion math runs locally with native BigInt. History is stored in localStorage on this device only and contains just the value + unit + definitions, never any notes or external data.
Related tools
.bashrc / .zshrc Alias & Config Manager
Build shell aliases, functions, exports, and PATH edits in a visual editor, then export a clean, commented .aliases file sourced from both .bashrc and .zshrc — with shadowing detection against shell builtins and common CLI tools, function suggestions when args are needed, starter packs (git, docker, kubectl, navigation, safety, ls, dev, devops, data science), import of existing rc files, dedupe, history (localStorage), and shareable URL. 100% client-side.
Add / Subtract Date Calculator
Add or subtract years, months, weeks, days, hours, minutes and seconds from a starting date/time. Calendar-day or business-day mode with custom weekend + holiday list. Month-end policy toggle (clamp to last day vs overflow). Repeat/series mode (e.g. every 2 weeks x 10) with CSV export. Shareable URL. 100% client-side.
Age Calculator
Calculate exact age from a birth date in calendar years/months/days (no negative-day bugs) plus totals in months/weeks/days/hours/minutes/seconds. Next-birthday countdown with weekday. Feb-29 birthday policy toggle. Milestones (1,000 days, 10,000 days, 1 billion seconds). Zodiac sign + Chinese zodiac. Age gap comparison. Shareable URL. 100% client-side.