How does the calendar system work?
The Hubhus calendar is the core of your booking system. It determines when a resource is available, how events block time, how booking forms calculate options for customers, and how external calendars (Google/Outlook/CalDAV) influence availability.
On this page
Jump to any section using the links below
The Hubhus calendar is the core of your booking system. It determines when a resource is available, how events block time, how booking forms calculate options for customers, and how external calendars (Google/Outlook/CalDAV) influence availability.
Understanding these connections gives you a predictable, consistent booking flow.
Calendar vs. booking form vs. event
Table of Contents
Calendar
The calendar shows all activity across campaigns and resources. It includes:
Busy events
Free events
Resource availability
Business hours
Travel/buffer calculations
External calendar blocks
The calendar is the truth source for what is available and what is not.
Booking form
The booking form is the customer-facing page used to create a booking.
It controls:
Duration
Required resources
Address rules
Driving time + buffer rules
Time interval settings
Layout and branding
What constitutes a valid “slot”
The booking form feeds into the calendar.
Event
An event is the actual booking placed into the calendar.
Events contain:
Start/end time
Duration
Address/location
Assigned resource
Description
Metadata about how it was created
Busy events block availability.
Free events do not block availability.
Resources and users
A resource is anything that can be booked:
A technician
A consultant
A team
A vehicle
A room
Each resource may have:
Individual working hours
Calendar sync setup
Business hour restrictions
Default address or location
The booking engine checks each resource independently when looking for available times.
How availability is calculated
Availability = a combination of several rules:
1. Resource availability
The resource must be:
Active
Not already busy
Not absent (holiday/special date)
Not blocked by external calendar events
2. Business hours
Bookings must fit within business hours unless overridden by the form.
3. Travel time / driving rules
If travel logic is enabled, Hubhus checks:
Travel time from previous event
Travel time to next event
Travel time from opening of day
Travel time to closing of day
Distance from customer address
Strict travel rules are the #1 reason why times disappear.
4. Event duration
The selected service (e.g., “2-hour measurement”) must fit fully in the gap.
5. Buffers
Pre/post buffers expand the “blocked area” around events.
6. Special dates
Override standard hours. Used for:
Vacations
Holidays
Half days
Company events
If a day is blocked as a special date, no availability will be shown.
External calendar sync (Google / Outlook / CalDAV)
Each resource can sync their personal calendar to Hubhus.
This allows the system to treat external events as part of its availability logic.
How it works
When a user connects an external calendar:
Busy events from Google/Outlook block availability
Free events do not block availability
Hubhus events are pushed to the external calendar
Updates sync continuously
Travel/buffer rules consider external blocks as part of the day
This ensures personal meetings, dentist appointments, private errands, etc., all correctly affect availability.
How campaigns affect the calendar
Hubhus is structured around campaigns, each representing a workflow module such as:
Quotation
Measurement & installation
Service
Invoicing
When a customer moves from quotation → installation → invoicing, they become a new lead in each campaign, each with a new lead ID and new data structure.
Why this matters for the calendar
The calendar does not merge these leads.
Therefore, the same customer may appear multiple times in the calendar, each event tied to the campaign that created it.
Example:
The quotation campaign created a consultation event
The installation campaign created a measurement event
The service campaign created a follow-up event
All three appear in the calendar as unique entries — with different lead IDs — even though they belong to the same person.
This maintains:
Clean automations
Accurate reporting
Correct workflow separation
Yet all events from all campaigns impact availability and external sync.
Booking origin: manual vs booking form
Events can be created:
Manually by a Hubhus user
Automatically via a booking form
The event footer shows you exactly how and when it was created:
Clicking the footer opens full metadata such as:
Booking form used
IP address
Customer inputs
Related lead
This is crucial for understanding unexpected bookings.
Business hours and special dates
Business hours
Define when bookings are generally allowed (e.g., 08:00–16:00).
Special dates
Override normal hours entirely.
Examples:
Christmas closed
Training day
Summer schedule
Special dates always override regular business hours.
About tags (Resource tags & User tags)
Tags in Hubhus are used to organize how resources and users behave across booking, availability, and internal workflow logic.
Resource tags
Resource tags are applied to resources (technicians, teams, vehicles, rooms, etc.) and determine:
which resources a booking form is allowed to use
which resources appear in availability
which resources can be matched to specific service types, regions, or skills
how multi-resource bookings are constrained
Booking forms often rely on resource tags to ensure that only relevant resources are considered when calculating times.
User tags
User tags are applied to users (internal staff) and are used for:
grouping users
access control
visibility rules
internal routing
User tags do not affect availability directly.
Linking user tags to resource tags
Hubhus allows you to link user tags to resource tags.
This controls which users are eligible to be assigned when a booking form requires a resource with a specific tag.
Important points:
A single resource tag can be linked to multiple user tags
Users inherit assignment eligibility through their user tag
This creates a clean permission model for who can be scheduled for which type of work
Example:
If a booking form requires the resource tag Inspection Technician, only users with user tags linked to this tag can be assigned.
Learning outcome
After reading this, you should understand:
The difference between calendars, booking forms, and events
How resources define availability
How availability is calculated
How special dates influence scheduling
How external calendar sync affects blocking
How campaigns create separate leads and events
Why the same customer may appear multiple times in the calendar
How to check booking origin for troubleshooting
? Common searches
booking setup • calendar setup • appointment scheduling • booking configuration
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article