Relying on CSV when comment history or attachments matter. CSV exports from Jira carry field values only. Comments, attachments, inline images, revision history, and issue links are not included. If any of these matter, CSV is not a migration method.
Leaving custom fields unmapped. Jira custom fields without a target in Azure DevOps do not produce an error. They produce silent data loss. Every custom field needs a mapping decision before migration starts.
Skipping user identity mapping. Jira and Azure DevOps identify users through different systems. Name matching alone is not reliable. Build a mapping file that connects each Jira identity to the correct Azure DevOps identity before running the migration.
Migrating everything in one pass. Start with a pilot. Migrate one project. Validate field by field, not at a glance. Fix mapping issues while the cost is low. Then run the full migration in stages.
Overlooking links to items outside the migration scope. Jira issues often link to items in other projects. If those projects are not in scope, the links break after cutover. Identify cross-project dependencies before migration and decide how to handle them.