timeslots_1h_occupancy_data_v1

This view contains historical occupancy data, aggregated in hourly time slots.

These timeslots contain occupancy values per monitored location, based on the raw sensor data values but without the complexity of understanding raw sensor data.

Data structure

Column

Meaning

Memo

timeslot_id

Unique primary key

Is a concatenation of location_id + Calendar_datetime

calendar_date

Calendar date in ISO 8601 format
(yyyy-mm-dd)

e.g. 2025-10-28

day_of_week

Integer value between 1 (Monday) and 7 (Sunday)

Also for US

calendar_datetime

Date + Time that represents the timeslot in local time

In ISO 8601 format
(yyyy-mm-ddThh:mm:ss)
Increments every hour

e.g.

2025-10-28T08:00:00

2025-10-28T09:00:00

2025-10-28T10:00:00

2025-10-28T11:00:00

timeslot_start

Same information as calendar_datetime but as a STRING and including time zone.

Time zone is derived from the building.

e.g.
2025-10-28T08:00:00+02:00

hour_of_day

Integer value between 0 (1st hour) to 23 (last hour)

creation_datetime

Technical timestamp when the row was created, in ISO 8601 format and always in UTC

location_id

Unique key of the location

  see locations_v1

location_class

Class of location

Built in enum:
FLOOR
ROOM
WORKPLACE
PARKING

parent_location_id

Unique key of the parent location

  see locations_v1

parent_location_class

Class of parent location

Built in enum:
FLOOR
ROOM
WORKPLACE
PARKING

building_id

Unique key of building

  see locations_v1

floor_id

Unique key of floor

  see locations_v1

space_class

Space Class

Built in enum:
WORK
MEETING
FOCUS
PARKING
SANITARY
OTHER

capacity

Capacity of the location

Value depends on location_class:
For WORKPLACE: always 1
For PARKING: always 1
For ROOM: taken from Studio

For FLOOR: sum of capacities of sublocations

locations_total

Nr of sublocations

Regardless if they are monitored or not

locations_occupancy_monitored

Nr of sublocations with occupancy sensor

Used for occupancy rate calculations

locations_occupied

Nr of sublocations that are occupied during the timeslot

Used for occupancy rate calculations

rooms_total

Nr of rooms in total, including the ones that are not monitored

Only useful for location_class = FLOOR

rooms_occupancy_monitored

Nr of rooms with occupancy sensor

Only useful for location_class = FLOOR

workplaces_total

Nr of workplaces in total, including the ones that are not monitored

Only useful for location_class = FLOOR

workplaces_occupancy_monitored

Nr of workplaces with occupancy sensor

Only useful for location_class = FLOOR

occupancy_data_class

Data class of occupancy sensor

Built-in enum:
PRESENCE
HEADCOUNT

presence

If presence = 1 during 1 or more corresponding hourly values, then presence = 1 for the whole hour

Is always 1 (presence detected) or 0 (no presence detected) within the hour

headcount_peak

Highest headcountthat occurred during this hour

Highest headcount within the hour

headcount_low

Lowest headcount that occurred during this hour

Lowest headcount within the hour

headcount_average

Average headcount that occurred during this hour

Average headcount within the hour

utilization_time

Nr of hours that the space was occupied in the hour
(= SUM of corresponding 15-min values)

For 1h timeslots, values are between 0 and 1h

utilization_rate

Average utilization_rate during this hour

Average utilization_rate of the corresponding 15-minute values

utilization_rate_peak

Highest utilization_rate during this hour

Highest utilization_rate of the corresponding 15-minute values

utilization_rate_low

Lowest utilization_rate during this hour

Lowest utilization_rate of the corresponding 15-minute values

efficiency_rate

Average efficiency_rate during this hour

Average efficiency_rate of the corresponding 15-minute values

efficiency_rate_peak

Highest efficiency_rate during this hour

Highest efficiency_rate of the corresponding 15-minute values

efficiency_rate_low

Lowest efficiency_rate during this hour

Lowest efficiency_rate of the corresponding 15-minute values

occupancy_rate

Average occupancy_rate during this hour

Average efficiency_rate of the corresponding 15-minute values

occupancy_rate_peak

Highest occupancy_rate during this hour

Highest occupancy_rate of the corresponding 15-minute values

occupancy_rate_low

Lowest occupancy_rate during this hour

Lowest occupancy_rate of the corresponding 15-minute values

business_day_start_hour

Start of business day (time value)
e.g. 09:00:00

Derived from Studio

business_day_end_hour

End of business day (time value)
e.g. 17:00:00

Derived from Studio

 

Calculations

Values are recorded 24 hours per day, all days.

The business_day_start_hour and business_day_end_hour are recorded for historical purposes.

All values are historical!

They are calculated at the time of recording and may not represent the current values.

This is especially important to understand for capacity, space_class, locations_total etc.

How the timeline values are aggregated

image-20251208-122422.png

The 1-hour timeslots contain values per hour, which are aggregations of the corresponding 15-minute values. So for each hour, values are calculated based on the 4 corresponding quarter-hours.

For each metric, the table contains 3 values:

  •    Average of the 4 corresponding quarter-hour values
  •    Highest of the 4 corresponding quarter-hour values
  •    Lowest of the 4 corresponding quarter-hour values

(See table above for details)