Project Management migration
Field-level mapping, validation, and rollback between GanttPRO and Jira. We move data and schema; workflows are rebuilt natively in Jira.
GanttPRO
Source
Jira
Destination
Compatibility
11 of 12
objects map 1:1 between GanttPRO and Jira.
Complexity
CModerate
Timeline
2-4 weeks
Overview
Moving from GanttPRO to Jira Software Cloud is a shift from dependency-first Gantt scheduling to issue-tracking with sprint-based delivery. GanttPRO structures data around a portfolio-project-summary task-subtask hierarchy with four dependency types (Finish-to-Start, Start-to-Start, Finish-to-Finish, Start-to-Finish) that have no direct Jira equivalent. We resolve this during schema design by creating custom Jira issue link types for each dependency variant, then validate dependency link counts post-migration against the source data. GanttPRO also distinguishes project members (human users) from virtual resources (role-based placeholders with cost rates); virtual resources convert to assignee notes rather than Jira user accounts since Jira does not have a native cost-rate model. We do not migrate automations, project templates, or saved filters; we deliver a written inventory of these for the customer's admin to rebuild in Jira.
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 GanttPRO 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.
GanttPRO
Project
Jira
Project
1:1GanttPRO projects map directly to Jira Software projects. We preserve the project key, name, description, and project-level settings including the auto-scheduling toggle state and duration step (hours, days, weeks, or months). Jira projects require a key prefix (such as PROJ) which we generate from the GanttPRO project name or preserve if the customer has an existing Jira project key convention. Project-level permissions and notification schemes migrate as part of the project configuration export.
GanttPRO
Summary Task
Jira
Epic or Parent Issue
1:1GanttPRO summary tasks (parent rows that group related subtasks and display rollup progress on the Gantt chart) map to Jira Epic issues within the destination project. The summary task name becomes the Epic summary; the estimated duration and rollup progress map to the Epic's custom fields. Subtask rollup percentage is preserved in a custom field ganttpro_rollup_progress__c on the Epic for audit and reporting. If the customer prefers a flat issue hierarchy, summary tasks map to parent Story issues with linked Sub-tasks instead.
GanttPRO
Task
Jira
Story or Bug
1:1Standard GanttPRO tasks map to Jira Story or Bug issues depending on the task type field in GanttPRO. Task name becomes Issue Summary; start date and end date map to the Jira custom fields ganttpro_start_date__c and ganttpro_due_date__c or to the GanttPRO for Jira add-on fields if that app is installed. Assignee, priority, status, and description migrate directly. Progress percentage from GanttPRO maps to a custom field ganttpro_progress__c.
GanttPRO
Subtask
Jira
Sub-task
1:1GanttPRO subtasks (nested under summary tasks with their own dates and assignments) map to Jira Sub-task issues linked to their parent Story or Epic. Subtask dates, assignees, and status preserve. Jira's native Sub-task issue type must be enabled in the destination project settings before migration; if not enabled, subtasks are created as standard linked issues instead.
GanttPRO
Dependency (FS, SS, FF, SF)
Jira
Issue Link (custom types)
lossyGanttPRO supports four dependency types: Finish-to-Start (FS), Finish-to-Finish (FF), Start-to-Start (SS), and Start-to-Finish (SF). Jira's default issue link types include Blocks and Relates To but do not natively distinguish between dependency directions. We create four custom Jira link types (ganttpro_blocks_fs, ganttpro_blocks_ff, ganttpro_blocks_ss, ganttpro_blocks_sf) during schema setup, map each GanttPRO dependency to the corresponding link type, and validate link counts post-migration against the source. Circular dependency detection from GanttPRO is preserved as Jira comments on the offending issues.
GanttPRO
Project Member
Jira
User (Assignee)
1:1GanttPRO project members (human users with project-level access) map to Jira User accounts by email address. We resolve each project member's email against the Jira instance user directory and set the Jira issue Assignee field. Any project member without a matching Jira user is flagged in the reconciliation report for the customer's admin to provision before the production migration phase.
GanttPRO
Virtual Resource
Jira
Assignee Note (custom field)
1:1GanttPRO virtual resources are role-based placeholders (such as Senior Developer or QA Engineer) with assigned cost rates per hour or per day. Jira has no native virtual resource or cost-rate concept on the standard issue schema. We extract virtual resource assignments as task-level notes in a custom field ganttpro_virtual_resource__c, preserving the resource name, role, and cost rate for manual assignee mapping in Jira. Customers who need cost tracking configure Jira custom fields for billable hours or integrate with an Atlassian marketplace app for resource management.
GanttPRO
Custom Field
Jira
Custom Field
1:1GanttPRO custom fields (Advanced and Business tiers) support text, number, date, dropdown, and checkbox types. We map these to Jira custom fields of the equivalent type: GanttPRO text to Jira Text Field, GanttPRO number to Jira Number Field, GanttPRO date to Jira Date Picker, GanttPRO dropdown to Jira Select List, and GanttPRO checkbox to Jira Checkbox. Field values migrate per issue. Custom field context (project-specific versus global) maps to Jira's field configuration scheme.
GanttPRO
Time Log
Jira
Worklog
1:1GanttPRO time entries (date, user, duration in hours, and optional comment) map to Jira Worklog records on the corresponding issue. The time tracking must be enabled in the Jira project settings before migration. GanttPRO exports time logs as XLSX only; we parse the XLSX during scoping, convert to structured records, and map the duration to Jira's time tracking format (such as 3h 30m). Worklog author is resolved by email match against Jira users. Note that GanttPRO time logs do not include a billing rate field by default; if the customer uses resource cost rates for billing, those rates are preserved in a custom worklog field.
GanttPRO
Portfolio
Jira
Project Grouping or Jira Align
1:1GanttPRO portfolios group multiple projects for high-level strategic monitoring across an organization. Jira does not have a native portfolio object without Jira Align or Structure add-ons. We migrate portfolio membership as a custom field portfolio_name__c on each Jira project or as a Jira label for grouping. If the customer licenses Jira Align post-migration, the portfolio hierarchy is rebuilt within that platform.
GanttPRO
Budget Data
Jira
Custom Fields
1:1GanttPRO Budget Tracking (Business tier) stores automatic calculation mode (resource rates multiplied by estimated hours) or manual budget values per project. Jira has no native budget module. We extract the calculated budget value and the resource-rate derivation and map them to Jira custom number fields: ganttpro_budget_total__c and ganttpro_budget_mode__c. If the customer requires active budget tracking, we recommend a Jira-compatible financial app from the Atlassian Marketplace.
GanttPRO
Project Calendar
Jira
Project Settings (Working Days)
1:1GanttPRO project calendars define working days, holidays, and calendar exceptions per project. Jira has project-level working day configurations in project settings. We export GanttPRO calendar exceptions and map them to Jira's working days configuration. Jira does not support per-project holiday sets natively; holidays are set at the Jira instance level and apply globally.
| GanttPRO | Jira | Compatibility | |
|---|---|---|---|
| Project | Project1:1 | Fully supported | |
| Summary Task | Epic or Parent Issue1:1 | Fully supported | |
| Task | Story or Bug1:1 | Fully supported | |
| Subtask | Sub-task1:1 | Fully supported | |
| Dependency (FS, SS, FF, SF) | Issue Link (custom types)lossy | Fully supported | |
| Project Member | User (Assignee)1:1 | Fully supported | |
| Virtual Resource | Assignee Note (custom field)1:1 | Fully supported | |
| Custom Field | Custom Field1:1 | Fully supported | |
| Time Log | Worklog1:1 | Fully supported | |
| Portfolio | Project Grouping or Jira Align1:1 | Fully supported | |
| Budget Data | Custom Fields1:1 | Mapping required | |
| Project Calendar | Project Settings (Working Days)1:1 | Mapping required |
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.
GanttPRO gotchas
API is in Public Beta with no guaranteed SLA
5 req/sec rate limit throttles bulk migration speed
API access gated to Business and Enterprise tiers
Virtual resources require manual assignee mapping
Time log export limited to XLSX format only
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 destination confirmation
We audit the source GanttPRO account across plan tier (Core/Advanced/Business/Enterprise), API access availability, project count, task volume, dependency density, virtual resource usage, custom field count, time log history, and budget module usage. We confirm the Jira destination type during discovery: only Jira Cloud supports the API-based migration path; Jira Server and Data Center require the XLSX/CSV export path with manual field mapping. The discovery output is a written migration scope document with record counts per object type, a dependency graph summary, and a Jira destination type confirmation.
Schema design and Jira link type configuration
We design the Jira destination schema before any data moves. This includes creating Jira projects with appropriate keys, enabling the Sub-task issue type per project, creating the four custom dependency link types (ganttpro_blocks_fs, ganttpro_blocks_ss, ganttpro_blocks_ff, ganttpro_blocks_sf), configuring Jira custom fields to match GanttPRO custom field types, enabling time tracking per project, and mapping GanttPRO portfolios to custom fields or labels. The schema design is validated in a Jira Sandbox or test project before production migration begins.
Sandbox migration and reconciliation
We run a full migration into the Jira destination using a representative data sample (at least 10 percent of production record volume). The customer reconciles record counts (projects in, issue counts by type, link counts by dependency type), spot-checks 25-50 random issues against the GanttPRO source, and validates dependency integrity by reviewing the custom link counts. Any schema corrections, field mapping adjustments, or link type issues are resolved in this phase before production migration. Jira Sandbox is not available on all Jira plans; if unavailable, we use a dedicated test project within the production Jira instance.
User and assignee reconciliation
We extract every distinct GanttPRO project member and virtual resource assignment from the task records and match project members by email against the Jira destination user directory. Virtual resources are isolated into a separate reconciliation report. The customer's Jira admin provisions any missing Jira users before production migration continues. This step is required before record import because Jira Assignee is a required reference on standard issue creation.
Production migration in dependency order
We run production migration in record-dependency order: Jira projects first (with schema configuration deployed), then Epic and parent issues (to establish the hierarchy), then standard Story and Bug issues with parent references resolved, then Sub-task issues linked to their parents, then custom dependency links using the four custom link types (validated against the GanttPRO dependency export), then time logs as Jira worklogs, then budget data as custom fields, then custom field values. Each phase emits a row-count reconciliation report before the next phase begins. The GanttPRO 5 req/sec API rate limit is throttled in our migration pipeline; for large task volumes we use the XLSX export path for initial data extraction to reduce API call volume.
Cutover, validation, and dependency integrity check
We freeze GanttPRO writes during cutover, run a final delta migration of any tasks or time logs modified during the migration window, then enable Jira as the system of record. We validate total dependency link counts against the GanttPRO export to confirm no links were dropped. We deliver the filter and automation inventory document to the customer's Jira admin team for rebuild. We support a one-week hypercare window where we resolve any reconciliation issues. Automations, saved filters, and project templates do not migrate as configuration; they require manual rebuild in Jira and are outside the automated migration scope.
Platform deep dives
GanttPRO
Source
Strengths
Weaknesses
Jira
Destination
Strengths
Weaknesses
Complexity grading
Moderate Project Management migration. 1 of 8 objects need a manual workaround.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across GanttPRO and Jira.
Object compatibility
1 of 8 objects need a manual workaround.
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
GanttPRO: 5 req/sec for insert, update, and delete operations.
Data volume sensitivity
GanttPRO 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 GanttPRO to Jira migration scoping. Not seeing yours? Book a call.
Walk through your GanttPRO 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 GanttPRO
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.