Team Utilization

Loading…

Connecting…
Date range
Custom
to
People
Counted as utilized

Team utilization
Available hours
Utilized hours
Logged coverage
Leave taken

Utilization by person

Utilized hours ÷ available hours. Leave is removed from the denominator.

Hours by category

Logged work in range. Leave categories are excluded — see the tile above.

Weekly utilization trend

One point per person per week. Weeks fully covered by leave are skipped, not counted as zero.

Detail

Every number above, per person, for the selected range.

Utilization = utilized hours ÷ available hours, where available = 8h × workdays − leave hours. Workdays exclude weekends and company holidays, so a full week of PTO leaves utilization unchanged rather than pushing it to zero. Ranges are clamped to the last day anyone logged, so days nobody has filled in yet don’t read as a utilization collapse — under-logging inside that window still shows in logged coverage. Categories are read from the sheet’s Category column — add one there and it appears here, no code change. Anything named like time off (PTO, Holiday, Sick, Vacation…) is treated as leave and comes out of the denominator. Data source: GET /api/entries (Cloudflare Pages Function). One Google Sheet, one tab per person — the tab name is the person’s name. A tab named with a leading underscore (e.g. _Template) is skipped.