Convert Time to Decimal

Convert HH:MM:SS to decimal hours/minutes/seconds/days (and back). Batch, precision, formula. Free, offline, client-side, instant, secure.

Convert HH:MM:SS to decimal hours, minutes, seconds, or days - and back. Supports multiple input formats (24-hour, AM/PM, dot notation, negatives, durations over 24h), batch input, precision and rounding control, and optional formula display per row.

2
Type to begin.

How to Use Convert Time to Decimal

  1. Type or paste time values. Supported formats: HH:MM:SS (full), HH:MM (no seconds), HH (just hours), AM/PM (2:15 PM), dot notation (8.30 means 8 hours 30 minutes), negatives (-8:30), and durations over 24h (48:00:00). Batch: one per line, comma, or semicolon separated.
  2. Choose the output unit. Hours (most common for payroll/billing), minutes (for short intervals or per-minute rates), seconds (for engineering or scripting), or days (for project planning). The math is straightforward: total seconds divided by the unit's seconds-per (3600 for hours, 60 for minutes, 86400 for days).
  3. Set precision. 0 places gives whole numbers (8). 2 (default) gives 8.50. 4-6 places for scientific or precise billing where every centiminute matters.
  4. Pick a rounding method. Round (nearest, default) matches typical math. Floor (always down) is conservative - useful when you want to charge customers no more than the actual time. Ceiling (always up) is generous - useful when billing in 15-min increments where you want to round up.
  5. Toggle formula breakdown. When on, each output line includes the formula: 8:30:00 → 8.5 [ (8 + 30/60 + 0/3600) = 8.5 hours ]. Useful for teaching, spreadsheet verification, or documenting how a value was derived.
  6. Swap direction. ⇄ flips to Decimal → Time. Input becomes decimal numbers, output becomes HH:MM:SS. The unit selector tells the tool what your decimal values mean (8.5 hours becomes 08:30:00; 8.5 days becomes 204:00:00).
  7. Read stats. Count, ok/error counts, sum, mean, min/max of valid values. Useful for payroll totals (sum of weekly time entries) or sanity checks on a batch (does the mean match what you expected?).

Frequently Asked Questions

Which time formats are actually supported?

Six: (1) HH:MM:SS full form like 8:30:00. (2) HH:MM like 8:30. (3) Just hours like 8. (4) 12-hour with AM/PM like 2:15 PM (with or without periods like p.m.). (5) Dot notation 8.30 which is treated as 8:30 (8 hours 30 minutes) – NOT 8.30 hours. (6) Negative prefix -8:30 for time differences. Durations beyond 24 hours work for all formats – 48:00:00 is 48 hours, not flagged as invalid.

What does dot notation mean? Why is 8.30 = 8:30 (not 8.30 hours)?

Dot notation is a common shorthand from older payroll and time-tracking systems where typing a colon is harder than a dot. So 8.30 in this tool means 8 hours and 30 minutes (= 8.5 decimal hours), not 8.30 hours (which would be 8 hours 18 minutes). If you actually have 8.30 hours and want it converted to HH:MM:SS, use the reverse direction (Swap) and type 8.3 as the decimal.

How do I convert 8:30 to decimal hours?

8:30 means 8 hours and 30 minutes. Since 30/60 = 0.5, the result is 8.5 decimal hours. Toggle “Show formula” to see the breakdown: (8 + 30/60 + 0/3600) = 8.5 hours. This is the standard payroll formula – divide minutes by 60 and seconds by 3600 to get decimal hours.

Can I convert times over 24 hours?

Yes. 48:00:00 converts to 48 decimal hours (or 2 decimal days, depending on unit). The validator doesn’t cap hours; minutes and seconds must still be 0-59 (you can’t have 75 minutes). Useful for total work hours, project durations, or cumulative time tracking where the value naturally exceeds 24 hours.

Does it support AM/PM format?

Yes. 2:15 PM becomes 14.25 decimal hours after 24-hour conversion. 12:00 AM = 0 hours (midnight). 12:00 PM = 12 hours (noon). Periods are tolerated: p.m. and PM both work, case-insensitive. The AM/PM rules: 12 AM → 0, 1-11 AM → same, 12 PM → 12, 1-11 PM → +12.

What’s the difference between rounding methods?

Round (nearest): 8.567 at precision 1 → 8.6. Floor (always down): → 8.5. Ceiling (always up): → 8.6. For payroll where you want to charge no more than the actual time, use Floor. For 15-minute billing increments where you round up, use Ceiling. Default Round is fine for most analytical use cases.

Can I convert negative time values?

Yes – useful for time differences. -8:30 → -8.5 hours. The negative sign sticks through all unit conversions. Reverse direction also handles negatives: -8.5 hours decoded → -08:30:00. Useful when calculating “time over/under” against a budget or schedule.

How does the reverse direction work?

Swap and the tool flips to Decimal → HH:MM:SS. Input is just numbers in the selected unit. So with unit = hours, 8.5 becomes 08:30:00. With unit = days, 0.354 becomes 08:30:34 (8h 30m 34s, since 0.354 days = 30,585.6 seconds). Sub-second precision is preserved in the output as HH:MM:SS.ms when the decimal requires it.

Is my time data uploaded anywhere?

No. All parsing, math, and formatting run in your browser. Open DevTools → Network and confirm zero requests fire – even when you Convert or Download. Safe for confidential payroll data, time-tracking logs, or anything you’d rather not log to a third-party converter.

Does it work offline?

Yes. Total bundle is about 18 KB. Load once, disconnect, keep using. Pure JavaScript arithmetic – no fonts to fetch, no analytics, no API. Useful for payroll work on airgapped systems, time math during flights, or anywhere a cloud-based converter wouldn’t reach.