Nous recrutons un Customer Support Agent (NL) !
We've just launched a new feature! Check out the new dashboard.

Employee Shift Schedule Template: Pick the Right One, Then Fill It In

By

Lionel Hermans

CEO

Last updated:

28/8/2026

Saturday is your busiest service and you end up with three people on the floor. You find that out on Friday evening, because the file counts hours per person and nobody ever counts heads per day. An employee shift schedule template earns its keep only if it does both at once, so what follows is one filled in over two weeks, with the cost arithmetic and the notice rules beside it.

Which employee shift schedule template do you actually need?

Four shapes cover almost every team we meet, and picking the wrong one wastes more time than filling in the right one. The question is not how many people you employ. It is how much your opening hours move, and whether anyone is shared between sites.

Your situationShape of the templateCycleWhere it breaks first
One site, fixed opening hours, under 10 peopleOne row per person, one column per day1 weekThe first swap between two people
Fixed hours, part-timers with variable hoursSame, plus an hours column per person2 weeksNotice periods, see further down
Continuous 24/7 cover, teams rotatingOne row per team, not per person3 to 8 weeksHeadcount arithmetic, see the rotating shift schedule template
Several sites, staff shared between themOne tab per site plus an availability sheet1 weekThe moment somebody is booked twice

Most managers reach for the weekly grid because it fits on one screen. It stops working as soon as a part-timer’s hours move, since a single week gives you nowhere to balance a short week against a long one. That is the case for two weeks, and it is the shape below.

The two-week template, filled in

Here is the grid for a 24-cover bistro in Ghent, closed Sunday and Monday, five people on the payroll. Shift codes first, because the codes are what keep the cells narrow enough to read on a phone.

  • A: 10:00 to 16:00, 6 hours
  • B: 17:00 to 23:30, 6.5 hours
  • C: 11:00 to 15:00 and 18:00 to 23:30, 9.5 hours split over the day
  • D: 18:00 to 22:00, 4 hours
  • off: rest day

Week 1:

PersonContractTueWedThuFriSatHoursVariance
Sofie, head chef38 hCCCCoff38.00
Bram, chef de partie38 hoffCCCC38.00
Lina, floor30 hBBDBB30.00
Tom, floor19 hAoffoffBB19.00
Yusuf, studentvariableDoffoffDB14.5quota
People on shift 43354139.5 

Week 2:

PersonContractTueWedThuFriSatHoursVariance
Sofie, head chef38 hoffCCCC38.00
Bram, chef de partie38 hCCCCoff38.00
Lina, floor30 hBDBBB30.00
Tom, floor19 hAoffBoffB19.00
Yusuf, studentvariableoffoffDBB17.0quota
People on shift 33544142.0 

Two things are worth noticing before you copy it. The rest day rotates, so Sofie and Bram alternate the Saturday rather than one of them owning it forever. And the two weeks are not identical: week 1 puts three people on Thursday and five on Friday, week 2 flips it. Whether that is right depends on your covers, not on the template. Laying the two weeks side by side simply means you see it before your team does.

Now read the grid sideways instead of downwards. Sofie’s C shift ends at 23:30 and her next one starts at 11:00, which leaves 11.5 hours of rest. The Working Time Directive 2003/88/EC asks for 11 consecutive hours in every 24, plus 24 uninterrupted hours of weekly rest on top of that. She clears it by thirty minutes. Move her start to 10:00 because a delivery is coming, which any manager would do without thinking twice, and the schedule breaks.

That is the trap in every template built column by column: it hides the overnight gap. Close on Friday at 23:30, open on Saturday at 10:00, and you have quietly written 10.5 hours of rest into a grid that looks perfectly legal on the page.

A Carrefour Express in Namur runs this same shape with eight rows rather than five and one extra column: which till the person opens. Same template, one column of local knowledge. That is usually all the customisation a good grid needs.

How do you turn the grid into hours and a labour cost you can trust?

Hours per person are the easy half. The number that decides whether Saturday was worth opening is the loaded cost, and it is the column almost every template leaves out. Take the two-week totals above, put a gross hourly rate against each row, and add the employer charge. The rates below are illustrative, not a sector scale; substitute your own.

PersonHours, 2 weeksGross per hourGross costEmployer chargeLoaded cost
Sofie, head chef76.019.001,444.0025% ONSS1,805.00
Bram, chef de partie76.015.501,178.0025% ONSS1,472.50
Lina, floor60.014.00840.0025% ONSS1,050.00
Tom, floor38.013.50513.0025% ONSS641.25
Yusuf, student31.512.00378.005.42% solidarity398.49
Total281.5 4,353.00 5,367.24

Amounts in euro. The 25% is the basic ONSS employer contribution rate for a private-sector employee in Belgium; the student row carries the solidarity contribution instead, 8.14% in total of which 5.42% falls on the employer, and only while the student stays inside the annual quota of 650 hours that has applied since 2025.

Divide 5,367.24 by 281.5 and you get 19.07 euro of loaded cost for every hour written on the grid. That single figure belongs at the top of the sheet, because it turns any staffing question into arithmetic you can do in your head. One extra evening shift of 6.5 hours costs roughly 124 euro before it has sold a thing.

The student row is where it gets interesting. At the same 12.00 euro gross, Yusuf costs 12.65 an hour loaded while a standard contract at that rate would cost 15.00, a gap of just under 19%. Multiply that across a full season of Saturdays and you can see why the quota counter deserves a cell of its own rather than a mental note.

At Shyfter, we see this cost column left empty more often than any other, and it is the one that answers the only question an owner really asks. If you want the ratio rather than the euros, the labour cost percentage calculation sits directly on top of these two totals.

How far ahead must you publish the schedule?

A template that is legal on Monday can be illegal on Wednesday, purely because of when you sent it. Notice periods for schedules and schedule changes are national, they differ by more than most managers expect, and they are the rule most often broken by a grid that lives on one laptop.

CountryWho it bindsMinimum noticeShortened by agreement?
BelgiumPart-time staff on a variable schedule7 working days before the period startsYes, down to a floor of 3 working days by sectoral CCT
FrancePart-time contracts, any change of hours7 days, article L3123-24 Code du travailYes, down to 3 days by branch agreement
NetherlandsOn-call contracts under the WAB4 days, in writingYes, down to 24 hours by CAO
SpainIrregular distribution of working time5 days, article 34.2 Estatuto de los TrabajadoresNo, that is the statutory floor

Belgium is the one that catches people out. The seven working days run before the period the schedule covers, not before the individual shift. Publish a two-week grid on a Friday afternoon and the second week is comfortably fine while the first is already late.

Which is a second argument for the two-week shape, quite apart from balancing part-time hours: it gives you a publication rhythm that clears the notice in all four countries above without you having to think about it. None of this replaces your own sector agreement, though. In Belgian horeca under joint committee 302, read the CCT before assuming the three-day floor is yours to use.

Where the template stops paying for itself

A spreadsheet template is the right tool up to a point, and we say that as a company selling the alternative. Under ten people, one site, stable opening hours: fill in the grid, it does the job.

The point where it stops is not headcount. It is the first swap. The moment Tom asks Lina to take his Saturday, four things have to change at once: his hours column, her hours column, the people-on-shift row, and the copy of the schedule already sitting on five phones. A spreadsheet updates the first two and lies about the other two. That gap is where the Saturday with three people on the floor comes from.

That is what staff scheduling in Shyfter does differently: hours, rest checks and loaded cost recalculate as the shift moves, and the version on the phone is the version you just changed. If swaps are your particular headache, it pays to write the rules down before automating them, and our shift swap policy guide covers what belongs in that document.

For the grids themselves, the two neighbours of this page are more specific than it is. Want the Excel formulas rather than the shape? The shift schedule template in Excel gives you three grids and the four formulas behind them. Running continuous cover across rotating teams instead? Start from the rotation patterns.

Bring your current grid to a free demo and we will rebuild these two weeks in it with you. Thirty minutes is enough to see where the rest checks fire and what your real cost per hour is.

Frequently asked questions

How many weeks should an employee shift schedule template cover?

Two, in most cases. A single week gives you nowhere to balance a short week against a long one, so a part-timer’s hours never land exactly on contract. Go beyond two weeks only when your cover is continuous and rotates between teams, because there the cycle length is set by the pattern rather than by you.

Does the template have to show hours per person?

Yes, and per day as well. A column of totals per person tells you whether contracts are respected; a row of totals per day tells you whether the service is actually covered. Templates carrying only one of the two are what produce a Saturday with three people on the floor.

Can one template hold full-time staff and students at the same time?

It can, provided the student rows carry their own cost rate. In Belgium a student inside the annual quota of 650 hours is charged the solidarity contribution rather than full employer contributions, so an identical gross hourly rate produces a different loaded cost. Keep the quota counter in the same file, otherwise you discover the overrun in December.

What is the fastest way to check a template for rest violations?

Read it sideways rather than downwards. For each person, take the end time of one shift and the start time of the next; anything less than 11 hours breaches the daily rest rule. By hand that takes about ten minutes for a team of five, which is precisely why it stops being done at fifteen.

Icône Shyfter

Ready to transform your workforce management?

Shyfter is more than a scheduling tool. It's a complete workforce management solution designed to save you time.