fct_service_usage


Description

Individual transactions of customers consuming services at gyms. Represents each instance where a service is used, whether paid individually, from a purchased package (day pass, class pack), or included in a membership contract. Used for tracking service demand, package utilization, and revenue attribution across the business.

Columns

Column Type Size Nulls Auto Default Children Parents Comments
service_usage_id varchar 256 null

Unique identifier for this specific service usage transaction.

created_user varchar 256 √ null

Username of the staff member who recorded this service usage, or system identifier for automated/self-service entries (e.g., kiosk check-ins, mobile app bookings).

service_id int8 19 √ null
dim_service.service_id erp_v2_fct_service_usage_service_id__erp_v2_dim_service_service_id_fkey_252e7c8293c0 R

The specific service or benefit consumed (e.g., group fitness class, sauna access, personal training session, equipment rental, tanning bed use).

customer_id int8 19 √ null
dim_customer.customer_id fct_service_usage_customer_id_fkey R

The customer who used the service. NULL if customer data was removed for privacy compliance or if usage was recorded anonymously.

organization_unit_id int8 19 √ null
dim_organization_unit.organization_unit_id fct_service_usage_organization_unit_id_fkey R

The gym location where the service was consumed. NULL for imported historical data that lacks location information.

employee_id int8 19 √ null
dim_employee.employee_id fct_service_usage_employee_id_fkey R

The staff member who facilitated or recorded the service usage (e.g., front desk agent, trainer). NULL for self-service usage like automated check-ins or online bookings.

device_id int8 19 √ null
dim_device.device_id fct_service_usage_device_id_fkey R

The physical device (e.g., turnstile, kiosk, or access terminal) that registered this service usage. NULL when the usage was initiated programmatically without a physical device.

inclusive_contingent_id int8 19 √ null
dim_inclusive_contingent.inclusive_contingent_id fct_service_usage_inclusive_contingent_id_fkey R

The membership benefit allowance used to pay for this service (e.g., included classes in a contract, bundled sauna access). NULL if service was paid separately.

purchased_contingent_id int8 19 √ null
dim_purchased_contingent.purchased_contingent_id erp_v2_fct_service_usage_purchased_contingent_id__erp_v2_dim_purchased_contingent_purchased_contingent_id_fkey_b32dd15cbc61 R

The purchased package used to pay for this service (e.g., 10-class pass, day ticket, time-based access package). NULL if service was paid via membership or separately.

start_date_time timestamp 29,6 √ null

Date and time when the customer began using the service, in the gym’s local timezone. For time-based services, marks the beginning of the usage period.

end_date_time timestamp 29,6 √ null

Date and time when the service usage concluded, in the gym’s local timezone. Calculated by adding the service duration to start time. NULL for instantaneous services.

contingent_usages int4 10 √ null

Amount of credit consumed from the customer’s package or allowance. For count-based services, typically 1 per use. For time-based services, represents minutes consumed (e.g., 30 for a 30-minute tanning session).

last_updated timestamptz 35 √ null

System column. UTC Timestamp at which entry was calculated (lags shortly behind source system).

data_landing_time timestamptz 35 getdate()

Relationships