Team Planner is a self-hosted platform for organizations where multiple teams (yours, other departments', outsourced) have to stay coordinated around the clock. Native Entra ID SSO, Personio and Workday leave sync, Outlook Out-of-Office, Jira alerts and Teams/Slack notifications — all configured from one admin console, all running inside your own cluster.
Jordan Marr
Platform Engineer
Sana Levent
SRE
Devin Kwan
Backend Engineer
Priya Ramos
DevOps Lead
Aiden Thorpe
Platform Engineer
Team capacity
Today · 100%
Product tour
Two minutes. A day in the life of a team lead using Team Planner to keep three teams on the same page.
Curious about a specific integration? Jump to Integrations →
Built on four principles
Runs on your own Kubernetes via a versioned Helm chart. Your data stays inside your network — no third-party SaaS holding it.
Not another team calendar. A layer that turns availability data from every source into the one answer your teams actually need: is coverage okay for the next two weeks?
Teams, Slack, Jira, Entra ID and Outlook are all configured by your own admin from one screen. No redeploys.
Capacity, on-call rotations, HR-sourced leave, Outlook OOO, and Jira alerts share the same teams, the same schedule, the same channels.
Planning
Everything your team needs to plan leave, on-call and coverage — with record integrity, RBAC and auditability built for enterprise use.
See who's working, who's out, and today's availability across every team — leave, sickness, project work, on-call and training all in one view.
Pulls sprint boundaries straight from Jira and reports team capacity per sprint, not just per calendar week — planning that matches how your teams actually work.
Leave, sick, project work, on-call and training entries with configurable manager approval flows. Reductions flow into capacity automatically.
Automatic daily, weekly or biweekly rotations with manual overrides for any period, and full audit history.
Four roles — admin, manager, user, viewer — assigned per team, not just globally. Users only see and act on what they should.
A manager can hand a teammate the ability to run a team's settings — approvals, on-call, alerts — without making them the org-chart manager or touching the real reporting line.
Model your real reporting structure: member → manager → director → VP → C-level. Powers approval routing and management views.
Scroll the calendar back to any past date and see exactly who was on the team then — departed members and old team assignments show correctly, badged, never deleted.
Entries from before today lock automatically for regular users — only admins can amend history. Reporting numbers stay trustworthy.
Warning and critical thresholds per team, with coverage-gap detection ahead of critical weeks and on-call/leave conflict warnings.
One team can request spare capacity from another for a defined delivery window — a real request/accept flow, not a Slack DM nobody remembers.
Branding & white-label, CSV import/export via the Import Center, full audit log and a system health panel — all in one place.
Alerts & Ops
Scheduled capacity alerts, scheduled Jira JQL alerts, and push-driven real-time Jira events — all rendered by templates you write, delivered to Teams or Slack.
Capacity-drop alerts, overlapping-unavailability warnings, and on-call/leave conflict alerts that @mention the affected on-call engineer and their manager — on your schedule.
Write any JQL — "P1 tickets unassigned for over an hour" — and get notified on your own schedule. Works for plain Jira Software and Jira Service Management alike.
A native Jira Automation rule pushes the event to Team Planner the instant it happens — new P1 landing, SLA about to breach, ticket reopened — and we relay it to Teams or Slack in seconds.
Write your own message with placeholders for whatever Jira sends — priority, issue key, summary, customer, assignee (with an automatic "Unassigned" fallback), SLA remaining, any custom field. No fixed schema.
If someone is scheduled for on-call the same week they're on leave, Team Planner catches it days in advance and @mentions both the on-call engineer and their manager. Cross-references your on-call rotation with leave records from HR — the two data sources that usually don't talk.
Every alert type — scheduled or real-time — accepts a Microsoft Teams or Slack incoming webhook URL. The channel type is auto-detected. No separate Slack configuration screen, no separate Teams screen.
Integrations
Every integration is added post-deployment from Admin › Integrations. No code changes, no Kubernetes secrets, no redeploys.
Sign in with your corporate identity. Optional — local login is always available as a fallback so you're never locked out.
Automatically imports your org structure, teams and manager hierarchy from Microsoft Graph. No manual CSV upkeep. Scheduled or on-demand.
Sync leave requests and out-of-office from Personio directly into every team's calendar. Approvals in Personio flow through to Team Planner without a second data entry.
Sync absence and leave records from Workday HCM. Ideal for larger organizations where Workday is the system of record for time-off.
When someone sets an OOO auto-reply in Outlook, Team Planner writes it to the calendar automatically. Roll out org-wide, or let members opt in themselves.
Personal and per-team ICS calendar links your users can subscribe to from Outlook, Google Calendar or Apple Calendar. One-way, read-only.
Incoming webhook. Daily digests, capacity alerts and every Jira alert type delivered straight to a Teams channel.
Same one-field setup as Teams. Auto-detected from the webhook URL — no separate configuration path.
One API token powers both scheduled JQL alerts and the real-time Webhook Relay. Works with Jira Software and Jira Service Management.
Deployment
Team Planner ships as a versioned Helm chart, separate from the application source. Your data, your cluster, your control plane.
A dedicated, versioned chart tracks releases independently from the app image. Upgrade on your own cadence.
Auto-generated secrets for a fast first deploy. Every credential and identity-specific value is a clearly labeled placeholder for production customization.
Runs entirely inside your cluster. No vendor telemetry, no data egress, no shared control plane.
Every customer sets their own company name and logo. Nothing hardcoded — the product is neutral by design.
Licensing
Team Planner is self-hosted — you run the image, we handle licensing. Start with the free tier and no license at all. When you need identity sync, HR integrations, and unlimited users, request a trial license.
Free forever
Identity sync (SSO, MS Graph, Personio, Workday, Outlook) unlocks in Trial and Paid.
Get startedFree for 3 months
Contact us for pricing
For organizations that need custom integrations, air-gapped deployments, or dedicated SLAs, we offer an Enterprise arrangement. Reach out through the portal above.
How it works
Pull the image and install the versioned chart into your own Kubernetes cluster. Secrets are auto-generated for the first boot.
docker pull teamplanner21/team-planner:latestSync your org from Microsoft Entra ID or import via the CSV Import Center. Assign per-team admin, manager and viewer roles.
From Admin › Integrations, paste one API token and one or more webhook URLs. Channel types are auto-detected.
Define JQL rules, capacity thresholds, and message templates. Point Jira Automation at the Webhook Relay for real-time events.
Use cases
Get in touch
Open a request in our Jira Service Management portal. We'll track it, respond in-thread, and reach out to schedule a walkthrough of your specific setup.
Open a request in our Jira Service Management portal. We'll track it, respond in-thread, and reach out to schedule a walkthrough of your specific setup.
Open customer portalPrefer email? Write to contact@team-planner.net