1. Your hours CSV
A timesheet export edited in a spreadsheet, or a sheet prepared to key into payroll. Employee data is personal data: this page never uploads it.
Choose a file or paste the text, then click Check file.
Result
Rows with findings
| Line | Employee | Findings |
|---|
Safe fixes
The rules, and what they leave out
- Identity. Every row needs an Employee (a name or an ID) and a Date. IDs Excel turned into scientific notation are flagged because the digits are lost.
- Hours. A number of hours, as
8.5or8:30, never both styles in one column and never with unit text. Over 24 in a row is an error; over 16 is a warning. Negative hours are flagged, not changed. - Dates. One format throughout, ideally YYYY-MM-DD. Excel serial numbers, impossible dates and mixed or day/month-ambiguous values are flagged and never reordered.
- Start, End and Break. If a row has times, the hours implied by End minus Start minus Break are compared with the hours typed; a difference over 0.1 hour is a warning. End before Start is treated as an overnight shift and noted.
- Duplicates. The same person on the same date twice is a warning (it can be a split shift). Rows are never merged.
- Weekly totals. If an Overtime column exists and someone has over 40 regular hours in a Monday–Sunday week with none entered, it is noted. The 40-hour line is a common US federal threshold, not your rule.
- Safe fixes change only the delimiter, the spelling of recognised headers and stray spaces around the employee cell. They never change an hour, a date, a break or a name.
- Not checked: wage rates, minimum wage, overtime and meal-break law, rounding rules, pay periods, whether a given payroll service will accept the file, tax withholding, and anything a vendor changes in its importer. Try a few rows first.
Common questions
Why do my payroll hours import wrong or get rejected?
The usual causes are hours typed as 8:30 in some rows and 8.5 in others, text such as 8h, a Date column Excel turned into serial numbers like 46294 or mixed day-first and month-first, a name with an unquoted comma that shifts every later column, the same person and day entered twice, a total for the week typed into a daily row, and Start and End times that do not agree with the hours typed. This tool tests each of them and names the line.
Does a clean sheet mean everyone was paid correctly?
No. The tool checks the file's formatting and arithmetic only. It does not know the minimum wage, overtime, meal-break or record-keeping rules that apply to you, and it never enters overtime for you. It is not wage-and-hour, payroll-tax or legal advice. Ask a payroll professional or your labor department if unsure.
Why did my times turn into numbers like 0.354167?
Excel stores a time as a fraction of a day, so 08:30 is 0.354167. If a column was formatted as a number before saving, the clock text is gone. Format the column as Text or as [h]:mm before editing, or re-export from the source. This tool flags text it cannot read as a time and cannot restore the original.
What does Apply safe fixes change?
Only things with one reasonable reading: the delimiter, the spelling of headers and stray spaces around an employee. Every change is listed with its line. It never edits hours, dates, breaks or names.
Is it safe to put employee data into a web page?
The page runs in your browser, the file is read locally and nothing is uploaded; a test in the code asserts there are no network calls. You remain responsible for how you store and handle the downloaded file.
What does this not check?
Pay rates, overtime law, whether your payroll service will accept the file today, or whether anyone was paid correctly. A clean result is not a promise of success: run a small sample first.