How to Export a Timesheet to CSV or PDF
Export CSV when a payroll system or spreadsheet will read the numbers, and PDF when a person will read, approve, or file them. Finish the pay period first, include both H:MM and decimal columns, export, then open the file once and check the total before you send it.
Why export a timesheet at all?
Because a total on a screen is not a record. The moment someone else needs your hours — payroll, a client, a manager approving the week — they need a file: something they can import, attach, print, or find again in eleven months when a paycheck is questioned.
Retyping the numbers into an email is where the errors get in. An export carries the same hours the app calculated, in the same shape, every time. That is the whole point of it.
What is the difference between a CSV and a PDF timesheet?
They are not two flavours of the same file. One is data, one is a document, and sending the wrong one wastes somebody's afternoon.
| CSV | ||
|---|---|---|
| Made for | Machines — payroll imports, spreadsheets | People — approval, filing, invoices |
| Contains | Plain text values, one row per day | A fixed page: layout, totals, headings |
| Looks the same everywhere | No — the reader decides | Yes |
| Easy to edit | Yes, which is sometimes a problem | Not casually |
| Can be summed automatically | Yes | No |
| Send it to | Payroll, your accountant, your own spreadsheet | A manager, a client, your records |
When you genuinely do not know which the recipient wants, send both. A CSV for the import and a PDF of the same period costs you nothing extra and removes one round of email.
What should a timesheet export contain?
A usable export has one row per day and enough columns that nobody has to ask a follow-up question:
- Date, written
2026-08-10rather than08/10. ISO order is unambiguous in every country and sorts correctly as text. - Start and end times, ideally in 24-hour form, so
17:15can never be read as 5:15 in the morning. - Unpaid break as its own column, not silently baked into the total. This is the number people argue about.
- Hours in H:MM — the human-readable figure that matches the time card.
- Hours in decimal — the figure payroll actually multiplies by a rate.
- Who or what the time belongs to, if there is more than one person, client, or project.
- Notes, for the shift that crossed midnight or the day that ran short.
Both hour columns matter. H:MM is what a human checks against a memory of the day; decimal is what a payroll system needs. Carrying both means nobody has to convert anything, and no conversion means no conversion mistakes.
How do you export a timesheet? (6 steps)
- Finish the period first. Enter every shift, deduct unpaid breaks, and check the totals on screen. An export is a snapshot — whatever is missing when you export is missing in the file you send.
- Pick the format by recipient. A system reads it: CSV. A person reads it: PDF. This one decision prevents most re-sends.
- Make sure decimal hours are included. Most payroll systems expect decimal. Convert once from the total rather than rounding each row — the reason is in the worked example below.
- Export. In Hours, open the saved timesheet and export it as CSV or PDF, then share the file from your phone. Any tool worth using puts this behind one command.
- Open the file and check it. Every time. Confirm the weekly total matches the app, the dates land on the right days, and nothing has been reformatted. This takes twenty seconds and catches the failure described in the next section.
- Send it, and keep your own copy. Attach it to the payroll submission or the invoice, and keep the identical file. A timesheet you cannot produce later is a timesheet you never filed.
A worked example: one week, exported
Here is a real week — five days, four of them with a 30-minute unpaid break — as it should appear in the export.
| Date | In → Out | Break | H:MM | Decimal |
|---|---|---|---|---|
| 2026-08-10 | 08:00 → 16:30 | 0:30 | 8:00 | 8.00 |
| 2026-08-11 | 08:00 → 17:15 | 0:30 | 8:45 | 8.75 |
| 2026-08-12 | 09:00 → 15:45 | 0:30 | 6:15 | 6.25 |
| 2026-08-13 | 08:30 → 17:00 | 0:30 | 8:00 | 8.00 |
| 2026-08-14 | 08:00 → 14:20 | 0:00 | 6:20 | 6.33 |
| Total | — | 2:00 | 37:20 | 37.33 |
Check the weekly total the H:MM way. Minutes first: 0 + 45 + 15 + 0 + 20 = 80 minutes, which is 1 hour 20 minutes. Hours next: 8 + 8 + 6 + 8 + 6 = 36. Carry the extra hour across and the week is 37:20.
Now the part that matters for the decimal column. 37:20 is 37 + 20 ÷ 60 = 37.3333… hours — it does not land on a clean two-decimal figure. At $19.50 an hour the true gross is 37.3333… × $19.50 = $728.00 exactly. Pay from the rounded 37.33 instead and you get $727.94. Six cents, on one week, from one rounding.
Six cents is not a crisis. The habit behind it is: round each row and the error compounds across every row, every week. Keep H:MM as the source of truth, put decimal beside it for convenience, and let payroll compute from the unrounded total. More on that in converting minutes to decimal hours.
What does the CSV actually look like?
A CSV is a plain text file: the first line names the columns, every line after it is one day, and commas separate the values.
date,start,end,break,hours_hmm,hours_decimal
2026-08-10,08:00,16:30,0:30,8:00,8.00
2026-08-11,08:00,17:15,0:30,8:45,8.75
2026-08-12,09:00,15:45,0:30,6:15,6.25
2026-08-13,08:30,17:00,0:30,8:00,8.00
2026-08-14,08:00,14:20,0:00,6:20,6.33
Two rules keep this readable by anything that opens it. If a value contains a comma — a note like late start, approved — wrap the whole value in double quotes. And save it as UTF-8, so a name with an accent in it survives the trip.
Why did the spreadsheet change my times?
Because a CSV carries no formatting, only text, and the spreadsheet guesses what every value means. Its guesses are confident and often wrong. Four failures come up constantly:
8:15becomes a time of day. Excel and Google Sheets read it as a quarter past eight in the morning and store it as a fraction of a day, not as eight and a quarter hours. It usually still looks right, which is what makes it dangerous.- The weekly total wraps at 24 hours. Sum a column of those time values and
37:20displays as13:20— 37:20 minus a full day. The sum is correct; the display threw away 24 hours. Format the total cell as[h]:mm, square brackets included, and it runs past 24 properly. Multiply by 24 to get decimal hours. - Dates flip.
03/04is 3 April in one country and 4 March in another, and the spreadsheet picks based on its own regional settings. ISO dates like2026-04-03are immune. - Leading zeros vanish. An employee number of
00123is helpfully converted to123.
The single fix for all four is to import instead of double-clicking. In Excel, use Data → From Text/CSV; in Google Sheets, File → Import. Both give you a preview where you can set a column's type to Text before anything is parsed, which leaves your values exactly as written.
And this is the strongest argument for shipping a decimal column: 8.75 cannot be mistaken for a time of day, cannot wrap at 24 hours, and sums correctly no matter which tool opens the file. If a spreadsheet is going to guess, hand it something it cannot guess wrong.
When is a PDF the better choice?
Whenever the file is evidence rather than input. A PDF shows the same page to everyone who opens it — same layout, same totals, same dates — and it does not get accidentally re-sorted or half-edited on its way through an inbox.
Reach for PDF when you are: attaching hours to a client invoice, sending a week to a manager for approval, filing your own copy at the end of a pay period, or answering a question about a period that has already been paid. A CSV is the wrong artefact for all four, because the first thing anyone does with a CSV is change it.
Sending both is not indecision. The CSV is what gets imported; the PDF is what gets pointed at later when the numbers are questioned.
Record-keeping notes here are general United States guidance, not legal or tax advice. Requirements vary by state, industry, and contract — check the ones that apply to you.
How long should you keep exported timesheets?
Under general United States federal wage and hour rules, employers must keep payroll records for three years, and the records those wage calculations rest on — time cards among them — for two. Those are obligations on the employer, not on you.
Keep your own copies anyway, and keep them at least as long. The exported file is the only thing that answers a disagreement about a paycheck from eighteen months ago, and it costs nothing to store. One folder, one file per pay period, named by date. Timesheet management 101 goes further into cycles, approvals, and retention.
Common export mistakes
- Exporting mid-period. The file is a snapshot. Finish the week, then export.
- Sending H:MM only. Payroll converts it by hand, and hand conversions are where 8:15 becomes 8.15.
- Rounding every row. Round the total once, if at all. Never each day.
- Ambiguous dates. Use
YYYY-MM-DDand the question never comes up. - Never opening the file. Twenty seconds of checking beats a corrected payroll run.
- Not keeping a copy. The file you sent is the one you will need.
Total the week, export the file
Hours adds and subtracts time in H:MM, handles overnight shifts and negative totals, flips to decimal in one tap, applies your hourly rate, keeps a saved history, and exports a timesheet to CSV or PDF. Free, offline, no ads, no sign-in.
Frequently asked questions
Should I send my timesheet as a CSV or a PDF?
CSV if a payroll system, accountant, or spreadsheet will read the numbers. PDF if a person will read, approve, sign, or file them, or if it is attached to an invoice. Unsure? Send both.
Why does Excel change my timesheet times when I open the CSV?
A CSV has no formatting, so the spreadsheet guesses: 8:15 becomes a time of day, 03/04 becomes a date in its own order, 00123 loses its zeros. Import via Data → From Text/CSV (or File → Import in Sheets) and set those columns to Text.
Why does my spreadsheet total say 13:20 instead of 37:20?
The total cell is using a clock format that wraps at 24 hours. Format it as [h]:mm — brackets included — and multiply by 24 for decimal hours.
What columns should a timesheet export contain?
Date in YYYY-MM-DD, start, end, unpaid break, hours in H:MM, hours in decimal — plus the person or project if there is more than one, and a notes field.
Can I export a timesheet without an account or an internet connection?
Yes. Hours calculates, stores, and exports on the device — no account, no sign-in, no connection. The export is a file you share wherever you like.
How long should I keep exported timesheets?
Under general US federal rules employers keep payroll records three years and the underlying time records two. Keep your own copies at least that long. General information, not legal advice.
How do I send a timesheet to an accountant or payroll provider?
Ask what they import first — most want a CSV with named columns and decimal hours. Match their column names, use ISO dates, one file per pay period, and attach a PDF alongside it.