Know who's available and who's on call — before it becomes an incident.
Team Planner is the self-hosted capacity, leave and on-call platform for organizations running multiple teams around the clock. It syncs with your identity, HR and ops tools, and runs entirely 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%
See it in motion
Capacity, on-call and alerts — in one walkthrough
A short look at how planning and operational alerting work together in a single product, on your own infrastructure.
Planning
The capacity, availability and on-call layer
Plan leave, on-call and coverage with the record integrity, RBAC and auditability enterprises expect.
Live team capacity
See who's working and who's out across every team, with per-team warning and critical thresholds that flag coverage gaps before a critical week arrives.
Leave & event workflows
Leave, sick, project work, on-call and training entries with configurable manager approvals — every reduction flows into capacity automatically.
On-call rotations
Daily, weekly or biweekly rotations with manual overrides, full audit history, and warnings when on-call clashes with approved leave.
Role-based access, per team
Admin, manager, user and viewer roles assigned per team on your real reporting hierarchy — and managers can delegate team settings without touching the org chart.
Accurate historical rosters
Scroll back to any past date and see exactly who was on the team then. Past entries lock automatically for regular users, so reporting stays trustworthy.
Also included: cross-team resource requests, calendar-week and Jira-sprint reporting, CSV import/export, white-label branding, full audit log and a system health panel.
Alerts & Ops
The alerting engine most companies rebuild every year, already inside your planner
Capacity, on-call and Jira JQL alerts on the schedule you choose — rendered by templates you write, delivered to Microsoft Teams or Slack.
Fatih Aydın is on-call Aug 4 – 8 but is on approved leave Aug 5 – 6. Reassign coverage for this week.
- On-call window
- Aug 4 – Aug 8 · Platform team
- Approved leave
- Aug 5 – Aug 6 · Annual leave
- Uncovered
- 2 days
- Notified
- @Fatih Aydın · @Selin Koç (manager)
Capacity & on-call conflict alerts
CapacityCapacity drops, overlapping unavailability and on-call scheduled during someone's leave — caught days ahead, with the on-call engineer and their manager @mentioned.
Jira JQL alerts
JiraWrite any JQL — "P1 tickets unassigned for over an hour" — and get notified on your own schedule, in Jira Software or Jira Service Management.
Flexible message templates
No-codeWrite your own message with placeholders for anything Jira returns: priority, issue key, summary, customer, assignee (with an "Unassigned" fallback) or any custom field.
One channel field. Teams or Slack, auto-detected.
Every alert type accepts a Microsoft Teams or Slack incoming webhook URL, and the channel type is detected for you.
Integrations
Connects to the identity, HR and ops tools you already run
Every integration is added post-deployment from Admin › Integrations — no code changes, no Kubernetes secrets, no redeploys.
Hover a tile for details
Microsoft Entra ID SSO
SSO / OIDCSign in with your corporate identity, with local login always available as a fallback.
Microsoft Graph sync
Graph APIImports your org structure, teams and manager hierarchy automatically, on a schedule or on demand.
Personio
HR APIApproved leave in Personio lands in every team's calendar without a second data entry.
Workday
HCM APISyncs absence and leave records where Workday HCM is the system of record.
Outlook Out-of-Office
Graph APIAn OOO auto-reply in Outlook writes itself to the calendar — org-wide or opt-in per member.
Calendar feeds (ICS)
ICSRead-only personal and per-team feeds for Outlook, Google or Apple Calendar.
Microsoft Teams
WebhookOne incoming webhook delivers daily digests, capacity alerts and every Jira alert.
Slack
WebhookSame one-field setup as Teams, auto-detected from the webhook URL.
Jira Cloud
API tokenOne API token powers scheduled JQL alerts across Jira Software and Service Management.
Self-hosted
Runs on your own Kubernetes cluster
Team Planner ships as a versioned Helm chart, separate from the application source. Your data, your cluster, your control plane.
- Versioned Helm chart, upgrade on your cadence
- Secure-by-default values, secrets auto-generated
- No vendor telemetry, no data egress
- White-label from the first install
Install with Helm
git clone https://github.com/alpyanar82/team-planner-helm
helm install team-planner ./team-planner-helm \
--namespace team-planner --create-namespaceThe chart pulls the two published images from Docker Hub automatically — nothing to pull or push yourself.
From helm install to your first Teams alert
Deploy the Helm chart
Install the chart into your cluster — it pulls the backend and frontend images from Docker Hub automatically, and secrets are generated on first boot.
Set up teams & roles
Sync from Microsoft Entra ID or import a CSV, then assign per-team roles.
Connect Jira, Teams, Slack
Paste one API token and your webhook URLs in Admin › Integrations.
Write your alerts
Define JQL rules, capacity thresholds and your message templates.
Licensing
Start free. Upgrade when you're ready.
Team Planner is self-hosted — you run the image, we handle licensing. Start on the free tier with no license at all, and request a trial when you need identity sync, HR integrations and unlimited users.
Free
Free forever
- Up to 20 users, 2 teams
- CSV import
- Teams / Slack notifications (outbound webhook)
- Jira alerts
- Community support (GitHub issues & docs)
Identity sync (SSO, MS Graph, Personio, Workday, Outlook) unlocks in Trial and Paid.
Get startedTrial
Free for 3 months
- Unlimited users, unlimited teams
- All integrations unlocked (SSO, MS Graph, Personio, Workday, Outlook)
- All alert types
- Direct email support from the team
Paid
Contact us for pricing
- Everything in Trial
- Annual license, priority support
- Installation assistance if needed
- Custom feature discussions
For organizations that need custom integrations, air-gapped deployments, or dedicated SLAs, we offer an Enterprise arrangement. Reach out through the portal below.
Use cases
One product for planning and paging
Rotations that stay covered
- Weekly on-call rotations with overrides and audit history
- Conflict detection when on-call clashes with leave
- JQL alerts routed to the channel the team already watches
Get in touch
Talk to us through our customer portal
Open a request in our Jira Service Management portal and we'll respond in-thread and schedule a walkthrough of your specific setup.
- Track your request status anytime
- Get replies directly in the portal
- No credit card, no obligation
Open customer portal
Open a request in our Jira Service Management portal and we'll respond in-thread and schedule a walkthrough of your specific setup.
Open customer portalPrefer email? Write to contact@team-planner.net
