Summary
Clash Detection helps prevent double-booking of facilities/locations and instructors.
A clash can occur when:
- Two activities are scheduled at the same time and use the same facility/resource.
- Two activities are scheduled at the same time and use the same instructor.
- A facility or location is closed.
- A session falls outside published opening hours.
- A Resource schedule conflicts with an existing customer booking.
The main exception is Allow Overlap Until Booked (AOUB), which is available only on Resource schedules.
Key Rules
- Classes, Courses, Camps, Ticketed Activities, Resources, and Block Bookings will usually create a Clash when they overlap in the same location or use the same instructor.
- Multiple AOUB Resource schedules can exist at the same time and location while there are no customer bookings.
- Once one AOUB Resource receives a customer booking, the remaining overlapping AOUB Resource schedules become unavailable and show as a Clash.
- If that booking is later cancelled, the overlapping AOUB Resource schedules automatically become available again.
- Block Bookings use Resource templates but do not support AOUB behaviour.
- Ticketed Activities can only overlap other Ticketed Activities in specific circumstances.
- Instructors can be configured to be scheduled at multiple locations, in which case instructor clashes are ignored for that instructor.
- Facility/resource closures and opening hours are always considered during clash detection.
Before Scheduling: What Should I Check?
Use this checklist before creating or publishing schedules.
| Check | Class | Course | Camp | Ticketed | Resource (AOUB Off) | Resource (AOUB On) | Block Booking |
|---|---|---|---|---|---|---|---|
| Another activity using the same facility/resource | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Another activity using the same instructor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Facility opening hours | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Facility or location closure | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Existing customer booking | – | – | – | – | ✓ | ✓ | ✓ |
| AOUB rules apply | – | – | – | – | – | ✓ | – |
| Ticketed overlap configuration | – | – | – | ✓ | – | – | – |
| Instructor can be scheduled in multiple locations | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Legend
- ✓ = Check this before scheduling.
- – = Not applicable.
Activity Overlap Matrix
Assumption: The activities use the same facility/location and/or instructor.
| Scheduled Against | Class | Course | Camp | Ticketed | Resource (AOUB Off) | Resource (AOUB On - Unbooked) | Block Booking |
|---|---|---|---|---|---|---|---|
| Class | Clash | Clash | Clash | Clash | Clash | OK* | Clash |
| Course | Clash | Clash | Clash | Clash | Clash | OK* | Clash |
| Camp | Clash | Clash | Clash | Clash | Clash | OK* | Clash |
| Ticketed | Clash | Clash | Clash | See Note 1 | Clash | OK* | Clash |
| Resource (AOUB Off) | Clash | Clash | Clash | Clash | Clash | OK* | Clash |
| Resource (AOUB On - Unbooked) | See Note 2 | See Note 2 | See Note 2 | See Note 2 | See Note 2 | OK** | See Note 2 |
| Block Booking | Clash | Clash | Clash | Clash | Clash | OK* | Clash |
Notes
* The non-AOUB activity can proceed. The overlapping AOUB Resource becomes unavailable while the overlap exists.
** Multiple AOUB Resource schedules can coexist at the same time and location until one receives a customer booking.
Note 1 – Ticketed Activities
Two Ticketed Activities may overlap only when:
- They belong to the same recurrence, and
- The Overlapping Booking Strategy is selected.
This is intentional behaviour and allows Ticketed Activities within the same recurrence to coexist.
If either condition is not met, a Clash occurs.
Note 2 – AOUB Resources
An unbooked AOUB Resource may overlap:
- Classes
- Courses
- Camps
- Ticketed Activities
- Resources with AOUB disabled
- Block Bookings
In these situations, the non-AOUB activity remains available, and the AOUB Resource becomes unavailable until the overlap is resolved or booking conditions change.
Understanding How Clash Detection Works
Projection
Schedules are typically created as rules rather than individual calendar entries.
For example:
Every Wednesday from 9:00 AM to 10:00 AM in Studio A with Instructor Jane.
Before clash detection can occur, Flow projects these rules into individual sessions with specific dates, times, locations, and instructors.
Clash detection is performed against these projected sessions.
The Two-Step Clash Check
When two projected sessions overlap in time, Flow performs two checks.
Step 1: Can these activity types overlap?
Most activity types are not designed to overlap.
Exceptions include:
- AOUB Resources
- Certain Ticketed Activity scenarios
Step 2: Do they actually compete for the same facility/resource or instructor?
Even if activities overlap in time, a clash only occurs if they compete for the same operational requirement.
For example:
| Activity | Location | Instructor |
|---|---|---|
| Yoga | Studio A | Jane |
| Pilates | Studio B | John |
These sessions overlap in time but do not share a location or instructor, so no clash occurs.
Instructor Clash Rules
By default, instructors cannot be assigned to overlapping activities.
If two sessions share the same instructor at the same time, a Clash is created.
Allow Overlaps
Each instructor can be configured to be scheduled in multiple locations.
When enabled:
- The instructor is ignored during clash detection.
- The instructor can be assigned to multiple activities at the same time.
Example
| Activity | Location | Instructor |
|---|---|---|
| Yoga | Studio A | Virtual Instructor |
| Pilates | Studio B | Virtual Instructor |
If the Virtual Instructor can be scheduled at multiple locations:
- No instructor clash occurs.
- The activities can coexist because they do not share a location.
Schedule Statuses
| Status | Meaning |
|---|---|
| OK | The session has no active clashes and can proceed. |
| Clash | The session conflicts with another session, customer booking, closure, or opening-hours restriction. |
| Cancelled | The session has been cancelled and is excluded from clash detection. |
Cancelled sessions do not participate in clash detection.
Classes
Classes are treated as standard scheduled activities.
Classes cannot normally overlap:
- Other Classes
- Courses
- Camps
- Ticketed Activities
- Resources
- Block Bookings
when they use the same facility/resource or instructor.
AOUB Exception
Classes may overlap an unbooked AOUB Resource.
In this situation:
- The Class remains available.
- The AOUB Resource becomes unavailable until the overlap is resolved or booking conditions change.
Courses
Courses follow the same clash rules as Classes.
AOUB Exception
Courses may overlap an unbooked AOUB Resource.
In this situation:
- The Course remains available.
- The AOUB Resource becomes unavailable until the overlap is resolved or booking conditions change.
Camps
Camps follow the same clash rules as Classes and Courses.
AOUB Exception
Camps may overlap an unbooked AOUB Resource.
In this situation:
- The Camp remains available.
- The AOUB Resource becomes unavailable until the overlap is resolved or booking conditions change.
Resources
Resources can operate with or without Allow Overlap Until Booked (AOUB).
Resources with AOUB Disabled
Resources without AOUB follow standard clash rules.
They cannot overlap conflicting activities that use the same facility/location or instructor.
Resources with AOUB Enabled
AOUB allows multiple Resource schedules to be created for the same time and location while no customer booking exists.
Example
| Activity | Court | Time | Status |
|---|---|---|---|
| Tennis | Court 1 | Monday 8:00 AM | OK |
| Badminton | Court 1 | Monday 8:00 AM | OK |
| Pickleball | Court 1 | Monday 8:00 AM | OK |
All three activities remain available because no customer booking exists.
When a Customer Books
A customer books:
Badminton – Court 1 – Monday 8:00 AM
| Activity | Status |
|---|---|
| Badminton | OK |
| Tennis | Clash |
| Pickleball | Clash |
The booked activity takes priority.
If the Booking Is Cancelled
If the Badminton booking is cancelled:
| Activity | Status |
|---|---|
| Badminton | OK |
| Tennis | OK |
| Pickleball | OK |
The overlapping AOUB Resource schedules automatically become available again.
No manual reinstatement is required.
Ticketed Activities
Ticketed Activities generally follow the same clash rules as Classes, Courses, and Camps.
Ticketed vs Ticketed
Ticketed Activities may overlap other Ticketed Activities only when:
- Both activities belong to the same recurrence, and
- The Overlapping Booking Strategy is selected.
This differs from other clash scenarios because the schedule is intentionally allowing overlap within its own recurrence pattern.
If either condition is not met, a Clash occurs.
AOUB Exception
Ticketed Activities may overlap an unbooked AOUB Resource.
In this situation:
- The Ticketed Activity remains available.
- The AOUB Resource becomes unavailable until the overlap is resolved or booking conditions change.
Block Bookings
Block Bookings are treated as strict reservations.
Although they use Resource templates, they do not support AOUB behaviour.
Block Bookings cannot normally overlap:
- Other Block Bookings
- Booked Resources
- Other activities using the same facility/location
- Other activities using the same instructor
AOUB Exception
Block Bookings may overlap an unbooked AOUB Resource.
In this situation:
- The Block Booking remains available.
- The AOUB Resource becomes unavailable until the overlap is resolved or booking conditions change.
Facility Closures and Opening Hours
A clash is not always caused by another activity.
A session may show as Clash when:
- The facility is closed.
- The specific location is closed.
- The session falls outside published opening hours.
These checks act as a hard availability layer and prevent activities from operating during unavailable periods.
If a closure is removed or opening hours are extended, the Clash can be removed provided no other conflict remains.
Priority and Publish Order
When two activities cannot coexist, Flow generally gives priority to the schedule that was published first.
The schedule published later is more likely to show as a Clash.
This helps ensure newer changes do not automatically override existing schedules.
Exceptions still apply for:
- AOUB behaviour
- Closures
- Opening-hours restrictions
- Other hard scheduling rules
Reinstating a Session After a Clash Is Resolved
Sometimes a Clash is resolved by changing a different schedule.
Examples include:
- Moving a conflicting session
- Cancelling a conflicting session
- Removing a closure
- Extending opening hours
In some cases, the affected session may continue to show a Clash until it is refreshed.
What Is Reinstating?
Reinstating is the process of manually returning a session to OK after the original conflict has already been removed elsewhere.
On the Resource Timeline, the session may appear as:
Available for Publishing
Opening the session provides a:
- Reinstate
- Publish Now
option.
This allows a single occurrence to be restored without republishing the entire schedule.
What Reinstating Does
Reinstating:
- Makes the specific occurrence available again.
- Returns the session to OK.
- Restores the original schedule settings.
- Allows the occurrence to be published directly from the calendar.
Reinstated occurrences are treated as one-off published sessions and may not automatically inherit future changes from the parent schedule.
Automatic Clearance vs Reinstating
Some clashes clear automatically when Flow reprocesses the schedule.
Examples include:
- AOUB-related clashes
- Clashes caused solely by closures
- Clashes caused solely by opening-hours restrictions
AOUB schedules also automatically become available again when the booking causing the clash is cancelled.
Manual reinstatement is most commonly required when:
- Another schedule was changed to remove the clash.
- The original session still carries the previous Clash outcome.
- The session remains unpublished despite the conflict being resolved.
If a Reinstate option is not available, saving or republishing the affected schedule will also refresh it.
Troubleshooting Checklist
If a session shows a Clash, check the following:
- Is another activity using the same facility or location?
- Is another activity using the same instructor?
- Does the instructor have Allow Overlaps enabled?
- Is an AOUB Resource involved?
- Does an overlapping AOUB Resource already have a customer booking?
- Is the facility closed?
- Is the location closed?
- Does the session fall outside opening hours?
- Is this a Ticketed Activity using the same recurrence and Overlapping Booking Strategy?
- Was the clash resolved on another schedule and now requires reinstating?
Working through these checks will identify the most common causes of clashes and help determine the appropriate resolution.