Project Management migration checklist

Migration Checklist: Moving to Jira

An exhaustive, phased punch list for moving an existing project workspace onto Atlassian Jira — from scoping through cutover to source decommission.

142 tasks 6–16 weeks typical Updated May 27, 2026
Jira
Projects
Tasks
Subtasks
Comments
Attachments
Dependencies
0 of 142 tasks complete

Phase 0

Decide & Plan

Resolve the scope, owner, residency and success-criteria questions before any export or build work begins.

  • Risk if skipped: Building under the wrong edition forces a re-architect once an edition-specific feature is needed mid-migration.

  • Risk if skipped: Choosing Data Center now without a 2029 exit plan repeats the same migration in three years.

  • Risk if skipped: Implicit scope expands mid-project as stakeholders discover missing data, blowing the timeline.

  • Risk if skipped: Importing unbounded history inflates per-project issue counts and slows JQL queries permanently.

  • Risk if skipped: Building on Standard then discovering Premium-only sandbox or audit needs forces a mid-migration upgrade and re-test.

  • Risk if skipped: An EU customer left on the global tenant must move data residency later under regulator pressure.

  • Risk if skipped: A missing signed BAA on a HIPAA workload means PHI uploaded to Jira is non-compliant from day one.

  • Risk if skipped: Without written criteria, every stakeholder applies their own bar and the project never formally closes.

Phase 1

Pre-Migration Prep

Cleanse the source, build the destination site shape, and stage users so the import has somewhere correct to land.

1a. Source-system audit and cleansing

  • Risk if skipped: Without a baseline, post-cutover deltas can be explained away as normal instead of investigated.

  • Risk if skipped: Duplicates merged after import require manual cleanup against destination issue keys that did not exist at source time.

  • Risk if skipped: Date field imports silently shift days at the date-line, producing wrong deadlines on thousands of issues.

  • Risk if skipped: Import jobs surface validation errors mid-load, leaving the project in a half-populated state.

  • Risk if skipped: Mismatched option values fail validation at import with messages like "custom field require options that do exist".

  • Risk if skipped: German, French and CJK characters arrive as garbled cells with no per-row error.

  • Risk if skipped: Long titles truncate without warning, losing the back half of summaries on thousands of issues.

  • Risk if skipped: Carrying broken or unused configuration into Cloud pollutes the destination and inflates the time JCMA spends scanning.

1b. Destination site and schema setup

  • Risk if skipped: An EU-resident customer left on the global tenant cannot pin data residency retroactively without admin intervention.

  • Risk if skipped: Testing in the production site exposes incomplete data to end users before sign-off.

  • Risk if skipped: Issues with assignees that do not resolve to a provisioned Account ID load with empty assignee and lose ownership.

  • Risk if skipped: Late SSO rollout means user passwords are set locally then re-set under SSO, doubling user friction.

  • Risk if skipped: Creating a Team-managed project where Company-managed schemes are required forces project deletion and re-creation, breaking issue keys.

  • Risk if skipped: Importing into a missing Issue Type defaults every row to Task and loses the source type semantically.

  • Risk if skipped: Importing a Select List value into a context without the matching option silently drops the value.

  • Risk if skipped: Required fields not pre-filled in the source export block every issue carrying that field empty.

  • Risk if skipped: A wide-open Permission Scheme during migration exposes confidential issues to every licensed user.

  • Risk if skipped: Critical app data has no migration path and arrives as orphaned references with no UI hooks.

  • Risk if skipped: Active automations notification-bomb every assignee with spurious assignment, status-change and SLA emails during load.

  • Risk if skipped: Hitting the storage cap mid-load fails attachment uploads and leaves issues with broken file references.

1c. People prep

Phase 2

Source Export

Pull a clean, time-stamped, complete export of every in-scope object from the source — issues, comments, worklogs, attachments and configuration.

  • Risk if skipped: Without PTR, the cutover window is sized by guess and overruns the freeze window.

  • Risk if skipped: A 50,000-issue dump in one CSV stalls the importer and times out before completion.

  • Risk if skipped: Importing assignees by username into Cloud silently leaves the field unassigned because Cloud expects accountId.

  • Risk if skipped: Lost Epic-link associations break every backlog and roadmap view that filters by epic.

  • Risk if skipped: Skipping the binaries leaves the destination with attachment metadata pointing at URLs that go dark once the source is decommissioned.

  • Risk if skipped: Without an export timestamp, you cannot compute what changed between export and cutover.

Phase 3

Transform & Map

Build the field mapping, run the transforms and resolve every PM-specific structural question before sandbox load.

3a. Mapping spreadsheet

  • Risk if skipped: Without a single mapping artefact, transformation rules drift between engineers and the same source field maps two different ways.

  • Risk if skipped: Without a stable upsert key, partial re-imports duplicate every previously loaded issue.

  • Risk if skipped: An unmapped source status fails workflow validation and blocks the issue from being created.

  • Risk if skipped: Storing the inactive original assignee in a custom text field preserves history without inflating the licensed user count.

  • Risk if skipped: If historical SLA reports depend on modified-date, losing it misrepresents past performance permanently.

  • Risk if skipped: Defaulting every source type to Task loses the type semantically and breaks every report grouped by Issue Type.

3b. Data transformation

  • Risk if skipped: A single off-format date row fails the entire issue import with a date-validation error.

  • Risk if skipped: Comma-separated values inside a single Labels cell load as one giant label, not as separate labels.

  • Risk if skipped: German umlauts, French accents and CJK characters arrive as garbled cells with no row-level error.

  • Risk if skipped: An unescaped newline in a Description cell breaks every subsequent row's column alignment.

3c. Relationship and audit-trail decisions

  • Risk if skipped: Without a back-reference, debugging why an issue ended up where it did requires a manual hunt through the source export.

  • Risk if skipped: Re-uploading every binary can exhaust the storage cap and silently fail later uploads.

3d. Jira PM-specific structural transforms

  • Risk if skipped: Flattening five source levels onto Jira's four-level model without an explicit rule produces unpredictable parent-child links and broken roadmaps.

  • Risk if skipped: Dependency pairs imported before both linked issues exist silently drop the link.

  • Risk if skipped: Worklogs lacking author Account IDs default to the import user and misattribute thousands of hours.

  • Risk if skipped: Visibility-restricted comments that lose their restriction become world-readable to every project member.

  • Risk if skipped: Skipping Status creation up front fails the workflow transition the moment the first issue of that type hits it.

  • Risk if skipped: Mixing paths on the same project leaves attachments scattered between native files and external links with no single source of truth.

  • Risk if skipped: Reassigning issues to a freshly created Sprint with today's dates inflates current-sprint velocity and erases historical velocity charts.

Phase 4

Sandbox Test Migration

Run a full dry run against a non-production site, catch every problem, and only proceed when reconciliation passes.

  • Risk if skipped: Sampling only happy-path issues hides the edge cases that fail production at high volume.

  • Risk if skipped: Timezone bugs surface as one-day-off due dates only when the user is in a non-UTC timezone — easy to miss in QA.

  • Risk if skipped: Link rows referencing not-yet-created issues silently drop and leave dependencies missing.

  • Risk if skipped: Sprints recreated with today's dates erase the project's velocity history irreversibly.

  • Risk if skipped: Skipping sandbox sign-off means surprises in production where rollback is expensive and visible.

Phase 5

Production Cutover

Execute the tightly-sequenced production load with the freeze in place, idempotent upserts and full instrumentation.

  • Risk if skipped: Writes after the export baseline produce a permanent delta between source and destination.

  • Risk if skipped: Live automations during load notification-bomb every assignee with spurious assignment and status-change emails.

  • Risk if skipped: Children loaded before parents either fail validation or load with empty parent references.

  • Risk if skipped: Non-idempotent re-runs after a partial failure duplicate every successfully loaded issue.

  • Risk if skipped: Pushing through with partial data hides the gap and surfaces it as user complaints two weeks later.

Phase 6

Validate

Prove the migration was correct. Do not let users into the destination until reconciliation, relationships, audit and UAT all pass.

6a. Reconciliation

  • Risk if skipped: Without PTR, count deltas surface as user complaints weeks later instead of as a structured report on day one.

  • Risk if skipped: Lost comments are invisible until a user looks for a specific decision and cannot find it.

  • Risk if skipped: Worklog drift goes undetected until the finance team reconciles month-end and finds the hours don't match.

6b. Relationship validation

  • Risk if skipped: Lost Epic-Links break every Roadmap and Advanced Roadmap view that filters by Epic.

  • Risk if skipped: Sprints reconstructed with today's dates render a flat historical velocity, erasing the team's actual history.

  • Risk if skipped: A visibility-restricted comment that lost its restriction becomes world-readable to every project member.

6c. Audit and compliance

  • Risk if skipped: An EU-resident customer whose Jira data is on the global tenant is non-compliant with GDPR data-residency commitments.

6d. User-acceptance check

6e. Sign-off

  • Risk if skipped: Skipping written sign-off leaves the project open-ended and lets every post-cutover edge case re-open the migration.

Phase 7

Post-Migration Cleanup

Wrap up so the team can move on — go-live comms, training, source decommission, archive, retrospective.

  • Risk if skipped: Forgotten automation rules surface weeks later as missed SLA, missed status transitions and missed notifications.

  • Risk if skipped: Leavers retaining Jira access exposes confidential project data to insider-risk between offboarding and manual removal.

  • Risk if skipped: Discarded source exports remove the only forensic record if a post-cutover dispute arises a year later.

Watch list

Risks to track throughout

These risks live across multiple phases — keep an eye on them from kickoff through cutover.

  • Status, Workflow and Custom Field Context drift

    Statuses must be created via the admin UI before any Workflow Scheme references them. Custom Field Contexts further scope option values to specific projects and issue types. A single missing Status or option in the wrong context blocks the workflow transition for every issue that needs it and surfaces as a cascading import failure. Lock Statuses, Workflows and Field Contexts in Phase 1 and audit them as part of every sandbox and production load.

  • Audit-trail and original-timestamp loss on import

    Jira's CSV importer accepts Date Created but does not allow overriding Modified Date on import; the field-change Activity history does not transfer across sites. Worklog and Comment authors must resolve to a provisioned Atlassian Account ID or default to the import user, misattributing thousands of hours and hundreds of comments. Capture original modified-date, original assignee and original author into dedicated custom fields in Phase 3 so historical reporting and SLA calculations remain defensible after cutover.

  • Attachment cap and per-file limit mismatch

    Jira Cloud's UI attachment cap defaults to 1 GB per file (max 2 GB). Account storage is plan-capped — 2 GB on Free, 250 GB per product on Standard, unlimited on Premium. A high-volume binary-heavy migration that fits within the per-file cap on paper can still exhaust the account storage cap. Decide the attachment strategy (re-upload via JCMA or UI vs. external storage links) in Phase 0 and Phase 3 before any binary lands.

  • Bulk-load notification bursts and automation runaway

    Loading 50,000 issues into a project with five active Automation rules triggers up to 250,000 rule executions, each potentially sending an email, transitioning a status, or writing a field. Disable every Automation rule, integration and notification scheme on the destination before the first row lands and re-enable in deliberate waves after Phase 6 validation begins.

Pair this with the long-form guide

The complete Jira migration guide

Same research, written as prose: data model, import mechanisms, mapping strategy, pitfalls, and partner landscape.