Skip to main content

Google Calendar

Pensero connects to your calendar to understand real working capacity and how availability affects delivery. By accounting for time off and focus time, Pensero ensures delivery metrics reflect how teams actually work, not idealized headcount.

Written by Wayne

Overview

Pensero connects to your calendars to understand how much time teams actually have to deliver work. This allows Pensero to adjust delivery and delivery metrics based on real availability, rather than assuming everyone is working full-time every day.

The integration supports:

  • Personal calendars: Used to estimate focus time and meeting load. Each user must share their calendar with the admin account that connected Pensero and grant permission to see event details. Free/busy-only visibility is not enough to identify meetings and attendees. After the user grants full visibility, Pensero automatically re-syncs and reprocesses the previous seven days; no manual re-fetch is required.

  • Company absence calendars: Used to calculate effective working capacity and understand how time off impacts delivery. This calendar must be explicitly selected by an admin.

Before connecting, ensure your HR system’s absence calendar is already imported into Google Calendar. If the absence calendar is missing, follow the instructions in The correct calendar isn’t showing in the list section.

Pensero currently supports one absence calendar per workspace and refreshes events twice daily, which is sufficient to reflect availability trends without adding noise.

Admins can connect the calendar from the Integrations section using the steps below.

What Pensero Reads from Your Calendar

Pensero reads only absence-related metadata required to adjust delivery calculations.

  • Event Title: Name of the absence event.

  • Start & End Time: Duration of time off.

  • Event Type: Standard, all-day, or recurring events.

Pensero does not read meeting content or personal calendar details unrelated to absences.

Out-of-office detection from personal calendars

In addition to the shared company absence calendar, Pensero can read native “Out of office” events from employees’ own Google Calendar. This detects absences even when your company does not publish them to a shared calendar in a format Pensero can read, and it needs no HR-tool integration and no event-title patterns.

Before you mark anything in your calendar

Marking an event "Out of office" in Google Calendar does nothing in Pensero unless both of the following are already true for your organization.

  1. The calendar integration is connected. An admin has connected Google Calendar in Pensero under Integrations → Sync absence calendars. Without this, Pensero is not reading your calendar at all.

  2. The connected account can see your calendar. Pensero reads your calendar through the admin's connection, with your email address. The Google account that the admin connected must be able to see your calendar.

If either is missing, your out-of-office days are not recorded, your working days are not reduced, and your per-person metrics on the People page will show you with more capacity than you had. The calendar event itself looks correct — nothing in Google Calendar tells you the data is going nowhere.

Check both before you follow the steps below.

How to check whether this is on for your company

Both prerequisites are set at organization level, so you cannot turn them on yourself unless you are an admin.

If you are an org admin:

  • Open Integrations in the left sidebar and look at Sync absence calendars. A connected calendar is listed by name; if you see Connect, nothing is connected.

  • Make sure the connected Google account can see employee calendars (for example, calendars shared inside your company).

If you are not an admin:

Ask your Pensero admin or whoever owns the Pensero rollout at your company to confirm both. Send them this: "Is Google Calendar connected under Integrations, and can the connected account see employee calendars?"

If you are not sure who that is, start a chat with us and we will tell you what your workspace currently has switched on.

If you have already taken the time off

Connecting the calendar affects future syncs only. Out-of-office events from before the connection are not picked up automatically.

So if your company connects the calendar today, leave you took last month is still counted as working days until the historical data is corrected. That correction needs a full re-fetch — contact us and we will run it for the period you need.

Marking time off in Google Calendar

Once both prerequisites are in place:

  1. Open Google Calendar.

  2. Click Create.

  3. Set the event type to Out of office — not Event. Pensero only reads events explicitly marked Out of office.

  4. Add the start and end date of your time off.

  5. Save the event.

Why it matters

Out-of-office time feeds working days, the denominator of every per-person metric on the People page. When absences are not detected they are counted as zero, so anyone who took significant leave (parental, sick, sabbatical) appears to have more capacity than they had, and their output looks weaker than it was.

What Pensero reads — and what it does not

  • Only events the employee explicitly marked as Out of office, and only which days they were away.

  • No meeting titles, descriptions, attendees or locations. Absence is never inferred from free text: “Doctor”, “Gym” or “Off-site” are not absences.

  • For a person with focus time off, the only calendar data Pensero stores is their out-of-office days.

How it is turned on

There is no switch. When an admin connects Google Calendar, Pensero reads Out of office events from the calendar of every active user. Employees do not connect anything, but the account that the admin connected must be able to see their calendars.

It is independent from the individual focus-time setting in both directions: someone with focus time off still contributes out-of-office data, and reading out-of-office events does not give Pensero their meeting data.

Running both sources

Companies that already have a shared HR absence calendar see no change to their numbers: when the same absence appears in both sources it is counted once, not twice. Each absence also records which source it came from, so admins can tell why someone is marked away.

Rollout note

Enabling the setting affects future syncs only. Historical out-of-office data requires a full re-fetch, so contact us if you need past periods corrected.

Metrics available with the Google Calendar integration

Focus time

  • The actual time a person has available for deep work.

  • Pensero estimates it from the calendar by subtracting meetings and time off.

Eff. Delivery (Effective Delivery)

  • Delivery adjusted by focus time.

  • It shows “normalized” delivery, meaning how much the person would have delivered if they had 100% focus time during the period.

  • If someone has 100% focus time, Eff. Delivery equals Delivery.

How to Connect Your Google Calendar (Step-by-Step)

Setup takes just a few minutes and does not require changes to how your team works.

Step 1 – Select Google Calendar

Open the Integrations page from the left sidebar in Pensero, scroll to Sync absence calendars and click Connect.

Step 2 – Authorize Your Google Account

A pop-up will appear asking to connect your Google account. Sign in using the account that contains the company’s absence calendar.

Step 3 – Select the Absence Calendar

Choose the calendar that contains company-wide absence events (e.g., Personio – Time Off, PTO – Company Name, or a webcal link from your HR tool) and click Add calendar.

Important:

Do not select a personal calendar. Always choose the HR-generated company absence calendar. ️

Step 4 – Confirm Sync

After connecting, click the calendar name to review the synchronization logs. Check that:

  • Event Name column is populated

  • Attendees are correctly detected with ✔️ after the name

If attendees appear as None, it usually means the affected employees are not yet set up as Pensero users.

Absence Calendar Missing? How to Add It

Pensero relies on a single, company-wide absence calendar to calculate availability consistently across teams.

If your HR tool (Personio, Deel, Rippling, Omni, etc.) manages absences, you may need to import its calendar into Google Calendar.

To do so:

  1. Copy the calendar URL from your HR system.

  2. Open Google Calendar.

  3. Under Other calendars, click +.

  4. Select From URL.

  5. Paste the link and click Add Calendar.

  6. Return to Pensero → refresh the Absence calendars list.

  7. Select the newly added calendar.

Your absence calendar is now ready to be used for delivery and availability insights.

Why calendar data matters

Without adjusting for time off, delivery metrics can be misleading.

By accounting for availability, Pensero helps teams distinguish between:

  • Delivery issues

  • Capacity constraints

  • Structural inefficiencies

Did this answer your question?