Project Timesheet
Add rows for each project or task. Enter start and end times to calculate hours.
How the Timesheet Calculator Works
Track project hours in four easy steps.
Name Your Projects
Enter the project or task name in each row. This labels your entries for easy identification when reviewing totals.
Enter Start & End
Set the start time and end time for each entry. The calculator supports 24-hour format and handles overnight shifts.
Add More Rows
Click "+ Add Row" for each additional project or task. There's no limit — add as many entries as you need for your timesheet period.
Review Grand Total
Each row shows its individual duration. The grand total at the bottom sums all rows into HH:MM and decimal hours.
What Is a Timesheet Calculator?
Understanding project-based time tracking and how it helps.
Project-level time tracking
A Timesheet Calculator helps you log hours across multiple projects or tasks in a single view. Unlike a simple time difference tool, it lets you record many entries with labels, computing individual durations and a combined grand total.
This mirrors the paper timesheets used in workplaces, but with automatic calculations — no manual addition or conversion errors.
Per-row and aggregate calculations
Each row independently computes the duration between its start and end time. The calculator handles base-60 arithmetic automatically — 9:00 to 12:30 is 3 hours 30 minutes, not 3.30. The grand total sums all row durations, carrying minutes into hours.
Decimal hours for payroll
Payroll systems typically need decimal hours. The calculator provides this automatically: 7h 30m = 7.50 decimal hours. This eliminates the common conversion mistake where people enter 7.30 instead of 7.50. Need overtime rates applied as well? Try the overtime calculator.
When to Use a Timesheet Calculator
Common scenarios for project-based time tracking.
Freelance & Consulting
Track billable hours across multiple clients. Each row = one client or project. Export the grand total for invoicing at your hourly rate.
Team Management
Compile team members' daily time entries. Review individual project allocations and ensure the total hours match the expected workload.
Project Budgeting
Compare estimated vs. actual hours per project. If design was budgeted at 20h but the timesheet shows 28h, you know where scope is growing.
Academic Research
Log lab hours, research time, and writing sessions. Many institutions require time logs for grants and research funding reports.
Maintenance & Field Work
Record service call durations across multiple job sites. Each row = one call. Grand total informs resource allocation and billing.
Legal Time Tracking
Attorneys log billable hours per client matter. The decimal hours output matches legal billing software requirements for 6-minute increments.
Step-by-Step Walkthrough
A consultant’s working day reconstructed row by row, ending with the number that goes on the invoice.
A consultant logs four blocks in one day: client research 9:00–10:45, a design workshop 11:00–12:30, documentation 13:15–15:40, and a review call 16:00–16:50.
Compute each row independently
Research: 10:45 − 9:00 = 105 min Workshop: 12:30 − 11:00 = 90 min Documentation: 15:40 − 13:15 = 145 min Review call: 16:50 − 16:00 = 50 minEach row is its own subtraction. Keeping them separate is what makes a timesheet auditable — a single daily figure cannot be questioned line by line.
Running total105, 90, 145 and 50 minutes
Sum the rows in minutes
105 + 90 + 145 + 50 = 390 minutesAdding in minutes avoids carrying between bases. Summing 1:45 + 1:30 + 2:25 + 0:50 directly requires four separate carries and is where hand-totalled sheets usually go wrong.
Running total390 minutes
Convert the total to HH:MM
390 ÷ 60 = 6 remainder 30Six and a half hours logged. This is the figure to compare against the working day — and the gap to it is as informative as the total itself.
Running total6h 30m
Account for the unlogged time
Day span 9:00–16:50 = 470 min 470 − 390 = 80 minutes unloggedEighty minutes sits between the blocks — the 15-minute gap before the workshop, 45 minutes at lunch, and 20 minutes before the call. Unlogged time is not lost time, but it should be explainable.
Running total80 minutes between blocks
Convert to decimal for billing
390 ÷ 60 = 6.50 hoursInvoicing systems want decimal hours. At $95/hour this day bills at $617.50 — and because each row is preserved, the invoice can be broken down by activity if a client asks.
Running total6.50 billable hours
Four tracked blocks total 6h 30m, or 6.50 decimal hours, across a 7h 50m day. The 80 minutes between blocks is the difference between time at work and time accounted for.
Common Mistakes and Pro Tips
Mistakes that quietly corrupt your numbers
Logging one row per day and reconstructing the detail later from memory.
Add a row when each block starts, even if the end time is filled in afterwards.
Why it matters: Reconstructed timesheets are systematically wrong in a predictable direction: memorable work is overstated and short interruptions vanish entirely. The total often looks right while every line beneath it is fiction.
Rounding every row up to the nearest quarter hour as you go.
Record the exact times and round only the final total, if rounding is required at all.
Why it matters: Four rows each rounded up by seven minutes adds 28 minutes that were never worked. On a billable sheet that is not just inaccurate, it is invoicing a client for half an hour of nothing.
Letting two rows overlap because a call ran into the next block.
Close the first row when the second starts, and note the overrun separately.
Why it matters: Overlapping rows make the total exceed the elapsed day, which is immediately indefensible. A timesheet totalling nine hours across an eight-hour day discredits every row on it, including the accurate ones.
Assuming the difference between logged hours and the working day is idle time.
Treat unlogged time as unaccounted, and check what it contains before drawing conclusions.
Why it matters: Gaps are usually breaks, transitions and short admin tasks — real activity that simply falls below the granularity of the sheet. Reading it as idleness turns a measurement artefact into a performance judgement.
Pro tips
Start the row, not the memory
Create the entry when work begins and fill in the end time later. A row that exists is a prompt; a row you intend to write is almost always wrong by the time you write it.
Name rows for the deliverable
Write "onboarding flow wireframes" rather than "design". Six weeks later the specific label is what lets you defend the line, reuse the estimate, and answer a client query without guessing.
Watch the row count as a signal
A day with fifteen entries is a day that was heavily fragmented. The number of rows often tells you more about how a day went than the total hours do.
Keep one sheet per billing boundary
Separate sheets per client or project avoid the worst timesheet error of all — invoicing one client for another’s hours. Filtering a mixed sheet is a workaround, not a safeguard.
Reconcile daily, not monthly
Compare logged time to the working day at the end of each day. A discrepancy is trivially resolvable the same afternoon and effectively unresolvable four weeks later.
Pick a minimum block size
Decide whether you track to the minute, to six minutes or to fifteen. Mixing granularities across rows makes the total precise-looking and meaningless.
Timesheet Entry Durations at a Glance
Common block lengths in the three formats a timesheet needs: HH:MM for review, minutes for summing, decimal for invoicing.
| Block length | HH:MM | Minutes | Decimal hours |
|---|---|---|---|
| Quarter hour | 0:15 | 15 | 0.25 |
| Half hour | 0:30 | 30 | 0.50 |
| Three quarters | 0:45 | 45 | 0.75 |
| One hour | 1:00 | 60 | 1.00 |
| Standard meeting | 1:30 | 90 | 1.50 |
| Short session | 1:45 | 105 | 1.75 |
| Focus block | 2:25 | 145 | 2.42 |
| Half day | 3:30 | 210 | 3.50 |
| Working day | 6:30 | 390 | 6.50 |
| Long day | 7:45 | 465 | 7.75 |
| Full week | 37:30 | 2250 | 37.50 |
No rows match that filter.
Sum in the minutes column and convert once at the end — adding the HH:MM column by hand requires a carry at every row. For a fixed weekly grid rather than free-form rows, see the time card calculator.
Getting More From a Timesheet
What the rows are actually for, once the total is computed.
Granularity is a decision, not a detail
Tracking to the minute, to six minutes or to fifteen changes what the sheet can be used for. Fine granularity supports accurate billing but discourages logging, because the overhead per entry rises.
Coarse granularity is quick to maintain but hides short work entirely — a five-minute interruption simply never appears in a fifteen-minute grid, even though ten of them consume most of an hour.
Choose based on the sheet's purpose. Client billing usually justifies fine tracking; internal capacity planning rarely does.
Billable, non-billable and the ratio between them
A timesheet that only records billable work answers half the question. The interesting figure is the ratio — billable hours divided by total logged hours.
A consultant billing 6.5 hours out of an 8-hour day is at roughly 81%. Sustained figures above about 85% usually indicate that administration, business development and learning have stopped being recorded rather than stopped happening.
Log both categories in the same sheet and mark which is which. The unbillable rows are what make the billable ones credible.
Using past rows as estimates
The most valuable output of a timesheet is not the invoice — it is the evidence base for the next estimate. Actual durations for comparable work beat intuition consistently, and by a wide margin.
This only works if rows are named for deliverables rather than activities. "Design" cannot be compared across projects; "three onboarding wireframes" can.
Once a few similar entries exist, the spread between them is as useful as the average, because it shows how uncertain the estimate should be.
Where the data lives
Everything in this calculator runs in the browser. Nothing is uploaded, stored on a server, or transmitted anywhere — which also means nothing persists once the tab is closed.
That trade-off suits ad-hoc reconstruction and checking, not long-term record keeping. Export or copy the totals before leaving the page if the figures matter.
For time that needs to survive, a spreadsheet or dedicated tracker remains the right home; use this to compute and verify rather than to store.
Frequently Asked Questions
Common questions about the Timesheet Calculator.
How many rows can I add to the timesheet?
You can add unlimited rows to the timesheet. Each row tracks a separate project or task with its own start time, end time, and calculated duration. Click "+ Add Row" to add more entries.
Does it handle overnight shifts?
Yes. If the end time is earlier than the start time, the calculator assumes the shift crosses midnight and calculates accordingly. For example, 10:00 PM to 6:00 AM = 8 hours.
Can I export the timesheet data?
Currently, the calculator runs in your browser and does not support direct export. You can copy the totals manually or use your browser's print function (Ctrl+P) to save a PDF of the page.
How is the grand total calculated?
The grand total sums all individual row durations. Each row calculates the difference between start and end time. The sum is shown in both HH:MM format and decimal hours.
Can I use this for weekly timesheets?
Yes. Add one row per day or per task/project and fill in the start and end times. The grand total gives you the complete hours for the period. For a full weekly timecard with overtime, try our Time Card Calculator.
Is my timesheet data stored anywhere?
No. All calculations happen in your browser. No data is sent to any server. If you close or refresh the page, the timesheet resets. Always note your totals before leaving the page.
How many rows can I add to a timesheet?
There is no fixed limit — add a row for every entry the period needs. Each row computes its own duration and the footer totals them all, so a long list stays as accurate as a short one.
Should I round each entry or just the total?
Round the total only, if at all. Rounding every row up by a few minutes compounds quickly: four rows each nudged up by seven minutes adds nearly half an hour that was never worked.
What does the difference between logged hours and the working day mean?
It is unaccounted time rather than idle time. Gaps between blocks are usually breaks, transitions and short admin tasks that fall below the granularity of the sheet, so investigate what they contain before treating them as lost time.
Can I track multiple clients on one sheet?
You can, but a separate sheet per client or project is safer. Mixing them creates the risk of invoicing one client for another’s hours, and filtering after the fact is a workaround rather than a safeguard.
Is my timesheet data saved anywhere?
No. All calculation happens in your browser and nothing is sent to a server or stored, which also means the rows disappear when you close the tab. Copy or export your totals before leaving the page.