Free monthly staff rota template (Excel)
A 31-day grid that shows the whole month on one screen — built for spotting leave clashes and bank holiday gaps before they become a problem.
Monthly staff rota
Excel (.xlsx) • Ready to download
No signup required. Works in Excel, Google Sheets and LibreOffice.
This rota template is a planning tool, not legal or payroll advice. It does not check working time limits, rest breaks or minimum wage for you. Check GOV.UK, or take advice, before relying on a rota for compliance. It does not constitute legal, HR, or professional advice and should not be relied on as a substitute for advice specific to your business, workforce, or circumstances.
What's in this template
A month on one screen
31 day columns
One narrow column per day, so a full month fits across the page without scrolling.
17 staff rows
Eight sample rows plus nine blanks — insert more and the total formula copies down.
Monthly hours per person
A Total column at the end sums numeric entries across the month.
Bank holiday marking
The BH code makes bank holidays obvious in the grid, which matters when premiums are contractual.
Leave clash spotting
Reading down a day column shows instantly how many people booked the same day off.
Shift code legend
D, E, N, OFF, AL, BH and TOIL are defined on the Instructions tab.
How the month reads
Use single-letter shift codes rather than times — at 31 columns wide, times will not fit legibly.
| Employee | Role | 1 | 2 | 3 | 4 | 5 | … | Total |
|---|---|---|---|---|---|---|---|---|
| Amelia Clarke | Manager | D | D | OFF | OFF | D | … | 160 |
| Priya Sharma | Team leader | E | E | E | OFF | OFF | … | 152 |
| Grace Bennett | Staff | BH | AL | AL | AL | AL | … | 0 |
A row of AL across five columns is the clearest signal you will get that someone is on holiday that week — far more visible than a leave form in an inbox.
How to build a monthly rota in Excel
If you would rather roll your own
1. Narrow the day columns
Set columns C onwards to about 5 characters wide. Anything wider and the month will not fit on a page.
2. Use single-letter codes
D for day, E for evening, N for night. Times are unreadable at this column width.
3. Conditional-format the codes
Colour AL and BH differently from working codes so leave jumps out when you scan a column.
4. Add a monthly total
A =SUM() at the end of each row, and freeze the first two columns so names stay put as you scroll right.
The template already does all four. If your cover repeats on a fixed cycle rather than varying month to month, a rolling rota will suit you better.
How to use this template
Download and go in four steps
1. Download
Grab the Excel file — no signup, and it opens in Excel, Google Sheets or LibreOffice.
2. Add your team
Replace the sample names and roles with your own staff.
3. Fill in the shifts
Enter start and end times, or hours, using the shift codes on the Instructions tab.
4. Share it
Print it, email it or pin it up — and give staff reasonable notice of their shifts.
Who uses a monthly rota
Teams that plan further ahead than a week
Care homes
Plan cover across a month where minimum staffing levels are not negotiable.
Security and facilities
Longer planning horizons for sites that are staffed around the clock.
Retail and warehousing
Line the rota up with peak weeks and seasonal trading.
Planning a month ahead only helps if leave is agreed before the rota is written — see our holiday entitlement guide.
When the spreadsheet starts costing you time
A rota in Excel works until someone swaps a shift, calls in sick, or asks what they are owed. RosterElf keeps the rota, the clock-in record and the payroll export in one place.
UK rota guides
The rules that shape what you can put on a rota
Rota laws in the UK
The 48-hour week, the opt-out, rest breaks and the notice you owe staff before a shift.
Read the guideShift patterns explained
4 on 4 off, continental, Panama and DuPont — how each one covers the week.
Read the guideHoliday entitlement
The 5.6 weeks, what it comes to in days, and where bank holidays sit.
Read the guideOther free rota templates
Same conventions, different planning horizon
Weekly staff rota
A Monday-to-Sunday grid with roles, shift times and an automatic weekly hours total.
Get the templateRolling rota (4 on 4 off)
Two rolling patterns worked out across four teams, with a live cover count.
Get the templateBlank rota
An empty Monday-to-Sunday grid, set to print on one landscape page.
Get the templateMonthly rota template questions
-
Put names down the left and 31 narrow day columns across the top, then use single-letter shift codes rather than times so the month fits on the page. Add a
=SUM()total at the end of each row and freeze the first two columns. The template above is already set up this way. -
Delete or hide columns 29 to 31 as needed. The row totals adjust automatically because they sum the whole range.
-
Codes. At 31 columns wide there is no room for “09:00–17:00” in every cell. Define D, E and N on the Instructions tab and use the weekly template when you need exact times.
-
Yes, and it is worth doing. Conditional formatting on AL and BH in particular makes leave and bank holidays visible when you scan down a column looking for gaps.
Before you download
General information only — not legal advice
This document is a general HR template provided for informational purposes only. It is not legal advice and may not reflect the latest changes in legislation or apply to every workplace situation. RosterElf Pty Ltd and the template provider accept no liability for any loss arising from reliance on this document. Users should seek independent legal advice and customise the template to ensure it complies with all relevant laws, awards and workplace requirements.