Project Management migration
Field-level mapping, validation, and rollback between ProjectManager and Microsoft Project. We move data and schema; workflows are rebuilt natively in Microsoft Project.
ProjectManager
Source
Microsoft Project
Destination
Compatibility
6 of 10
objects map 1:1 between ProjectManager and Microsoft Project.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from ProjectManager to Microsoft Project is a cloud-to-desktop migration with structural differences that affect how schedules are stored, shared, and edited. ProjectManager keeps all project data in a cloud database accessible via REST API with real-time multi-user collaboration; Microsoft Project stores each schedule as a local .mpp file that requires exclusive write access. We resolve this by exporting ProjectManager data through the REST API, reconstructing the WBS hierarchy, sequencing dependencies in topological order to prevent cascade overwrites, and mapping ProjectManager custom fields to Microsoft Project custom fields before importing values. We do not migrate ProjectManager automations, dashboards, or automated cost-tracking configurations as these do not translate to Microsoft Project's desktop-driven model. Resource allocation data migrates as Microsoft Project resource assignments with availability windows preserved where the source system carries them.
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 ProjectManager object lands in Microsoft Project, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
ProjectManager
Project
Microsoft Project
Project (mpp file)
1:1Each ProjectManager Project maps to a single Microsoft Project .mpp file. We export project metadata via GET /api/data/projects including name, start date, finish date, status, and custom ProjectFields. The .mpp file is created in Microsoft Project desktop before data import. We preserve the ProjectManager project ID as a custom field in the .mpp for cross-reference. Multi-project portfolios that exist as separate ProjectManager Workspaces do not merge; each generates a separate .mpp file.
ProjectManager
Task
Microsoft Project
Task
1:1ProjectManager Tasks map directly to Microsoft Project tasks. We reconstruct the WBS hierarchy by exporting parent-child task relationships and setting Microsoft Project Outline Number and Outline Level. Dependency relationships (Finish-to-Start, Start-to-Start, Finish-to-Finish, Start-to-Finish) are imported as PredecessorLink records in the .mpp. Tasks are sequenced for import in topological dependency order to prevent ProjectManager's dynamic scheduler cascade logic from overwriting manually-set dates during export.
ProjectManager
TaskAssignees
Microsoft Project
Assignments
1:1ProjectManager TaskAssignees link Resources to Tasks and map to Microsoft Project Assignments. We resolve the ProjectManager Resource ID to the Microsoft Project Resource GUID and write the Assignment with Units (percentage of resource capacity), Start, and Finish from the Task dates. If a ProjectManager TaskAssignee carries a billing rate that differs from the Resource standard rate, we create an Assignment cost entry rather than modifying the Resource cost table.
ProjectManager
ProjectFields
Microsoft Project
Custom Fields
lossyProjectManager ProjectFields (custom properties scoped to the Workspace) require a two-step process identical to ProjectManager's own API behavior. We first discover existing ProjectField definitions via GET /api/data/projects/fields, then create corresponding Microsoft Project custom fields via the Field dialog or CSV import mapping. Custom field types (string, number, date, choice) map to Microsoft Project Text, Number, Date, and Flag or OutlineCode fields respectively. After field definitions exist in the .mpp, we write per-record values in a second pass.
ProjectManager
TaskFields
Microsoft Project
Custom Fields
lossyTaskFields work identically to ProjectFields in ProjectManager and map to Microsoft Project task custom fields (Text, Number, Date, Flag, OutlineCode). We handle both field definitions and per-record values using the same two-pass approach: define first, then write. Not all Microsoft Project custom field types support the same filtering and grouping options as ProjectManager TaskFields; we flag any field type that loses functionality post-migration during scoping.
ProjectManager
Resource
Microsoft Project
Resource
1:1ProjectManager Resources map to Microsoft Project Resources. We transfer the resource name, type (material vs work), initials, email, max units, and calendar. ProjectManager availability windows and cost rates map to Microsoft Project Resource calendar exceptions and cost rate tables. If the ProjectManager Resource has ResourceSkills attached, we add them as Text custom fields on the Microsoft Project Resource since Microsoft Project does not have a native skills object.
ProjectManager
ResourceTeam
Microsoft Project
Resource Group
1:1ProjectManager ResourceTeams (grouping Resources for scheduling) map to Microsoft Project Resource Groups. We preserve team memberships and cross-reference with TaskAssignees to verify workload views are accurate after migration. Note that ResourceTeams and the separate Teams object in ProjectManager are distinct; only the scheduling grouping (ResourceTeams) maps to a native Microsoft Project concept.
ProjectManager
Teams
Microsoft Project
Resource custom field
lossyProjectManager Teams (organizational membership, distinct from ResourceTeams) have no direct Microsoft Project equivalent. We migrate team membership as a Text custom field on the Resource record. The customer decides whether this field is informational only or used to filter resource views.
ProjectManager
Risk
Microsoft Project
Custom Fields or Notes
lossyProjectManager Risks are standalone objects linked to Projects. Microsoft Project has no native Risk object. We migrate open Risks as task-level custom fields (Risk ID, Severity, Status, Mitigation) or as Notes attached to the associated summary task, depending on the customer's preference during scoping. RiskFiles attached to ProjectManager Risks migrate as file links in the .mpp Notes field.
ProjectManager
Timesheet
Microsoft Project
Custom Fields
1:1ProjectManager Timesheet records capture actual hours logged against Tasks. We migrate Timesheet hours as Actual Work on the corresponding Microsoft Project Assignment, with the Original Estimated Work reduced to distinguish planned from actual. Historical billing rates embedded in Timesheet records may not map directly to Microsoft Project's cost model; we flag these during discovery and migrate hours only, leaving rate reconciliation to the customer's finance team.
| ProjectManager | Microsoft Project | Compatibility | |
|---|---|---|---|
| Project | Project (mpp file)1:1 | Fully supported | |
| Task | Task1:1 | Fully supported | |
| TaskAssignees | Assignments1:1 | Fully supported | |
| ProjectFields | Custom Fieldslossy | Mapping required | |
| TaskFields | Custom Fieldslossy | Mapping required | |
| Resource | Resource1:1 | Fully supported | |
| ResourceTeam | Resource Group1:1 | Fully supported | |
| Teams | Resource custom fieldlossy | Fully supported | |
| Risk | Custom Fields or Noteslossy | Fully supported | |
| Timesheet | Custom Fields1: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.
ProjectManager gotchas
Custom field migration requires two-step API process
Dynamic scheduling recalculates dates during import
Historical timesheet billing rates vary by source
ResourceTeam vs Teams object distinction
Microsoft Project gotchas
Project for the web is being retired and merged into Microsoft Planner
Planner-tier portfolio features are incomplete despite Plan 5 labeling
Web app constraint controls are weaker than the Windows desktop client
Project requires a separate license not bundled with standard Microsoft 365
Project Online API is edition-gated and inconsistently documented
Pair-specific challenges
Migration approach
Discovery and portfolio inventory
We audit the source ProjectManager environment via REST API, cataloging all Workspaces, Projects, Tasks, TaskAssignees, Resources, ResourceTeams, Risks, and Timesheet records. We count task hierarchies, dependency relationships, custom field definitions, and resource cost rate structures. We identify cross-project dependencies that span multiple Workspaces and flag any ProjectManager features without a Microsoft Project equivalent (automated dashboards, Portfolio views, workflow rules). The discovery output is a written migration scope listing every object, its estimated record count, and whether it maps 1:1, requires transformation, or cannot migrate.
Export pipeline and dependency graph computation
We build the export pipeline against the ProjectManager REST API using Bearer token authentication. We export Projects and Tasks in topological dependency order computed from the predecessor relationships. We export Resources with their calendar exceptions and cost rate tables. We export custom field definitions (ProjectFields and TaskFields) separately from values, since the import into Microsoft Project requires field definitions to exist before value rows are mapped. We export Timesheet records with their original timestamps and resolve them against the task hierarchy for assignment-based actual work.
Custom field definition mapping
We map each ProjectManager ProjectField and TaskField to its equivalent Microsoft Project custom field type. String maps to Text; number maps to Number or Cost depending on the field name keyword; date maps to Date; choice fields map to Flag or OutlineCode. We create the import map in Microsoft Project's Export Wizard that defines these field correspondences. The field definitions are written to a staging .mpp file first to validate that all custom fields appear correctly before the full value-import pass.
File generation and import validation
We generate XML or CSV export files from the ProjectManager API response and run them through the Microsoft Project import maps. We open the resulting .mpp files in Microsoft Project desktop to validate that the WBS hierarchy renders correctly, that predecessor links draw as expected on the Gantt chart, that resource assignments appear with the correct units, and that custom field values populated in the right columns. We reconcile the imported record counts against the discovery counts and flag any discrepancies before proceeding.
Resource and cost table reconciliation
We validate the Microsoft Project Resource Sheet against the ProjectManager resource list. We verify that calendar exceptions, max units, and cost rate tables transferred correctly. For any ProjectManager ResourceSkills that do not have a native Microsoft Project home, we confirm the custom Text field on the Resource record was populated. We also verify that Timesheet hours landed as Actual Work on the correct Assignments rather than as a separate data table that would go unused.
Final delivery and handoff
We deliver the validated .mpp files to the customer's designated SharePoint or file share location. We include a written inventory of every custom field mapping, every risk that was migrated as a task note, every organizational Team that was migrated as a text field, and every ProjectManager automation or dashboard that does not have a Microsoft Project equivalent (with a brief description of the gap). We do not rebuild ProjectManager automations or dashboards inside the migration scope. We support a one-week post-delivery window to address import map corrections if the customer discovers mapping gaps when opening the files in Microsoft Project desktop.
Platform deep dives
ProjectManager
Source
Strengths
Weaknesses
Microsoft Project
Destination
Strengths
Weaknesses
Complexity grading
Standard Project Management migration. 1 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 ProjectManager and Microsoft Project.
Object compatibility
1 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
ProjectManager: Not publicly documented.
Data volume sensitivity
ProjectManager 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 ProjectManager to Microsoft Project migration scoping. Not seeing yours? Book a call.
Walk through your ProjectManager to Microsoft Project migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave ProjectManager
Other ways to arrive at Microsoft Project
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.