Jira to Linear Migration Checklist
Overview
- Risk Level: Medium (Operational disruption risk; data integrity concerns).
- Timeline: 4–6 weeks.
- Team Size: 3–5 core stakeholders (IT Admin, Engineering Lead, Project Manager).
Phase 1: Pre-Migration Planning (Week 1–3)
Assessment & Audit
- Conduct a full audit of existing Jira projects, workflows, and issue types.
- Identify stale projects or issues that do not require migration (archival candidate).
- Establish a mapping document between Jira issue statuses and Linear workflow states.
- Assess custom field usage in Jira and determine if they map to Linear properties or labels.
- Define the scope of historical data to be migrated (e.g., last 2 years vs. all-time).
- Identify all active Jira integrations (Slack, GitHub, Sentry) that need re-authorization.
- Document all Jira users and cross-reference with active employees to ensure accurate seat provisioning.
Data Mapping & Golden Copy
- Execute a full export of Jira Cloud data (JSON/CSV) to create a 'Golden Copy'.
- Store the Golden Copy in an encrypted, UK-based S3 bucket or secure server.
- Validate that all attachments are accounted for in the export files.
- Test a small-scale import (1 project) into a Linear sandbox environment.
- Verify that user mapping (Jira email to Linear email) is consistent.
- Clean up Jira board configurations to remove unused custom fields that clutter imports.
- Review Linear’s API rate limits to ensure the migration script won't be throttled.
Integration Audit
- Map GitHub/GitLab repository links to Linear teams.
- Review existing automation rules in Jira and replicate them as Linear Automations.
- Audit third-party reporting tools that pull from Jira; identify Linear equivalents.
- Notify stakeholders of the planned downtime window (48 hours prior).
- Create a "Read-Only" Jira instance plan for legacy reference.
Phase 2: Migration Execution
Pre-Cutover
- Set Jira projects to "Read-Only" mode to prevent data drift.
- Perform a final incremental export of Jira tickets created since the last test run.
- Communicate the "Freeze Period" start time to the entire organisation.
- Disable Jira outgoing email notifications to prevent confusion.
- Verify that the migration service account has administrative privileges in Linear.
Cutover Day
- Execute the primary migration script/tool.
- Monitor the import logs for failed issues or attachment errors.
- Re-run failed imports for individual items if necessary.
- Sync all active GitHub/GitLab pull requests to the new Linear issues.
- Invite all team members to the new Linear workspace.
- Set up Single Sign-On (SSO) integration (e.g., Okta/Google) for Linear.
- Configure Linear notification settings to match team preferences.
Verification
- Perform a "Spot Check" on 10% of high-priority tickets for field accuracy.
- Verify that all attachments open correctly in the browser.
- Confirm that issue relationships (parents/sub-tasks/blocks) are maintained.
- Check that user mentions and comments have the correct author timestamps.
- Validate that active sprints were migrated to Linear cycles.
- Confirm that custom field data is correctly mapped to labels or descriptions.
Phase 3: Post-Migration Optimization
Stabilization
- Monitor Linear workspace performance for the first 24 hours.
- Provide a dedicated Slack channel for migration support/queries.
- Address any "orphan" tickets that failed to map during the bulk import.
- Update internal documentation (Confluence/Notion) with new project links.
- Conduct a "Day 1" training session for team leads on Linear workflows.
Cleanup & Retrospective
- Decommission Jira integrations with external apps.
- Finalise the transition of Jira projects to a permanent archive state.
- Delete temporary migration service accounts and API keys.
- Gather feedback from engineering teams on the workflow transition.
- Document "Lessons Learnt" for future tool migrations.
- Archive the "Golden Copy" backup according to data retention policies.
UK GDPR Compliance Checklist
- Ensure the Jira data export is encrypted at rest using AES-256.
- Conduct a Data Protection Impact Assessment (DPIA) for the migration.
- Confirm that Linear’s data processing agreement (DPA) includes Standard Contractual Clauses (SCCs) for international transfers.
- Verify that no PII (Personally Identifiable Information) is stored in publicly accessible migration logs.
- Ensure that user data mapping does not include unnecessary sensitive information.
- Set an automated deletion policy for the "Golden Copy" once the retention period expires.
- Confirm that all staff access to the migrated data follows the principle of least privilege.
- Update the company’s internal Privacy Notice to reflect the use of Linear as a data processor.
Troubleshooting Common Issues
- Issue: User mapping fails due to differing email aliases. Action: Standardise email formats in a CSV mapping file before import.
- Issue: Attachments fail to download. Action: Check Jira API token permissions or firewall restrictions.
- Issue: Large imports hitting rate limits. Action: Implement a sleep interval in the migration script.
- Issue: Broken links in documentation. Action: Use a redirect script or update links systematically.
- Issue: Workflow states don't match. Action: Manually update the workflow status mapping in the Linear import configuration.
Downloadable Resources List
- Jira-to-Linear Status Mapping Spreadsheet (Template).
- Stakeholder Communication Email Templates.
- Migration Script (Python/Node.js boilerplate).
- Post-Migration "Cheat Sheet" for End Users.
- GDPR Data Processing Agreement (DPA) Checklist.
- Project "Sanity Check" Verification Sheet.