Built for people who live in spreadsheets
Calculate My Hours started as a fix for one recurring annoyance: doing time math in Excel means either memorizing NETWORKDAYS syntax and MOD formulas or rebuilding a helper column from scratch every time a new file lands in your inbox. This site offers two free tools that do that math for you — a bulk spreadsheet calculator for rows of timestamps, and a single-entry calculator for a quick one-off answer. Both run entirely in your browser and calculate total, business, weekend, and weekday hours down to the minute.
Two tools, one job
Bulk Spreadsheet Calculator — Upload a .xlsx, .xls, .ods, or .csv file with start and end timestamp columns. The tool processes every row, appends your chosen metrics as new columns, and returns the updated file as a download. Built for payroll runs, project audits, support ticket reports, and anywhere you have a list of time ranges to measure at once.
Single Timespan Calculator — Enter a single start and end date/time directly on the page and get all four metrics instantly. Accepts time in any format — 9:30, 21:30, or 2130 — with an AM/PM toggle that auto-updates when military time is detected. No file needed.
How it works
Upload a spreadsheet (.xlsx, .xls, .ods, or .csv) with at least one column of start timestamps and one of end timestamps, with a header row at the top. The tool reads your file, lets you map which columns to use, and computes each selected metric row by row — calculating exact minute-level overlap with the relevant time windows.
Results are appended as new columns to your original data and returned as a downloadable .xlsx file. Your existing data is untouched; only the new columns are added.
You can select any combination of the four metrics, configure which days count as the weekend (Friday, Saturday, and/or Sunday), and set the daily start and end time for business hours calculations.
Your data stays on your computer
Everything runs locally in your browser using the SheetJS library. When you upload a file, it is read directly into memory on your device — it is never transmitted to a server, never stored in a database, and never leaves your machine. Closing the tab clears everything.
Who uses this
Payroll and HR teams reconciling clock-in/clock-out exports and needing business-hours totals that exclude weekends and after-hours punches.
Freelancers and contractors turning a log of session start/end times into billable hours for an invoice, without hand-adding minutes.
Support and ops teams measuring how long tickets or incidents stayed open — separating time that accrued during business hours from time that piled up overnight or on weekends.
Project managers and analysts auditing timestamped logs (shipping, session, or usage data) where "how much time actually elapsed" needs to be broken out by weekday vs. weekend.
Why we built it
Spreadsheet formulas for time math — NETWORKDAYS, MOD, custom VBA — are brittle, hard to audit, and require rebuilding from scratch for every new file. Getting business hours right is especially fiddly: NETWORKDAYS alone doesn't know about your 9-to-5 window, and stacking it with MOD and IF logic to handle partial days is where most homegrown formulas start breaking on edge cases — a ticket opened at 4:45 PM Friday, for instance, or a shift that spans midnight.
We wanted a reusable tool you could hand to anyone on a team: upload your file, pick your columns, get your answer — with the weekend days and business-hours window configurable instead of hardcoded to Monday–Friday, 9–5, since not every team or country works that schedule. No Excel expertise required, no formula to inherit and maintain.
The tool is free, supported by advertising, and will stay that way.
Who's behind this
Calculate My Hours is built and maintained by Bridges to Sunshine LLC, not a large company. It's a small, focused project — two calculators, kept simple on purpose, with no account creation, no upsell, and no data collection beyond standard site analytics. Bug reports and feature requests go through the contact page and get read directly by the person who built it.