User Offboarding Checklist
Steps a sysadmin or MSP technician runs to offboard a departing employee — disabling identity, securing data, retrieving hardware, and confirming no orphaned access remains. Covers in-house IT and MSP-supported environments using Entra ID / Active Directory and M365 or Google ...
Pre-Departure Coordination
-
Confirm departure details with HR
Capture the last working day, exact disable time (often coordinated with the manager's termination meeting), manager of record, and whether any post-departure access extensions are approved. Voluntary vs. involuntary departures affect timing — involuntary terminations typically disable at the start of the meeting, not end-of-day.
Collects list Collects date Collects text -
Pull the user's access inventory from the IdP
Export the user's app assignments from Entra ID, Okta, or JumpCloud as the source-of-truth access list. Cross-check against IT Glue / Hudu documentation for non-SSO apps (legacy systems, vendor portals, shared credentials). The SSO list will miss anything provisioned outside the IdP — that's where orphan access hides.
-
Determine mailbox and file disposition with the manager
Decide per company policy: convert mailbox to shared (no license cost after 30 days in M365), set auto-reply with redirect, or forward to manager. Identify OneDrive / Google Drive transfer target. Document the decision — this drives the mailbox and files section.
Collects list
Identity and Access Revocation
-
Disable the account in Entra ID or AD
Disable — do not delete. Deletion breaks audit trail and mailbox recovery. In hybrid environments disable in on-prem AD and let AD Connect sync, or block sign-in directly in Entra ID. Move the object to a disabled-users OU to prevent accidental re-enablement.
-
Revoke active sessions and refresh tokens
Disabling the account does not kill in-flight sessions — OAuth refresh tokens can keep the user signed in for up to 90 days on mobile. Run "Revoke sessions" in Entra ID and the equivalent in Okta / Google Admin. Sign out of all devices in M365 admin center.
-
Remove MFA methods and registered devices
Delete Authenticator registrations, FIDO2 keys, phone numbers, and TAP (Temporary Access Pass) entries. Leftover MFA on a re-enabled account is a backdoor; clean state is the only safe state.
-
Block legacy authentication and email forwarding
Disable IMAP/POP/SMTP AUTH on the mailbox and remove any user-created inbox rules that forward externally. Pre-emptive — a departing user can stage exfiltration via a forwarding rule before the disable fires.
-
Revoke VPN and ZTNA access
Revoke client certificates in the firewall or ZTNA broker (Cisco AnyConnect, FortiGate SSL VPN, Palo Alto GlobalProtect, Cloudflare Access, Zscaler Private Access). Cert revocation is separate from account disable — a cached cert can still authenticate against some configurations.
-
Remove from security groups and distribution lists
Strip the user from all security groups (file share access, Teams membership, app assignments) and distribution lists. Capture the group list first — it becomes input to the access review for the role replacement.
Mailbox and Files Handling
-
Execute the mailbox disposition decision
If converting to shared in M365: convert before the 30-day grace ends to avoid relicensing. If forwarding: configure transport rule rather than user-side rule (survives mailbox conversion). If retention-then-delete: apply the in-place hold per retention policy.
-
Transfer OneDrive or Google Drive ownership
Set the manager as the secondary owner in M365 admin or transfer via Google Workspace data transfer. OneDrive auto-deletes 30 days after license removal — get the transfer done before the license is reclaimed.
Collects file -
Audit and reassign shared mailbox permissions
List every shared mailbox, calendar, and Teams channel where the user had Send As / Full Access. Remove individual grants; reassign to the role's successor where needed. Send-As left on a departed user is a common audit finding.
-
Archive Teams and Slack DMs per retention policy
Apply the retention label or eDiscovery hold before deactivating the Slack / Teams identity. For Slack, convert to a guest account if needed to preserve search; for Teams, the Entra ID disable preserves message history under the M365 retention policy.
SaaS Application Deprovisioning
-
Deactivate non-SSO SaaS accounts from the inventory
Walk the list from the IdP export plus IT Glue / Hudu non-SSO apps. For each: Salesforce, HubSpot, Asana, Notion, Figma, Atlassian, GitHub — deactivate (don't delete) to preserve activity history. Capture a screenshot or admin-log entry per app.
Collects file -
Audit GitHub or GitLab org membership
Remove the user from the org. Check for personal forks of internal repos — those don't auto-delete and may contain secrets. Rotate any PATs (personal access tokens) or deploy keys the user created. SSH key revocation is separate from org removal.
-
Rotate shared credentials the user knew
Pull the vault audit log (Keeper, 1Password, Bitwarden, IT Glue) for every shared item the user accessed in the last 90 days. Rotate those credentials. Standing knowledge of a shared admin password survives the account disable.
-
Reclaim or reassign software licenses
Free the M365 / Google Workspace license, Adobe CC seat, Zoom license, and any per-seat SaaS. Update the asset management record so the seat is available for the next hire — unreclaimed seats are the largest source of license waste at audit.
Endpoint and Hardware Retrieval
-
Initiate device retrieval logistics
For remote employees, send a prepaid shipping label or schedule a courier; for on-site, collect at exit interview. Track shipment with the asset record. Set a 10-business-day SLA — escalate to HR if the device isn't back by then.
-
Confirm device received and condition
Match serial number against the asset record. Note any damage on the intake form — drives chargebacks per company policy. If the device was lost or unreturned, trigger the remote-wipe path in Intune / JAMF before closing this step.
Collects list -
Issue remote wipe through Intune or JAMF
Trigger MDM wipe command and confirm acknowledgement from the device. For unmanaged or off-network devices, file an internal incident — the device is now an unaccounted-for asset with company data, and may require breach assessment under HIPAA / GDPR depending on contents.
-
Archive BitLocker or FileVault recovery keys
Confirm the recovery key is escrowed in Entra ID / Intune / JAMF before wiping. Wiping a device without the escrowed key, when forensic preservation may later be needed, is a one-way mistake.
-
Wipe and reimage the endpoint
Run the company wipe standard — Autopilot reset for Windows, Apple Configurator erase for Mac, or full DBAN for end-of-life disposal. Update Intune / JAMF so the device record is freed for the next assignment.
-
Recover physical access items
Collect badge / fob / physical keys. Deactivate the credential in the access control system (HID, Brivo, Kisi, Genetec) — a returned-but-active badge is a finding. Update the parking system and any visitor-management entries.
Closeout and Follow-Up Audit
-
Notify stakeholders that offboarding is complete
Send the confirmation to HR, the manager, and (for client-facing roles) the account team so external auto-responders and CRM ownership get updated. Include a one-line summary of exceptions — extended access granted, devices outstanding, etc.
-
Update directory, org chart, and on-call rotations
Remove from PagerDuty / Opsgenie schedules, the GAL, internal wiki ownership, Slack channel topics, and the public org chart. Stale on-call schedules cause real outages when an alert pages a departed user at 3am.
-
File the offboarding record in the PSA or ITSM
Attach evidence — IdP disable confirmation, drive transfer screenshot, SaaS deactivation log, asset return form, wipe confirmation. This is the audit artifact for SOC 2, ISO 27001, and SOX access-termination controls.
Collects list Collects paragraph Collects signature -
Run the 30-day orphan access audit
Query Entra ID sign-in logs, SaaS admin logs, and the badge system for any activity tied to the disabled identity. Cross-check IT Glue / Hudu for credentials still listing the user as owner. Anything found here is a process gap — feed it back into the checklist.
-
Run the 90-day final access review
Final confirmation: shared mailbox can be deleted per retention, license fully reclaimed, all temporary post-departure access extensions have expired. Close the loop in the PSA so the ticket is fully resolved for audit.
Use this template
Copy it to your account, customize the steps, and run it with your team in minutes.
Browse hundreds of free templates across every team and industry.
Back to template libraryRun User Offboarding Checklist with your team
Customize the steps, assign roles, set a schedule, and keep a complete record for every run.