Project Management migration
Field-level mapping, validation, and rollback between awork and Jira. We move data and schema; workflows are rebuilt natively in Jira.
awork
Source
Jira
Destination
Compatibility
8 of 10
objects map 1:1 between awork and Jira.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from awork to Jira is a structural migration that reflects a shift from agency-focused task management to engineering-centric agile workflows. awork organizes work around a Client-Project-Task hierarchy with built-in time tracking; Jira organizes around Projects containing Issues (Epic, Story, Task, Bug) with Sprints, a configurable workflow schema, and a separate worklog model. We map awork's project and task structure to Jira Projects and Issue types, preserve time entries as Jira worklogs, and carry forward tags as Jira labels. We do not migrate awork automations or workflow rules because Jira's workflow engine uses a different trigger-and-transition model with per-project workflow schemes. We deliver a written inventory of any active awork automations for the customer's Jira admin to rebuild post-migration.
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 awork 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.
awork
Project
Jira
Project
1:1awork Projects map directly to Jira Projects. We preserve project name, description, start and end dates, assigned users, and budget fields. Jira Projects require a project key (e.g., ENG, MKT) which we derive from the awork project name's initials or a customer-specified prefix. Projects are created first in the migration sequence so that subsequent task and time-entry imports have a valid parent reference.
awork
Task
Jira
Issue (Story or Task)
1:1awork Tasks map to Jira Issues. The mapping to Jira Issue type (Story or Task) is determined during scoping based on the customer's workflow conventions. We preserve task name as Summary, description as Description, due date as Due Date, assignee as Assignee, and status by applying the collected awork workspace status schema to the Jira project's workflow scheme. awork's priority tagging (absent as native sortable tags) is mapped to Jira Priority values (Highest, High, Medium, Low) based on any existing priority indicators in awork.
awork
Subtask
Jira
Sub-Task Issue
1:1awork Subtasks map to Jira Sub-Task Issue type. The parent-child relationship is preserved by setting the parent Issue key on each subtask during import. Jira's Sub-Task issue type is enabled per project in the Issue Type Scheme before migration. We flag subtask ordering if the destination project relies on rank-based ordering (such as Jira's backlog ranking algorithm) since awork does not expose a native sort order field.
awork
User (Team Member)
Jira
User
1:1awork workspace members map to Jira Users by email address. We extract all users referenced in awork task assignments, project assignments, and time entries. The Jira destination site's admin provisions the corresponding users before migration begins. Any awork user without a Jira match goes to a reconciliation queue for admin provisioning. Inactive Jira users are supported for historical assignment preservation.
awork
Time Entry
Jira
Worklog
1:1awork Time Entries map to Jira Issue Worklogs. We preserve the user attribution (matched to Jira User), start timestamp as Started, duration as Time Spent, and billable flag as a custom worklog field billable__c. The parent Issue key is resolved from the awork task reference. Jira's worklog model requires a Started timestamp and time spent value; we derive these from awork's time entry start/end or duration fields. Non-billable entries are imported with the billable flag set to false.
awork
Project Status
Jira
Status (via Workflow Scheme)
lossyawork workspace statuses require a per-project value map because each awork workspace defines its own status names, colors, and ordering. During scoping we collect every distinct status value across all source workspaces and map them to Jira Status values appropriate for the destination project's workflow scheme. For example, awork status 'In Review' may map to Jira 'In Review' or 'In Progress' depending on the target workflow. We apply the map during the task import phase to avoid misclassifying task states.
awork
Custom Field
Jira
Custom Field
1:1awork Custom Fields (workspace-level, activated per-project) require activation verification in Jira. We check each custom field's project-level activation status in awork during scoping. Fields not activated for a given project do not appear in that project's task export. In Jira, we create equivalent custom fields via the project Custom Fields configuration, match field types (text to Text Field, number to Number Field, date to Date Picker), and map values during task import. Custom field context mismatches are a known Jira import issue and we address them before loading.
awork
Tag
Jira
Label
1:1awork Tags map to Jira Labels. Tags export as key-value labels applied to tasks and carry across in the task data export. Jira Labels are a flat string field with comma-separated values per issue. We preserve tag names exactly, flag any tag normalization needed if Jira enforces label format restrictions (lowercase, no spaces) per the destination site's configuration.
awork
Project Template
Jira
Project Template (Shared Configuration)
1:1awork Project Templates define reusable project structures including default tasks, statuses, and custom field configurations. Jira does not have an equivalent template import mechanism, so we document the template structure as a written specification (default tasks, configured statuses, custom field defaults) for the customer's Jira admin to recreate using Jira's project template creation flow. The template's task and status definitions are preserved in the migration inventory document.
awork
Client
Jira
Component or Project Category
lossyawork Clients do not have a direct Jira equivalent. Jira Projects are the primary container and can be categorized using Project Categories or Components for sub-grouping. We discuss the client's preferred structure during scoping: either one Jira Project per awork Client (using Project Category for grouping), or multiple awork Projects within a single Jira Project using Components or Labels to distinguish client attribution. The chosen strategy is applied before migration begins.
| awork | Jira | Compatibility | |
|---|---|---|---|
| Project | Project1:1 | Fully supported | |
| Task | Issue (Story or Task)1:1 | Fully supported | |
| Subtask | Sub-Task Issue1:1 | Fully supported | |
| User (Team Member) | User1:1 | Fully supported | |
| Time Entry | Worklog1:1 | Fully supported | |
| Project Status | Status (via Workflow Scheme)lossy | Fully supported | |
| Custom Field | Custom Field1:1 | Fully supported | |
| Tag | Label1:1 | Fully supported | |
| Project Template | Project Template (Shared Configuration)1:1 | Fully supported | |
| Client | Component or Project Categorylossy | 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.
awork gotchas
Custom fields must be activated per project
Project statuses are per-workspace, not global
Timeline export is an image, not structured data
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 export preparation
We audit the source awork account across all workspaces, collecting project names, task counts, subtask nesting depth, time entry volume, custom field definitions, and workspace-level status schemas. We verify each custom field's project-level activation status and flag any gaps. We export task data from list and board views (not the timeline image export) and time entries in Excel format. We inventory any active automation rules for the written handoff document. The discovery output is a written migration scope, a data completeness report, and a list of any export gaps that require customer action before migration begins.
Jira project and schema setup
We work with the customer's Jira admin to create Jira Projects with appropriate Issue Type Schemes (Epic, Story, Task, Sub-Task), a Workflow Scheme with status values that match the mapped awork workspace statuses, and any required custom fields with correct field types and contexts. If the customer uses Project Categories to group by client (mapped from awork Clients), we configure those before migration. We validate the schema in a Jira Sandbox or non-production environment before moving to production data.
User reconciliation and Jira provisioning
We extract every distinct awork user referenced in task assignments, project memberships, and time entries. We match by email address against the Jira destination site's User table. Users without a matching Jira account go to a reconciliation queue. The customer's Jira admin provisions any missing users (active or inactive depending on whether the original awork user is still active) before the record import phase begins. OwnerId references on Jira issues require an active or inactive User record to resolve.
Task and subtask migration in hierarchy order
We run task migration in dependency order: Jira Projects first, then parent tasks (Epics or Stories), then child tasks (Stories or Tasks), then subtasks last with their parent reference resolved. We apply the collected workspace status schema map during task import so that status values are translated correctly. Custom field values are mapped per field type. Tags are imported as Jira Labels. Each phase emits a row-count reconciliation report before the next phase begins. Any task without a resolved assignee is assigned to the project lead or placed in a backlog queue for admin resolution.
Time entry migration as Jira worklogs
We migrate awork Time Entries as Jira Issue Worklogs. Each worklog references the Jira Issue key resolved from the awork task, the Jira User resolved from the awork user, the Started timestamp from the original time entry, and the time spent value. Billable flags migrate to a custom worklog field. Jira's worklog model does not support bulk import via CSV for large volumes, so we use the Jira REST API with batch chunking and exponential backoff to load time entries without exceeding per-instance write limits. We validate total hours by project against awork's project-level time totals to catch any missing records.
Cutover, validation, and automation handoff
We freeze awork 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 migration inventory document including the automation rule inventory for the customer's Jira admin to rebuild, the custom field mapping reference, and the status value map. We support a one-week post-migration window where we resolve reconciliation issues raised by the customer's team. We do not rebuild awork automations as Jira workflows inside the migration scope; that work is documented separately for the customer's admin or a Jira partner.
Platform deep dives
awork
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 awork 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
awork: Rate-limited per client; 429 Too Many Requests response includes RateLimit-Reset header indicating seconds until reset.
Data volume sensitivity
awork 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 awork to Jira migration scoping. Not seeing yours? Book a call.
Walk through your awork 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 awork
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.