Niro Digital

Digitalisation

Shift planning software: a standard rota app or a custom build?

//November 11, 2026 · 13 min read

Buy a standard rota app when your rules come from the law and your collective agreement. Build custom only for the part a test with four past weeks shows the standard can't handle.

Shift planning software builds the rota, checks it against working-time limits and turns the hours people actually worked into the record the law asks for. Buy a standard rota app when your rules come from the law and your collective agreement. Build custom only for the part where a test with four past weeks shows the standard can't plan or record it. Whichever you choose, the system must export the record, with its change history, in a format you can open without the vendor.

We're Niro Digital and we build custom business software, so we have an interest in this question. None of our published projects is a shift planning system. This article rests on EU, Slovenian, German and UK law, with the links at the end.

What does shift planning software have to do?

The rota is only the first step. The system has to cover the path from the plan to the payslip.

StepThe question it answersWhat it produces
PlanWho works when, and at which postThe rota
CheckDoes the plan break rest, overtime or night-work rulesA warning before you publish
ChangeWho covers for a sick colleague, and when were they toldA record of the change
RecordWhen did each person actually start and finishA daily entry in the working-time record
PayHow many hours were night, Sunday or overtimeData for payroll

The rota apps in the search results mostly describe building shifts, tracking attendance and handling leave. So ask every vendor about the check and pay steps separately. That's where the plan meets the law and the payslip.

Which working-time rules must the rota check?

The rota should check the limits before you publish it, not when you run payroll. Directive 2003/88/EC sets working-time limits that apply in every EU country.

The table compares the directive with Slovenia's Employment Relationships Act (Zakon o delovnih razmerjih, ZDR-1), Germany's Working Time Act (Arbeitszeitgesetz, ArbZG) and the UK's Working Time Regulations 1998.

RuleEU directiveSlovenia (ZDR-1)Germany (ArbZG)UK (WTR 1998)
Daily rest11 consecutive hours in 2412 hours, or 11 with uneven or temporarily changed hours11 hours after the working day ends11 consecutive hours in 24
Working time48 hours a week on average, overtime included, over up to 4 monthsFull time at most 40 hours a week; at most 56 with uneven hours8 hours a working day, up to 10 if the average over 6 months or 24 weeks stays at 848 hours a week on average over 17 weeks, unless the worker agrees in writing
RecordingA system that measures each worker's daily hours (judgment C-55/18)A daily entry, kept permanently (ZEPDSV)A duty to record hours since a 2022 federal labour court decisionRecords adequate to show compliance, kept for 2 years

Then add your national detail. Slovenia is a good example of how much a rota has to know:

  • Overtime. At most 8 hours a week, 20 a month and 170 a year. With the worker's consent the cap is 230 a year, and every order beyond 170 needs their written consent. A working day lasts at most 10 hours (ZDR-1, Article 144).
  • Ordering overtime. The employer orders overtime in writing, as a rule before the work starts (Article 144).
  • The annual schedule. You set it before the calendar or business year starts and tell workers in writing. A temporary change needs written notice at least one day ahead (Article 148).
  • Weekly rest. 24 uninterrupted hours on top of daily rest, averaged over 14 consecutive days (Article 156).
  • Night work. Night work is work between 23:00 and 06:00. In rotating shifts that include nights, a worker on one shift works nights for at most one week in a row (Articles 150 and 151).
  • Breaks. A full-time worker gets 30 minutes, counted as working time. The break can start after the first hour of work at the earliest and one hour before the end of the working day at the latest (Article 154).

A collective agreement can change some of these. In Slovenia, a sector agreement can stretch the reference period for full-time hours to 12 months (Article 158). The reference period is the span over which weekly hours are averaged.

Write your rules down as a list before you compare vendors. The system must check every line, or at least warn you.

What must the working-time record contain?

The record holds what happened, not what was planned. The EU set the principle in 2019. In case C-55/18, the Court of Justice said member states must require employers to set up an objective, reliable and accessible system that measures each worker's daily working time. Each country decides the form, taking account of the sector and the size of the company.

Slovenia shows what a detailed version looks like. Its Labour and Social Security Records Act (ZEPDSV) lists 11 items you enter for each worker every day (Article 18). They include:

  • total hours worked, overtime and hours not worked, by type;
  • the time the worker arrived and left;
  • hours of night, Sunday, shift and public-holiday work, and split shifts;
  • hours under an uneven or temporarily changed schedule;
  • a running total for the week, month or year that shows the reference period.

You can enter the special hours and the running total monthly. Everything else goes in daily.

You keep the record permanently, at the company's seat or where the person works (Article 19). You give each worker the previous month's data in writing by the end of payday.

An electronic record isn't required of every employer. The law requires one for two years after a final fine for certain breaches (Article 19.a). It also requires one once you accept a proposal from a trade union or works council (Article 19.b). In an electronic record, every later change must carry its reason and the time it was made.

Fines for a company run from €1,500 to €20,000, and from €3,000 to €20,000 for breaches of the electronic record rules. The ranges are lower for smaller employers (Articles 23 and 23.a).

In Germany, the Federal Labour Court (Bundesarbeitsgericht) ruled in 2022 that employers must record working time. That duty comes from the occupational safety act (Arbeitsschutzgesetz). The Working Time Act itself still only requires a record of hours beyond 8 a day in its published text.

The federal labour ministry drafted changes to the Working Time Act in June 2026, including rules on recording working time. The draft is not law: the published act was last amended on 23 October 2024.

In the UK, you keep records adequate to show you've complied with the limits, for two years. You needn't record daily hours if you can show compliance another way.

For choosing a system, this comes down to three questions:

  1. Does it calculate every item your country requires from the clock-in and clock-out data?
  2. Does it log the reason and time of every change, even where the law doesn't require that of you yet?
  3. Can you export the whole record when you switch vendors?

In Slovenia the record is permanent. Your contract with the vendor isn't. If you plan staff in more than one country, the system has to know each country's rules separately.

What should stay standard?

Keep standard everything where you don't differ from other companies. The vendor develops these functions for all its customers, so you don't pay for that development alone.

  • Building the rota from shift templates.
  • Shift swaps and time-off requests through a mobile app.
  • Holidays and sick leave.
  • Clocking in and out.
  • Exporting hours to payroll.

Check with every vendor what's in the package and what you buy on top.

When is a custom build worth it?

A custom build pays when the difference is real, lasting and something you can write down. Look for four signs:

  1. You plan people for several clients. A staffing agency places workers at client sites. Each client has its own shifts, rates and rules, and the rota has to keep them apart.
  2. The rota depends on qualifications. A shift may need, say, a forklift driver with a valid licence. If the app only knows a name and a job title, the rota can't tell who may go where.
  3. The rota has to talk to other systems. Hours go into billing per client, a CRM or a production plan. Without a connection, someone retypes them.
  4. The spreadsheet survives every test. The same spreadsheet stays in the same place next to every system you try.

A custom build doesn't pay when your rules are just the law and your collective agreement. Then it's better that a vendor updates the rules for all its customers when the law changes. Slovenia's records act, for example, changed in 2023 and again in 2025.

It also doesn't pay when one person holds all the rules, or when nobody in the company will own the system. In those cases, fix the process first, starting with the four-question filter for when not to automate a process.

How do you test a rota app with four past weeks?

Before you sign, enter four past weeks in the vendor's trial environment, with your own people and shifts. A demo shows what the system can do. This test shows what it can't.

WeekWhat the system must doThe test fails if
An ordinary weekBuild the rota from templates and send it to staffYou send the rota as a photo or PDF
A week with a sick day midweekSuggest a cover who still gets the full daily restYou check the cover's rest by hand
A week with overtime near the capWarn before someone passes the weekly or monthly overtime limitYou track the limit in a spreadsheet
A week of night shiftsRotate the night shift on time and flag night hoursYou count night hours for payroll separately

Then export the record and the payroll data for the same four weeks. Check that every item your law requires is in the export. Change one entry, and check that the export shows the reason and time of the change.

Have your planner run the test, not the vendor. For each week, write down where you had to open Excel.

Our rule: if all four weeks and the export pass, buy standard. If one or two fail at the same step, consider a mix. If they fail at different steps, test a second vendor before you build anything. If most fail because of the way you plan, a custom build has a good case.

How does a mix of standard and custom work?

The standard app stays the main record for the rota and the working-time record. The custom app covers one step, such as planning by qualification or billing per client. It writes its data back to the standard app.

A mix has two conditions. The vendor needs a documented API, the agreed way two programs exchange data. And every piece of data needs one owner, not two versions in two systems.

Ask the vendor three questions before you buy:

  • Does the API read and write rota and time entries, or only read them?
  • Is API access included in the package?
  • What happens to connections when the system is upgraded?

What belongs in the contract?

Settle these three topics in writing before you sign. They apply to a standard app and to a custom build.

Exporting the record. Ask for an export of the whole record, change history included, in a machine-readable format, at any time and not only when you leave. Run a trial export before you sign, as in the data-export and exit-cost tests for a CRM.

Personal data. The record holds personal data about every worker. Ask who processes it, where it's stored and under which contract. They're the same questions as in the data triage for a first AI pilot.

Code in a custom build. The contract should say that the code, the repository and the documentation are yours. The repository is the place the code is stored.

How do you compare the cost of standard and custom?

We don't give prices here, because they depend on scope. Compare both options over the same period, such as five years, and on the same lines.

LineStandard rota appCustom build
StartSetup and configuring your rulesAnalysis and development
DataMoving staff, shifts and hour balancesMoving staff, shifts and hour balances
PeopleTraining planners and staffTraining planners and staff
Every yearSubscription per user or per workerHosting and maintenance
Changes in the lawAsk whether the subscription covers themYou pay for them yourself
ExitExporting the recordHanding the code to a new developer

Add a third option: do nothing. Put in the hours your planner spends on the spreadsheet rota and the payroll corrections caused by miscounted hours. Only that option shows whether either path pays at all.

What we do and what we don't

Our custom business software development starts with a map of the process, and we don't write code before the map. For Evroproces we built an internal staffing CRM with monthly timesheets and the payroll and margin maths. Rates carry validity dates and are copied onto each monthly record, so a rate change today can't rewrite a past month. Recruitemy holds client contracts with live headcount and a skills catalogue.

A typical project runs one to three months with three people on it full time. Repositories are in your name from day one, unless we agree otherwise in writing.

We don't rebuild the rota, clocking in or the payroll export if your app already handles them. We only replace something when it is the constraint itself. If the saving doesn't cover the price, we say so and don't sell it.

If you've run the four-week test, tell us where it stopped. A person replies within one working day. The first call is a working session, not a demo.

Key takeaways

  1. //01Shift planning software has to plan, check the rules, handle changes, record actual hours and feed payroll, not only draw the rota.
  2. //02The EU minimum is 11 hours' daily rest and a 48-hour average week; Slovenia asks for 12 hours' rest and caps full time at 40 hours.
  3. //03Since the C-55/18 judgment in 2019, every EU country must require a system that measures each worker's daily hours. In Slovenia the record has 11 items, entered daily and kept permanently.
  4. //04Before you sign, enter four past weeks, with a sick day, overtime and night shifts, and test the export.
  5. //05Build custom only for the step that fails, such as planning for several clients or by qualification.

Keep reading

Blog

All posts
  1. // · AI automation · 10 min read

    Make, Zapier or n8n: which fits your process, and when to write code

    Make, Zapier and n8n count usage differently, keep your data in different places and suit different people. Choose by the process, the data and who maintains it, and switch to custom code when the workflow becomes core to how you work.

  2. // · Advertising · 10 min read

    Lead generation campaigns: what to set up before the first euro

    A paid lead generation campaign is a chain from the ad to a sales conversation. Most of the money is lost after the form, so six things have to be in place before you spend anything on ads.

  3. // · Advertising · 10 min read

    Blue-collar recruitment ads: what to set up before launch

    Paid social ads can bring in applications from drivers, operators and production workers. Whether those applications are useful, you decide before launch, with seven things you set up before the first euro of ad spend.

Start here

Tell us the constraint

Operations, workers or customers. One sentence is enough, we'll reply within one working day.

One more field on the next page, your name, and it's sent. No newsletter. A person replies.