Connecting an OOO Data Source in Span
Last updated: March 11, 2026
Out-of-office (OOO) tracking lets Span understand when team members are unavailable, ensuring that productivity metrics reflect actual working time rather than vacation or absence periods. This document explains how to connect an OOO data source, how OOO days are determined, and how this data flows through Span's reports and metrics.
Overview
Span requires a single configured OOO data source per organization. When connected, Span automatically computes OOO person-days for each team member and uses that data to normalize metrics across reports.
You can source OOO data from one of two options:
Source | Best For |
Calendar Integration (default) | Teams with consistent calendar hygiene who mark OOO events in Google Calendar, Outlook, etc. |
HRIS Integration via Kombo | Organizations with a formal HR system of record for time-off (e.g., Workday, BambooHR, Rippling) |
Note: Only one OOO source can be active at a time. Choose the source that best reflects your team's actual availability.
Option 1: Calendar Integration
How It Works
Span connects to your calendar provider (e.g., Google Calendar or Microsoft Outlook) and scans for events where the attendee is marked as Out of Office / unavailable.
For each such event, Span:
Converts the event window to the employee's local timezone
Calculates how many hours of the event overlap with business hours (8am–6pm)
Applies a weekday filter — weekends are never counted
Marks the day as OOO if the event covers more than 4 hours of business hours
Examples:
Calendar Event | Business Hours Covered | OOO Day? |
All-day Monday event | 10 hours (8am–6pm) | ✅ Yes |
Half-day event (8am–1pm) | 5 hours | ✅ Yes |
Short block (10am–12pm) | 2 hours | ❌ No |
All-day Saturday event | Weekday filter | ❌ No |
Edge cases: Events starting after 6pm are shifted to the following day; events ending before 8am are attributed to the previous day.
Setup
Go to Settings → Integrations
Connect your calendar provider (Google Calendar or Microsoft Outlook)
Navigate to Settings → Calendar Configuration to confirm Calendar is selected as your OOO source
Option 2: HRIS Integration (via Kombo)
How It Works
Span integrates with your HRIS via Kombo, a third-party integration layer that normalizes absence and time-off records from a wide range of HR systems into a common schema. Span syncs these records daily.
Supported HRIS platforms include:
Workday
BambooHR
HiBob
Rippling
ADP Workforce Now
Dayforce
Okta (HRIS)
Don't see your system? Contact your Span representative — Kombo supports many additional platforms.
Configuring Which Absence Types Count as OOO
Not all absence types in your HRIS may represent true time away from work. During setup, you can configure how Span filters absence records:
Mode | Description | Use When |
Default (no filter) | All absence records count as OOO | Most HR-tracked absences are genuine out-of-office days |
Include (whitelist) | Only specified types count (e.g., "Vacation", "Sick Leave") | You want explicit control over what counts |
Exclude (blacklist) | All types count except those listed (e.g., "Work from Home") | Most absences should count, with a few exceptions |
Setup
Go to Settings → Integrations
Connect your HRIS via the Kombo connector; select Absences as a data type to sync during the connection flow
Navigate to Settings → Calendar Configuration to select HRIS as your OOO source and configure absence type filtering
How OOO Data Is Attributed
Once your OOO source is connected, Span computes a daily OOO record per person. A person is marked OOO on a given day when:
It is a weekday (Monday–Friday)
Their OOO coverage exceeds the 4-hour business hours threshold (Calendar), or an approved absence record exists in HRIS
These OOO person-days are tracked at the individual level and rolled up to team and organization-level capacity views.
Reports and Metrics Impacted
OOO data plays two roles across Span:
Normalization — OOO days are excluded from metric denominators so that productivity metrics reflect only actual working days
Capacity visibility — OOO person-days are surfaced directly as a metric for planning and analysis
Productivity Metrics (Normalized by Active Non-OOO Days)
The following metrics explicitly exclude OOO days from both their activity counts and their normalization denominators:
Metric | How OOO Affects It |
Active Coding Days | Only counts days with VCS activity and not OOO |
Commit Days / Week | Days with commits per active contributor, excluding OOO |
PRs Merged / Week | PR counts normalized to active (non-OOO) coding days |
Commits per Active Coding Week | Excludes weeks with OOO from the denominator |
PR Comments per Active Coding Week | Normalized against active coding days only |
PRs Reviewed per Active Coding Week | Normalized against active coding days only |
Velocity (Weighted PRs per Dev Week) | OOO days excluded from the active-day denominator |
AI Days / Week | AI usage days per active contributor, excluding OOO |
Focus Time (hours/week) | Calculated only over working days; OOO days excluded from the weekly average |
Where to find these: Insights → Productivity (Code, AI, and Focus Time sections)
OOO-Specific Metrics
These metrics directly measure time-off patterns and availability:
Metric | Description |
OOO Person-Days | Total OOO days across selected scope and time period |
Avg OOO Days | Total OOO person-days ÷ headcount |
Total Employee Active Days | Total non-OOO days across all employees |
Total Employee Active Weekdays | Total non-OOO weekdays; used as denominator for Focus Time and meeting metrics |
Where to find these: Insights → Productivity → Focus Time and the Time & Capacity Analytics dashboard
Cost Capitalization / Allocation
OOO time is excluded from cost capitalization (CapEx/OpEx) calculations because it represents non-productive capacity. You can configure how Span handles OOO time that cannot be redistributed to other work:
Option | Behavior |
Mark as Uncapitalized | OOO hours count toward total FTE but are not attributed to capitalized work |
Redistribute, Otherwise Uncapitalize | Span rescales OOO FTE into other work logged during the period; if impossible, marks as uncapitalized |
Redistribute, Otherwise Hide | Same redistribution attempt; if impossible, removes from reported FTE entirely |
You can also configure the redistribution period (Day, Week, Month, or Quarter). Week-level redistribution is generally recommended as it covers most OOO scenarios without over-redistributing across unrelated work.
Where to configure this: Settings → Calendar Configuration → OOO Exclusion Method
Choosing the Right Setup
Calendar | HRIS | |
Data freshness | Real-time | Daily sync |
Accuracy depends on | Engineers keeping calendars up to date | HR system being the official time-off record |
Absence type control | Limited (4-hour threshold only) | Flexible (include/exclude specific absence types) |
Setup effort | Low (calendar likely already connected) | Medium (requires HRIS connection + absence type configuration) |
Best for | Teams with strong calendar habits | Organizations with formal HR time-off policies |
Frequently Asked Questions
Can I use both Calendar and HRIS at the same time? No. Span uses a single OOO source per organization. Choose the source that most accurately reflects actual availability.
What happens if no OOO source is connected? Metrics that normalize by active days will treat every weekday as a working day. This can inflate per-week productivity metrics for team members who take time off.
Does OOO tracking affect Active Contributors counts? The standard Active Contributors metric uses a 30-day rolling window and is not affected by individual OOO days — temporary absences don't drop someone from the active contributor count. The Daily Active Contributors metric (used as a normalization denominator) does exclude OOO days.
Is OOO data visible at the individual level? Yes. OOO days are viewable per person in the Focus Time and Time & Capacity Analytics views, in addition to team-level and org-level roll-ups.
Will OOO Data be applied retroactively once an OOO source is configured? Yes, OOO data is applied retroactively — both Calendar and HRIS integrations will process historical data from your source system when first connected, not just data from the setup date onwards. This means your existing productivity metrics will be retroactively normalized once the source is configured.
However, how far back the data goes depends on your source system, not on Span:
Calendar integration — Span will pull all historical OOO-marked calendar events that your calendar provider retains. Google Calendar and Outlook generally retain event history as long as the events exist in the calendar.
HRIS integration — Span will sync all historical absence records available in your HRIS. Most HR systems retain years of absence history, so this is typically very complete.