Download the template
The template has every column ShiftLens reads, with a few made-up shifts to show the format. Replace them with your own and check it.
Download for Excel (.xlsx) Download as CSV
| Staff ID | Name | Date | Start | End | Break (mins) | Date of birth | Site | 48-hour opt-out | Status |
|---|---|---|---|---|---|---|---|---|---|
| EMP-001 | Test Worker A | 01/06/2026 | 09:00 | 17:30 | 30 | 14/02/1990 | The Test Arms | No | |
| EMP-002 | Alex Example | 01/06/2026 | 16:00 | 21:30 | 30 | 03/09/2008 | The Test Arms | ||
| EMP-003 | Sam Sample | 01/06/2026 | 18:00 | 02:00 | 20 | The Test Arms | Yes | ||
| Open shift | 02/06/2026 | 12:00 | 18:00 | 30 | The Test Arms | Open |
Sam's shift ends at 02:00, earlier than it starts, so ShiftLens reads it as finishing the next morning. The open shift has no one on it yet, so it's left out of the checks.
Columns you need
Column names don't have to match exactly, and the order doesn't matter. ShiftLens recognises common names, like the ones below. If it can't find a column, it asks you to pick it.
| Column | What it's for | Names we recognise, for example |
|---|---|---|
| Name or Staff ID | Who works the shift. You need at least one of the two. | Name, Employee, Staff, Staff ID, Employee number, Payroll number |
| Date | The day the shift starts. Not needed if your start and end columns include the date. | Date, Shift date, Day |
| Start time | When the shift starts. A time, or a date and time. | Start, Start time, From, Time in, Clock in |
| End time | When the shift ends. A time, or a date and time. | End, Finish, To, Time out, Clock out |
Columns that help
These are optional. Without them, ShiftLens still checks what it can and tells you what it couldn't. Some can also be given after the report, in “Add details”.
| Column | What it adds | Names we recognise, for example |
|---|---|---|
| Break length | Lets ShiftLens check breaks. Without it, breaks aren't checked. | Break, Break (mins), Unpaid break, Break hours |
| Date of birth, or Under 18? | Turns on the stricter rules for under-18s. Without either, everyone is assumed to be 18 or over. | Date of birth, DOB, Under 18, Young worker |
| Site | Groups shifts by location, for businesses with more than one site. | Site, Location, Branch, Store, Venue |
| 48-hour opt-out | Marks people who have opted out of the 48-hour week. | Opt-out, 48-hour opt-out, Opted out |
| Shift status | Leaves out shifts that are open, unassigned or draft. They're counted but not checked. | Status, Shift status |
| Break paid? | Read, but it doesn't change the checks: recorded breaks never count as working time, paid or not. | Break paid, Paid break |
| Shift type | Marks on-call and sleep-in shifts, which get a note. | Shift type |
Any other columns, such as role or notes, are ignored, so you don't need to delete them.
Dates, times and breaks
- Dates: 13/06/2026, 13/06/26, 13.06.2026, 2026-06-13, 13 Jun 2026 or Sat 13 June 2026. Dates like 03/04/2026 are read day first (3 April). If your file puts the month first, you can switch that on the column screen.
- Times: 09:00, 9:00, 9.30, 0900, 9am, 9:30pm, noon or midnight.
- Date and time together: 13/06/2026 09:00 or 2026-06-13T09:00. Then you don't need a separate date column.
- Breaks: 30, 30 mins, 0:30, 1h 30m or 1.5 hours. A plain number is read as minutes, unless the column name says hours.
- Yes or no columns: Yes, No, Y, N, True, False, 1, 0, X or a tick.
- Status: Open, Unassigned, Vacant or TBC for shifts with no one on them yet; Draft, Unpublished or Proposed for shifts not confirmed. Anything else counts as a normal shift. A name of “Open shift” with no staff ID is treated as open too.
Layout tips
- One row per shift. Someone working two shifts in a day, such as lunch and evening, has two rows.
- Titles above the table are fine. ShiftLens looks for the header row in the first 10 rows, so a title such as “Rota w/c 1 June” doesn't get in the way.
- Overnight shifts: an end time earlier than the start time means the shift finishes the next day. Times are UK time, and clock changes are handled.
- Excel files with several sheets: ShiftLens opens the first sheet, and you can choose another on the column screen.
- CSV files: commas, semicolons or tabs all work, and files saved by Excel on Windows are read correctly.
- Size: up to 5 MB, which is many thousands of shifts.
- Staff in more than one place: use the same Staff ID on every row for the same person, so their shifts across sites are checked together.
What doesn't work yet
- Rotas laid out as a grid, with a column for each day and shift times in the cells. Export the shift list instead, or copy the shifts into the template.
- Old Excel files (.xls), PDFs, images and password-protected files.
If your rota software can export shifts as a list in CSV or Excel, that's usually the easiest way in.
Your file stays on your device
ShiftLens reads your file inside your web browser. Your staff names and shifts aren't uploaded to us or anyone else. Read our privacy notice.