Home › Blog › Jira Offboarding Workflow

Jira Offboarding Workflow: Department Checklist and Setup Guide

TL;DR: A Jira offboarding workflow runs five departments in parallel under one Epic per departing employee — IT, HR, Legal, Security, and Manager, each as a Component with a default assignee and a time-relative due date. IT and Security tasks close on or before the last day; HR within three business days; Legal within five; Manager knowledge transfer begins five days before. The timing is the part that fails without Jira: a Slack thread can hold the list but not enforce who does what by when.

Onboarding gets all the attention. There are templates, welcome kits, buddy programs, 90-day plans. A Jira offboarding workflow, meanwhile, is usually a Slack message to IT saying "can you disable Sarah's account?" — followed by three weeks of discovering things that were never turned off. (PPLX Software builds TeamOps, a Jira app for HR workflows — vendor on record. Every step below runs on native Jira.)

The problem compounds. Every incomplete offboarding leaves behind active credentials, lingering access to shared drives, API tokens nobody revoked, and knowledge that walked out the door without documentation. Security teams now treat ex-employee accounts as a distinct attack surface — SSO audit logs routinely surface active accounts for departed employees weeks after their last day.

IT and infrastructure

IT owns the largest chunk of offboarding tasks, and these are the most time-sensitive. Every hour of delay after an employee's last day is an hour of unnecessary access. In Jira, track all IT Tasks under the IT Component — run project = OFFB AND component = IT AND statusCategory != Done ORDER BY due ASC on the last day to confirm every task is closed before account disable proceeds.

For engineering-specific offboarding (SSH keys, deploy access, code review ownership), see the Engineering Offboarding template.

HR and people operations

HR offboarding is less urgent than IT, but has legal deadlines attached to some of it.

Legal and compliance

Legal tasks are often overlooked because they involve paperwork that does not feel urgent. They are urgent — and the IT sequence depends on them. Disable accounts before legal hold is complete, and you may have destroyed evidence you were obligated to preserve.

Security

Security overlaps with IT but deserves its own Component because these tasks require a different owner and a different due-date constraint. Use project = OFFB AND component = Security AND statusCategory != Done ORDER BY due ASC as the Security lead's working view. For a deeper treatment, read The Security Tasks Everyone Forgets During Offboarding.

Manager and knowledge transfer

The manager is responsible for making sure the team does not lose institutional knowledge when someone leaves.

Timing and structure summary

Department Jira Component Default assignee Due date Tasks
Manager Manager Direct manager Last day − 5 business days Reassign issues, KT session, Confluence transfer, sprint update
IT IT IT manager Last day SSO disable, email revoke, VPN, SaaS revoke, hardware collect
Security Security IT security lead Last day SSH keys, PATs, privileged access, file audit, MFA recovery
HR HR HR business partner Last day + 3 business days Final payroll, benefits, HRIS update, exit interview, separation letter
Legal Legal General counsel Last day + 5 business days NDA confirm, IP assignment, litigation hold, equity paperwork, data retention

Setting up the Jira offboarding workflow

Timing is the failure point. The department checklists set the sequence; Jira enforces it by making each step a trackable deadline with an owner.

Project configuration

Use a company-managed project, not Jira Service Management. Service Management adds request types and customer portals suited to support queues; an internal offboarding workflow needs a board with assignees and due dates, not a ticket intake form. Simplify the issue type scheme to two: Epic and Task. Removing Story, Bug, and Sub-task from the scheme prevents classification confusion when HR is confirming an NDA, not reviewing a pull request. In Jira's hierarchy, Tasks are Level 2 children of the Epic — one Task per checklist item, each owned by the assigned department.

Create five Components in the project settings — IT, HR, Legal, Security, Manager — each with the default assignee from the timing table. When a Task's Component is set, Jira assigns it to that Component's default assignee automatically. No per-task manual assignment.

Epic structure per departure

One Epic per departing employee, named "Offboarding — [First Last] — [Last Day]". Set the Epic's start date five business days before the last day — that is when manager knowledge-transfer tasks should begin. Set the due date 30 days after the last day, because some legal and compliance tasks do not close until then.

Due-date scheme

Set each Task's due date relative to the Epic's last-day date. For Tasks created manually, set each sub-task's due date individually using the offsets below; the Automation rule in the next section calculates these automatically when you open the Epic.

Automation

Jira Cloud Automation can spawn the full Task set the moment a new offboarding Epic opens. Rule structure: trigger Issue created, condition Issue type = Epic AND Project = OFFB, then one Create issue action per checklist item with Issue Type = Task, parent set to the triggering Epic, the Component, and a due-date smart-value expression — {{issue.dueDate}} for last-day tasks, {{issue.dueDate.plusDays(3)}} for HR, {{issue.dueDate.plusDays(5)}} for Legal, {{issue.dueDate.minusDays(5)}} for manager KT. One rule, one trigger, 15–20 actions. Without it, whoever opens the Epic creates each Task manually every time someone leaves.

Add the actions in this order — Legal first, IT last. The litigation-hold task must exist before IT disables the account; creating it last means a fast IT admin can close the account before Legal has even opened the task.

# Issue Summary (paste into "Create issue" action) Component Due smart value Config note
1 Initiate litigation hold review Legal {{issue.dueDate}} Create first — IT account disable must wait until Legal clears this task
2 Confirm NDA and non-compete on file Legal {{issue.dueDate.plusDays(5)}}
3 Issue IP assignment confirmation Legal {{issue.dueDate.plusDays(5)}}
4 Process equity and vesting paperwork Legal {{issue.dueDate.plusDays(5)}} Add to rule only if equity applies to all departures; create manually otherwise
5 Confirm data retention compliance Legal {{issue.dueDate.plusDays(5)}} GDPR: offboarding Epic itself is an employee record — note in Epic description before archiving project
6 Identify and reassign open Jira issues Manager {{issue.dueDate.minusDays(5)}} Run assignee = "name" AND statusCategory != Done before account disable — currentUser() queries break after deactivation
7 Conduct knowledge transfer session Manager {{issue.dueDate.minusDays(5)}} Confluence KT page must be created and linked before account is deactivated
8 Transfer Confluence page ownership Manager {{issue.dueDate.minusDays(3)}} Bulk transfer via Profile → Content → Change owner; requires site admin if account is already deactivated
9 Update sprint capacity and reassign 1:1 reports Manager {{issue.dueDate}} Remove from active sprint; subtract story points from capacity figure
10 Audit recent file downloads and data exports Security {{issue.dueDate}} Record outcome in task description: "nothing anomalous" or link to Confluence investigation note
11 Remove from privileged access and admin groups Security {{issue.dueDate}} Add "is blocked by" link to task 12 — privileged group removal depends on SSO cut first
12 Disable SSO / IdP account IT {{issue.dueDate}} Step 1 of IT sequence — add "blocks" links to tasks 13, 15, and 16 so assignees see the dependency
13 Revoke email access and set forwarding IT {{issue.dueDate}}
14 Deactivate VPN credentials and device certificates IT {{issue.dueDate}}
15 Deactivate Jira and Confluence account in Atlassian Admin IT {{issue.dueDate}} Deactivate, don't delete — deletion removes assignee and reporter names from all issues site-wide
16 Revoke remaining SaaS access (Slack, GitHub, Figma, AWS) IT {{issue.dueDate}} Walk SSO audit log; non-SSO tools need manual revocation separately
17 Revoke SSH keys and invalidate personal access tokens Security {{issue.dueDate}} Log revocation date in description — audit trail if a breach investigation asks when access closed
18 Rotate shared credentials the employee had access to IT {{issue.dueDate}} Shared service accounts, team passwords, secrets vault entries
19 Collect hardware (laptop, badge, YubiKeys, hotspot) IT {{issue.dueDate}} List each item by serial number in description for asset audit
20 Process final payroll including PTO payout HR {{issue.dueDate.plusDays(3)}} Override due date to jurisdiction's legal deadline — California requires same-day for involuntary termination
21 Terminate benefits and send COBRA notice HR {{issue.dueDate.plusDays(29)}} US federal law: 30 days from qualifying event; use plusDays(29) as the safe deadline
22 Update HRIS termination date, type, and rehire eligibility HR {{issue.dueDate.plusDays(3)}} Verify SCIM sync propagated — some connectors provision on hire but skip automatic deprovisioning
23 Send separation letter HR {{issue.dueDate.plusDays(5)}} If severance applies: track document state with labels (drafted → sent → signed) rather than status transitions

Before relying on the rule in a real departure, test it against a staging instance or a separate sandbox project. Create a test Epic with due date 14 days out, confirm all sub-tasks appear within 30 seconds, and verify each due date matches the expected offset. The most common failure is a field mismatch: the smart value {{issue.dueDate}} references Jira's internal "Due date" field, but some company-managed project configurations expose it as "End date" — if the due-date offset actions produce blank dates instead of calculated ones, check which field name your project uses under Project Settings → Fields and update the smart-value token to match.

Closing the Epic automatically

Add a second rule: trigger All sub-issues moved to Done, condition Issue type = Epic AND project = OFFB, action Transition issue to Done. Without it the Epic stays open indefinitely after every task resolves — the manual close is the step that gets skipped. Chain a second action to Edit issue → Labels → add with the smart value closed-{{now.format("yyyy-MM-dd")}}. The label makes quarterly audit queries unambiguous: project = OFFB AND issuetype = Epic AND labels = "closed-2026-*" returns every completed offboarding in the year without relying on Jira's status-change history.

Saved filters for working visibility

Save these three as team-managed filters (accessible to project members without admin rights, under Filters → View all filters → Create filter):

Once you have built this out — the Epic-per-employee structure, the five Components with default assignees, and the due-date offsets per department — the General Offboarding template in TeamOps (PPLX Software, our app) ships that same structure pre-wired. It creates the per-department sub-tasks with the Component assignments and timing above already configured, so the automation step is already done. Free for teams up to 10.

TeamOps automates this workflow inside Jira. Free for teams up to 10

Frequently asked questions

How do you revoke Jira access when someone leaves?

Disable the employee's SSO or identity-provider account first (Okta, Azure AD, Google Workspace), since most Jira access is granted through SSO and disabling it cascades. Then remove the user directly in Jira and Atlassian admin so any non-SSO access is closed, and walk the SSO audit log to confirm nothing was missed. Do this on or before the last day.

What Jira permissions does the offboarding Epic owner need?

Create Issues and Edit Issues in the offboarding project, plus Manage Components if you're configuring the department Components or their default assignees. The auto-assign behavior on each Component requires no extra permission — Jira resolves the default assignee when the Component field is set. Building the automation rule requires Manage Project or a Jira automation admin role in the project.

How do you offboard a Jira admin without losing site admin access?

Before disabling the account, open Atlassian Admin → Users and filter by "Site admin" role. If the departing employee appears there, promote a replacement to site admin first — not just project admin or Jira admin, which do not grant access to the Atlassian Admin panel. Have the replacement confirm they can reach Atlassian Admin under their own credentials before you disable the outgoing account. The same check applies to automation rules: if the departing employee built and owns the offboarding automation, verify the replacement has "Manage project" permission in the project before account disable, or the rules become uneditable until a site admin reassigns them.

Can I track onboarding and offboarding in the same Jira project?

Yes, but label them distinctly (onboarding vs offboarding Epic labels) and use Component filtering for each department's view. At scale the shared project blurs — IT sees access-grant tasks alongside revoke tasks in the same board column. The cleaner split is two projects (HR-ONBOARD and HR-OFFBOARD), each with its own Component set and automation rule. Use Jira issue links to cross-reference them when a departing employee's access list becomes the baseline for a replacement hire's provisioning.