Project Management migration
Field-level mapping, validation, and rollback between Work as Team and Jira. We move data and schema; workflows are rebuilt natively in Jira.
Work as Team
Source
Jira
Destination
Compatibility
10 of 12
objects map 1:1 between Work as Team and Jira.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Work as Team to Jira is a structural migration that starts with a fundamental difference in how the two platforms model work. Work as Team uses Projects containing Lists containing Tasks, a flat-to-hierarchical structure that is native to agency and consultancy workflows. Jira uses a sprint-based model with Projects, Epics, Stories, Tasks, and Bugs where the team must decide upfront whether Work as Team Lists map to Epics, to Stories with labels, or to a dedicated sub-project. We resolve that question during scoping and lock the mapping before any data is extracted. Time entries require reformatting from Work as Team's flat duration-based logs into Jira worklog entries with start dates and time spent values. We use Jira's REST API with rate-limit handling and exponential backoff for task and attachment migration, and the Bulk API for large datasets. Workflows, automations, and client-facing permissions built in Work as Team do not migrate; we deliver a written inventory of every active rule requiring rebuild in Jira Automation or a third-party app.
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 Work as Team 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.
Work as Team
Project
Jira
Project
1:1Work as Team Projects map to Jira Projects. The Project key (e.g., ENG, PROD) must be defined during scoping; Jira enforces uniqueness and a 2-10 character uppercase alphanumeric key. We extract the project name and description from Work as Team and use the Work as Team project URL as a reference field in Jira until cutover. If the Work as Team account has multiple projects that should be combined under one Jira project, we document the split or merge decision during scoping.
Work as Team
List
Jira
Epic or Label
lossyWork as Team Lists are the most significant schema decision in this migration. Jira has no native List equivalent. The standard mapping routes Work as Team Lists to Jira Epics (when Lists represent large work groupings) or to Labels on Stories (when Lists represent categories). We survey List count, average task count per List, and whether milestone-style tracking is used before recommending one approach or a mixed approach. The customer's Jira admin confirms the mapping before extraction begins.
Work as Team
Task
Jira
Story or Task
1:1Work as Team Tasks map to Jira Stories or Tasks. By default, we map Tasks to Jira Stories unless the Work as Team task is clearly an administrative action (e.g., a checklist item with no due date or assignee) in which case we map to Jira Tasks. Jira Issue Type field, Summary, Description (migrated as Jira Description in Atlassian Document Format), Assignee, Reporter, Due Date, Priority, and Status transfer directly. Task URLs are preserved in a custom field tw_original_url__c for audit.
Work as Team
Sub-task
Jira
Sub-task
1:1Work as Team sub-tasks map to Jira sub-tasks. The parent Jira issue must exist before the sub-task is inserted, so we migrate parent records first and resolve the parent key at migration time. Jira enforces a two-level sub-task ceiling by default; deeper Work as Team nesting flattens to Jira sub-tasks with a note in the description.
Work as Team
Milestone
Jira
Fix Version
1:1Work as Team Milestones map to Jira Fix Version (release). Milestone name, description, and target date transfer. Fix Version is a shared field across all issues in a Jira project, so a Work as Team milestone with tasks spanning multiple Lists appears as a Fix Version with all mapped issues associated. If the customer uses milestone status tracking, we map milestone completion to Fix Version release status.
Work as Team
Time Entry
Jira
Worklog
1:1Work as Team time entries map to Jira worklog entries. Work as Team stores duration (in minutes or hours) with an optional date and description; Jira requires time spent (format: 1h 30m) and started date. We transform duration to Jira's time-spent format, set started to the original Work as Team date, and preserve the description as the worklog comment. Billable flag from Work as Team maps to a custom field tw_billable__c since Jira's native worklog does not have a billable field; ERP billing integrations read this custom field.
Work as Team
File
Jira
Attachment
1:1Work as Team file attachments (images, documents, PDFs) attached to tasks migrate to Jira Attachments linked to the corresponding Jira issue. File URL is stored in the Jira Attachment comment. Jira has a 10 MB per-file limit on cloud; files exceeding this threshold are flagged for the customer to host externally and link from the Jira description. We extract file names and sizes during scoping to identify any files requiring this handling.
Work as Team
Team Member
Jira
User
1:1Work as Team team members map to Jira users. We match by email address. Any Work as Team team member without a corresponding Jira user account is held in a user reconciliation queue; the customer's Jira admin provisions the missing accounts (active or inactive based on whether the person is still active in Work as Team) before record migration begins. Role and permission structure migrates as a written inventory document, not as Jira permission schemes, since Work as Team's permission model does not map 1:1 to Jira's scheme-based model.
Work as Team
Comment
Jira
Comment
1:1Work as Team comments on tasks migrate to Jira comments on the corresponding Jira issue. Comment author maps to Jira comment author (by email match to Jira user); comment body migrates as Jira comment text. Comment timestamps are preserved for audit ordering.
Work as Team
Dependency
Jira
Issue Link
1:1Work as Team task dependencies (blocks, blocked by, depends on) map to Jira Issue Links (blocks, is blocked by, dependency). We resolve the target issue key at migration time since Jira issue keys are generated during import rather than pre-existing. Dependencies that form a circular reference are flagged and escalated to the customer for resolution before the dependency phase runs.
Work as Team
Tag
Jira
Label
1:1Work as Team tags (applied to tasks as category markers) map to Jira Labels. Labels are flat strings in Jira, so multi-value tags from Work as Team become space-separated labels on the Jira issue. If the customer uses Work as Team tags as a two-level taxonomy (e.g., department:design), we discuss converting to Jira Labels with a separator convention or a custom field for structured tagging.
Work as Team
Custom Field
Jira
Custom Field
lossyWork as Team custom fields (text, number, date, dropdown, checkbox, user reference) map to Jira custom fields of the equivalent type. Jira custom fields must be created in the destination project before migration; we pre-create the full custom field schema during the sandbox migration phase. Custom fields that do not have a Jira equivalent (e.g., Work as Team billing rate fields) are mapped to Jira text fields or custom fields of the closest Jira type, with the mapping documented in the field inventory delivered with the migration.
| Work as Team | Jira | Compatibility | |
|---|---|---|---|
| Project | Project1:1 | Fully supported | |
| List | Epic or Labellossy | Fully supported | |
| Task | Story or Task1:1 | Fully supported | |
| Sub-task | Sub-task1:1 | Fully supported | |
| Milestone | Fix Version1:1 | Fully supported | |
| Time Entry | Worklog1:1 | Fully supported | |
| File | Attachment1:1 | Fully supported | |
| Team Member | User1:1 | Fully supported | |
| Comment | Comment1:1 | Fully supported | |
| Dependency | Issue Link1:1 | Fully supported | |
| Tag | Label1:1 | Fully supported | |
| Custom Field | Custom Fieldlossy | 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.
Work as Team gotchas
Task Lists are Teamwork-specific groupings
Client portal user access requires careful mapping
Time entries are tied to tasks and billing
Profitability and resource management data is tier-gated
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 List mapping design
We audit the source Work as Team account across projects, Lists, tasks, sub-tasks, milestones, time entries, comments, attachments, team members, custom fields, and active automations. We record List count, average tasks per List, milestone structure, and attachment file sizes. We then run a structured List mapping workshop with the customer's project manager and Jira admin to determine whether each List maps to a Jira Epic, to Jira Labels, or to a mixed approach. The output is a signed mapping document that locks the List-to-Epic/Label decision before any data extraction begins.
Schema provisioning in Jira
We create the Jira destination schema in a Sandbox or development environment. This includes provisioning Jira Projects with appropriate keys, creating Epics (if the List-to-Epic mapping is selected), creating custom fields matching Work as Team's custom field types, configuring Fix Versions from Work as Team Milestones, and creating Labels. We configure the Jira user directory and match team members by email. We validate that the Jira account has sufficient storage and that attachment limits (10 MB cloud default) will not block the migration. Schema is reviewed and signed off before the sandbox migration run.
Sandbox migration and reconciliation
We run a full migration into the Jira Sandbox environment using production-equivalent data volume. The customer's project manager and Jira admin reconcile record counts (Projects, Epics, Stories, Sub-tasks, time entries, attachments), spot-check 25-50 random issues for field accuracy, and verify that List-to-Epic/Label assignment matches the mapping document. Any mapping corrections happen at this stage. The sandbox migration also reveals whether any Jira field validation rules or required-field configurations will reject records during production migration, allowing us to adjust before cutover.
User provisioning and owner reconciliation
We extract every distinct Work as Team team member referenced as a task assignee, commenter, or time-entry creator and match by email against the Jira destination user directory. Any Work as Team user without a corresponding Jira account is added to a reconciliation queue. The customer's Jira admin provisions missing users and confirms role assignments. Migration cannot proceed past this step because Jira requires a valid User for Assignee, Reporter, and comment Author fields.
Production migration in dependency order
We run production migration in record-dependency order: Jira Projects and Fix Versions first, then Jira Epics (from Work as Team Lists), then Stories and Tasks (with sub-tasks), then Time entries as Jira worklog, then Comments, then Attachments, then Labels. Dependencies between tasks are loaded last and resolved by cross-referencing the newly generated Jira issue keys. We use the Jira REST API with exponential backoff and batch chunking for attachments. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, validation, and automation handoff
We freeze Work as Team writes during cutover, run a final delta migration of any records modified during the migration window, then enable Jira as the system of record. We deliver the automation inventory document to the customer's Jira admin team and provide a Jira automation rebuild template for each Work as Team rule. We support a one-week hypercare window for reconciliation issues. We do not rebuild Work as Team automations as Jira Automation rules inside the migration scope; that is a separate engagement or an internal admin task.
Platform deep dives
Work as Team
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 Work as Team 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
Work as Team: Per-project and per-account limits documented in Teamwork's API docs; typically generous for normal usage but throttled on bulk operations..
Data volume sensitivity
Work as Team exposes a bulk API — large-volume migrations stream efficiently.
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 Work as Team to Jira migration scoping. Not seeing yours? Book a call.
Walk through your Work as Team 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 Work as Team
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.