Project Management migration
Field-level mapping, validation, and rollback between TeamGantt and Jira. We move data and schema; workflows are rebuilt natively in Jira.
TeamGantt
Source
Jira
Destination
Compatibility
8 of 12
objects map 1:1 between TeamGantt and Jira.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from TeamGantt to Jira is a philosophical shift from Gantt-first visual scheduling to issue-centric work management. TeamGantt uses Projects as top-level containers with Tasks that carry start dates, durations, and explicit dependency chains visible on a drag-and-drop timeline. Jira uses Projects containing Issues (Epic, Story, Task, Bug) where scheduling is handled by the Advanced Roadmaps add-on and dependency links are maintained through the Issue Links field or the Dependencies field in Advanced Roadmaps. We map TeamGantt task groups to Jira Epics and Stories, preserve Finish-to-Start and Start-to-Start dependency relationships as Jira Issue Links (Blocks/Is blocked by), and carry milestone dates as Jira Milestone-type issue links. Baseline snapshots from TeamGantt are written to a migration artifact so that the customer's admin can configure Advanced Roadmaps baselines manually post-migration. TeamGantt automations and templates do not migrate; we deliver a written inventory of these for the admin to rebuild in Jira's workflow editor.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a TeamGantt object lands in Jira, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
TeamGantt
Project
Jira
Project
1:1TeamGantt Projects map directly to Jira Projects. The TeamGantt project name becomes the Jira Project name; the TeamGantt project description maps to the Jira Project Description field. Project key prefix (e.g., TG or PROJ) must be defined before migration because Jira requires a 2-10 character uppercase prefix on all issue keys. TeamGantt project start date (derived from the earliest task) is set as the Jira Project lead date or recorded as a custom field for Advanced Roadmaps anchor configuration.
TeamGantt
Task
Jira
Story or Task (issue type)
1:manyTeamGantt tasks map to Jira Story or Task issue types depending on the parent Group relationship. Tasks with no children map to Jira Story (if representing deliverable work) or Task (if representing action items). Jira's Assignee, Priority, Due Date, and Description fields map directly from TeamGantt task fields. The Jira issue Status (To Do, In Progress, Done) is set based on the TeamGantt task percent_complete value: 0% = To Do, 1-99% = In Progress, 100% = Done. Jira sub-tasks are used for TeamGantt Groups with children, where each sub-group becomes a Jira sub-task issue.
TeamGantt
Group (Subtask hierarchy)
Jira
Epic or Sub-task
1:manyTeamGantt task Groups (nested subtasks) require a two-level mapping. Top-level groups map to Jira Epic issues within the Project, with the Epic's summary set to the group name and the Epic description carrying the group's notes. Nested sub-tasks within a Group map to Jira Story or Task issues linked as children to the parent Epic. The Jira Epic Link custom field (or the parent-link in Advanced Roadmaps) connects each Story to its parent Epic. Teams that do not use Epics configure Stories instead and use Jira's parent-link field for hierarchy.
TeamGantt
Milestone
Jira
Milestone (Advanced Roadmaps) or Issue with zero duration
lossyTeamGantt milestones are zero-duration date markers. In Jira Standard (no Advanced Roadmaps), we map milestones to Jira Task issues with a custom field milestone_date__c set to the original date, and a label milestone applied. In Jira Premium/Enterprise with Advanced Roadmaps enabled, we create Jira Milestone records linked to the relevant Epic or parent Story. The milestone name and target date migrate; no completion percentage is carried since TeamGantt milestones are static markers.
TeamGantt
Dependency (Finish-to-Start, Start-to-Start)
Jira
Issue Link (Blocks / is blocked by)
1:1TeamGantt Finish-to-Start dependencies map to Jira Issue Links of type Blocks. If Task B depends on Task A (Finish-to-Start), Jira Issue B gets a link of type Blocks pointing to Jira Issue A. Start-to-Start dependencies map to Jira Issue Links of type 'is dependent on' (a bidirectional relationship). We preserve the dependency type and lag time (if any) in a custom field dependency_type__c on the linked issues. Jira requires the destination project to have Issue Links enabled in Project Settings > Issue Features before migration. Lag time is recorded as days_offset__c on each linked issue.
TeamGantt
Baseline
Jira
Migration artifact + Advanced Roadmaps baseline (Premium/Enterprise)
1:1TeamGantt baselines capture a snapshot of the original planned start and end dates for tasks. Jira Advanced Roadmaps (Premium/Enterprise) supports baseline views. We export all saved TeamGantt baselines as a structured JSON artifact (baseline_name, issue_key, planned_start, planned_end, actual_start, actual_end) and provide post-migration instructions for the admin to configure Advanced Roadmaps baselines from this artifact. Standard-tier Jira migrations store baseline data as a custom field set on each migrated issue so the original planned dates are visible without the Advanced Roadmaps add-on.
TeamGantt
User
Jira
User
1:1TeamGantt user records (name, email, role) map to Jira User accounts. We resolve users by email address against the Jira Cloud destination org. The TeamGantt role (Manager, Collaborator, Guest) maps to a Jira project role (Administrators, Members, Viewers). If the Jira destination has fewer seats than the TeamGantt user count, we flag users not provisioned in Jira and provide a migration-user selection matrix so the admin chooses which users to carry forward.
TeamGantt
Label
Jira
Label
1:1TeamGantt labels are categorical tags applied to tasks for grouping. These map directly to Jira Labels (available in all Jira tiers). The TeamGantt label name becomes the Jira Label text value. Labels are applied to the migrated Jira issue as a Label field entry. Jira Labels are not hierarchical; if TeamGantt labels use a hierarchical naming convention (e.g., Dept:Subdept:TaskType), we flatten them to Jira Label format and document the original structure in the mapping spec.
TeamGantt
Checklist
Jira
Checklist (Jira issue description) or Sub-task
lossyTeamGantt checklist items on tasks are migrated as Jira Checklist app items if the destination org has the native Jira Checklist for issue subtasks (Atlassian-owned, available on Premium) or as structured text appended to the Jira issue Description if the destination does not have the Checklist app. We read checklist completion status (checked/unchecked) from TeamGantt and apply the same state in Jira. The mapping choice is made during scoping based on the destination's installed apps.
TeamGantt
Discussion (Task comments)
Jira
Comment
1:1TeamGantt discussion threads on tasks map to Jira Issue Comments. We preserve full comment text, author attribution (resolved to Jira User by email), and timestamp (ActivityDate set to the original TeamGantt comment date). Comment threading structure is flattened in Jira because Jira Comments are a flat list; parent-child relationships in TeamGantt discussions are documented as a note in the mapping spec. Mentions in TeamGantt comments (@user references) are preserved as plain text and mapped to Jira user mentions where the Jira user account exists.
TeamGantt
Custom Field (Project level)
Jira
Custom Field
1:1TeamGantt custom fields at the project level map to Jira Project-level custom fields. We discover field types via the TeamGantt API (text, number, date, dropdown) and create equivalent Jira custom fields before migration. Text fields map to Jira Text Field (free-text). Number fields map to Jira Number Field. Date fields map to Jira Date Picker. Dropdown fields map to Jira Select List (single choice) or Radio Button depending on the TeamGantt field configuration. Custom field values are set on the Jira Project or on each migrated issue as appropriate.
TeamGantt
Custom Field (Task level)
Jira
Custom Field
1:1TeamGantt task-level custom fields map to Jira issue-level custom fields. We handle type mismatches by creating the closest Jira equivalent (e.g., multi-select from TeamGantt becomes a Jira Labels field or multi-select custom field if Jira Multi-Select is available). Currency fields from TeamGantt map to Jira Number Field. URL fields map to Jira URL Field. All custom field definitions (name, type, options, applicable issue types) are documented in the mapping spec with Jira configuration steps for the admin to verify before production migration.
| TeamGantt | Jira | Compatibility | |
|---|---|---|---|
| Project | Project1:1 | Fully supported | |
| Task | Story or Task (issue type)1:many | Fully supported | |
| Group (Subtask hierarchy) | Epic or Sub-task1:many | Fully supported | |
| Milestone | Milestone (Advanced Roadmaps) or Issue with zero durationlossy | Fully supported | |
| Dependency (Finish-to-Start, Start-to-Start) | Issue Link (Blocks / is blocked by)1:1 | Fully supported | |
| Baseline | Migration artifact + Advanced Roadmaps baseline (Premium/Enterprise)1:1 | Fully supported | |
| User | User1:1 | Fully supported | |
| Label | Label1:1 | Fully supported | |
| Checklist | Checklist (Jira issue description) or Sub-tasklossy | Fully supported | |
| Discussion (Task comments) | Comment1:1 | Fully supported | |
| Custom Field (Project level) | Custom Field1:1 | Fully supported | |
| Custom Field (Task level) | Custom Field1:1 | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
TeamGantt gotchas
Project billing model charges per project on Basic tier
Workloads report requires Pro or Unlimited plan
Free plan exports are limited to CSV with no API access
Project start date is inferred, not set explicitly
Time zone and language handling for non-Latin characters
Jira gotchas
Unsupported workflow validators silently skipped during migration
Custom fields converted to flat text labels when migrating to non-Jira platforms
Historical status-change timestamps lost when exporting without a Marketplace plugin
Attachment import failures from oversized files and JQL reference corruption
Points-based API rate limits enforced on Jira Cloud apps from March 2026
Pair-specific challenges
Migration approach
Discovery and Jira edition assessment
We audit the TeamGantt account across plan tier (Free/Basic/Standard/Pro/Unlimited), project count, task volume, dependency chain complexity, baseline count, and custom field inventory. We pair this with a Jira edition assessment: Standard ($8.15/user, min 10 users) covers most migrations; Premium ($16/user) is required if the customer needs Advanced Roadmaps for timeline parity, baseline views, or capacity planning. We also verify whether the Jira destination org already exists or needs provisioning, and we identify the project key prefix to use.
Schema design and Advanced Roadmaps configuration plan
We design the destination Jira project structure: issue type scheme (Epic/Story/Task/Bug/Sub-task), custom fields (matching TeamGantt custom field types to Jira field types), labels (mapped from TeamGantt label names), and issue link types (Blocks / is blocked by enabled). If the destination is Premium/Enterprise, we include the Advanced Roadmaps configuration steps for the admin to enable the timeline view and configure baselines post-migration. If the destination is Standard, we document the custom field approach for planned-date visibility. Jira project schema is configured in a Sandbox first for validation before production migration.
CSV + API extraction from TeamGantt
We extract TeamGantt data via the REST API for accounts on Standard/Pro/Unlimited tiers (where API access is available) and via CSV export for Free-tier accounts or when API access is blocked. We cross-reference CSV and API data to reconcile discrepancies in task dates, assignees, and completion percentages. The Workloads report is requested from the API (Pro/Unlimited) with CSV fallback for Basic/Standard. All TeamGantt baseline snapshots are exported as structured JSON. The extraction output is a staging dataset in our migration tool with full lineage metadata for reconciliation.
Sandbox migration and reconciliation
We run a full migration into the Jira destination Sandbox using production-like data volume. The customer's project manager and Jira admin reconcile record counts (Projects in, Epics/Stories/Tasks in, sub-tasks in, dependencies in, milestones in), spot-check 25-50 random Jira issues against the TeamGantt source, and verify that labels, assignees, and dates are correctly mapped. Any mapping corrections (custom field type mismatches, issue type assignment errors, label flattening issues) are resolved in this phase. The admin approves the mapping spec before production migration begins.
Production migration in dependency order
We run production migration in record-dependency order: Jira Project (created first with the agreed key prefix), Jira Issue Types and custom fields (schema deployed via Jira REST API), Epics (from TeamGantt Groups), Stories and Tasks (from TeamGantt Tasks, with parent Epic linkage), Sub-tasks (from nested TeamGantt Groups), Issue Links (dependency chains as Blocks links with days_offset__c), Labels (applied to all issues), Comments (preserving author, timestamp, and thread ordering), and Custom Field values. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, validation, and automations handoff
We freeze TeamGantt writes during cutover and run a final delta migration of any tasks modified during the migration window. We then enable Jira as the system of record and disable write access to TeamGantt to prevent divergence. We deliver the TeamGantt Automations inventory document (listing every automation rule by trigger and action) and the Advanced Roadmaps configuration runbook to the customer's Jira admin. We do not rebuild TeamGantt automations as Jira Automation rules inside the migration scope; that is a separate engagement. We support a one-week hypercare window for reconciliation issues raised during the first production week.
Platform deep dives
TeamGantt
Source
Strengths
Weaknesses
Jira
Destination
Strengths
Weaknesses
Complexity grading
Standard Project Management migration. 3 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across TeamGantt and Jira.
Object compatibility
3 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
TeamGantt: Not publicly documented.
Data volume sensitivity
TeamGantt doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during TeamGantt to Jira migration scoping. Not seeing yours? Book a call.
Walk through your TeamGantt to Jira migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave TeamGantt
Other ways to arrive at Jira
Same-Project Management migrations
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.