Building Scheduling Rules
Introduction
In this guide, you’ll learn everything you need to know about Rules in EZShift - what they are, why they matter, and how to create or customize them in your schedule.
And if you’re not in the mood to read - no worries!
Just scroll down to Section 5 and see how our AI assistant can do it all for you.
What Are Rules?
EZShift stands out because it can handle many scheduling variables automatically:
- Employees’ availability and requests
- Different contract types or job frameworks
- Rest time between shifts
- Required number of employees per role or skill level
These are the foundation of every schedule, but they’re not enough to make it perfectly accurate. To make the system “think like you,” we teach it through Rules.
Rules are what connect your business logic and preferences to the automatic scheduling engine. They define how the system should prioritize, limit, and balance assignments.
Two Types of Rules
There are two main rule families in EZShift:
Hard Rules:
- Must always be respected
- The system will never break them
Example:
"An employee must have at least 11 hours of rest between shifts".
Flexible Rules:
- Give the system room to make smart trade-offs.
- Each flexible rule has a weight, defining its priority compared to other rules. The higher the weight, the more the system will try to keep it.
Example:
“It’s preferred not to assign more than 2 (maximum 3) opening shifts per week".
- “Preferred” = flexible condition
- “Maximum” = hard upper limit
If your team often faces staff shortages, you might define this as a flexible rule, so the system can decide when to break it - instead of you doing it manually.
To avoid assigning the same employee to too many openings, you could add a biweekly rule, such as “No more than 5 openings in 2 weeks.”
Rules Connect Everything
Rules are the bridge between employees, shifts, and operational logic.
You can tag:
- Employees or employee groups
- Shifts or shift groups
And then create a rule that connects them.
Example:
- Employee group: “Live far away”
- Shift group: “Weekend night shifts”
Rule: “Don’t assign employees who live far away to weekend night shifts.”
This flexibility allows you to build a smart, human-like scheduling engine that fits your real-world constraints
How to Build a Rule
1. From the main screen, click “Advanced Scheduling Rules” on the right side.
This opens the Rules Configuration page.

2. You’ll see a library of ready-to-use rule cards, organized into tabs by rule type:
- Number of shifts during the schedule
- Number of hours during the schedule
- Employees count limitations
- Consecutive assignments
- Rest between shifts
- Rotations
- Special

3. Choose the rule card you want and click “Edit and apply this rule.”

4. In the rule editor:
- In the rule editor:
- Fields highlighted in purple can be modified.
- You can add more parameters using the icons at the bottom.
- Each rule already includes its type - hard or flexible - depending on how it’s written.
Phrases like “prefer” or “at least” represent a flexible rule, while “up to” or “no more than” indicate a hard rule. - Once you’re done, click Save.
Your rule will appear under "List of existing rules in your schedule". - Rules are automatically activated after saving.
You can toggle them on or off anytime using the switch on the right side.
Need Help? Let AI Write It for You
If setting up rules feels too complex - no problem!
In the top-right corner, click the link:
"Prefer to just write the rule and get it? Click here".
You can simply type what you want in plain English (for example: "Don’t schedule waiters for more than 6 consecutive days") and our AI assistant will automatically create the correct rule for you.
Summary
Rules are the heart of EZShift’s smart scheduling engine.
They allow you to:
- Control exactly how automatic scheduling behaves
- Balance flexibility with business needs
- Teach the system your real-world logic
Once your rules are in place, the system will create schedules that are not only efficient — but also fair, compliant, and tailored to your preferences.