Project Management migration

Migrate from TaskRay to Microsoft Project

Field-level mapping, validation, and rollback between TaskRay and Microsoft Project. We move data and schema; workflows are rebuilt natively in Microsoft Project.

TaskRay logo

TaskRay

Source

Microsoft Project

Destination

Microsoft Project logo

Compatibility

91%

10 of 11

objects map 1:1 between TaskRay and Microsoft Project.

Complexity

BStandard

Timeline

4-6 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from TaskRay to Microsoft Project is a structural migration away from the Salesforce ecosystem. TaskRay stores all project data as Salesforce records (TaskRay__Project__c, TaskRay__Task__c, and related objects) with no standalone API, so all extraction runs through Salesforce REST and Bulk APIs subject to the org's edition limits. We resolve the Salesforce User-to-resource lookup, preserve checklist item states as notes on tasks, re-establish predecessor relationships, and re-apply baseline snapshots. The most consequential gap is TaskRay's one-level task grouping (Task Groups only, no nested sub-groups) versus Microsoft Project's unlimited WBS hierarchy depth; deeply nested TaskRay structures require flattening during import. Collaboration Hub workspaces, Chatter threads, Field Trickler propagation rules, and the Template Migration feature have no direct Microsoft Project equivalent and are documented for manual rebuild. Workflows, automations, and Salesforce Flow triggers built on TaskRay records are excluded from scope entirely.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

TaskRay logo

TaskRay

What's pushing teams away

  • TaskRay covers only 34% of PMI project management processes — it scores 0% on cost management and procurement, and lacks native billing or invoicing entirely, forcing teams to buy a separate PSA for revenue-generating services.
  • High per-user licensing cost ($60/user/month on Premium) adds up quickly when every viewer and task assignee on a project requires a license, making it expensive for large implementation teams.
  • Core PSA features like expense tracking, budget-to-actual reporting, and purchase order management are absent, prompting teams to migrate to Kantata, Certinia, or similar full-suite PSA platforms.
  • Limited email notification flexibility — out-of-the-box assignment notifications lack customization depth, frustrating teams with specific communication workflow requirements.
  • Lack of native integrations beyond Salesforce means complex multi-system environments need custom development to push project data elsewhere.

Choosing

Microsoft Project logo

Microsoft Project

What's pulling them in

  • Organizations already running Microsoft 365 and Azure AD adopt Microsoft PPM because it slots into existing identity, Teams, and SharePoint infrastructure without requiring a separate identity provider or SSO vendor.
  • Enterprise PMOs choose it for critical-path scheduling, baseline comparison, cross-project dependencies, and resource utilization reporting that standalone PM tools cannot replicate at this depth.
  • Project Online's integration with Power BI gives portfolio-level dashboards and cost-rollup reporting that satisfies executive governance requirements without third-party BI tooling.
  • Government, financial services, and healthcare organizations select it because FedRAMP, ISO 27001, and SOC 2 compliance certifications meet enterprise procurement requirements out of the box.
  • Large IT departments default to it as the market-leader in project portfolio management software, often driven by corporate licensing agreements that bundle it with other Microsoft 365 seats.

Object mapping

How TaskRay objects map to Microsoft Project

Each row shows how a TaskRay 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.

TaskRay

TaskRay Project

maps to

Microsoft Project

Project (MPP or cloud plan)

1:1
Fully supported

Each TaskRay Project__c record maps to a Microsoft Project plan. The Project Name, Start Date, End Date, and Archived flag transfer as plan metadata. Sub-Projects become top-level summary tasks within the plan. We extract the project's custom fields via Salesforce field query and apply them as Project-level custom fields in Microsoft Project or as notes on the root summary task. Chatter threads attached to TaskRay Projects have no Microsoft Project equivalent and are documented in the collaboration handoff report.

TaskRay

Task Group

maps to

Microsoft Project

Summary Task (WBS level 1-2)

1:1
Fully supported

TaskRay Task Groups represent phases or thematic groupings one level above Tasks. We map each Task Group to a Microsoft Project summary task at the appropriate WBS level. The Task Group's start and end dates inform the summary task date range. Note that Microsoft Project allows unlimited WBS nesting while TaskRay permits only one level of grouping; if the source has deeply nested structures, we flatten beyond the first level and document the original nesting for manual reconstruction.

TaskRay

Sub-Project

maps to

Microsoft Project

Summary Task (WBS level 2-3)

1:1
Fully supported

TaskRay Sub-Projects are child records under a parent Project with their own Task Groups and Tasks. We map each Sub-Project to a summary task at the second or third WBS level, preserving its parent-project lookup so the correct summary task is created in the right plan context. TaskRay Sub-Projects cannot themselves contain Sub-Projects; any source structures exceeding this depth are flagged pre-migration and flattened at import.

TaskRay

Task

maps to

Microsoft Project

Task (detail row)

1:1
Fully supported

TaskRay Task__c records map directly to Microsoft Project task rows. Name, Start Date, End Date, Estimated Duration, Percent Complete, Priority, and Owner (mapped to a Microsoft Project Resource) transfer. TaskRay's blocked/locked states and repeating flags map to custom fields in Microsoft Project since these are not native Project fields. Task Ray's checklist container contents (checklist items with completion status) transfer as notes on the task row, preserving each item's text and checked state as a bulleted list.

TaskRay

Milestone

maps to

Microsoft Project

Milestone (duration 0 or 1 day)

1:1
Fully supported

TaskRay Milestones are a distinct Task record type marked with a milestone flag. We identify milestone records during extraction and create Microsoft Project milestones (duration 0 tasks) at the correct date. The milestone name and date transfer exactly. Visual styling differences between the two platforms are cosmetic and noted for the project manager's review.

TaskRay

Task Dependency

maps to

Microsoft Project

Predecessor link

1:1
Fully supported

TaskRay Task predecessors (Finish-to-Start, Start-to-Start, Finish-to-Finish, Start-to-Finish with lag) map to Microsoft Project predecessor rows on the successor task. TaskRay does not display standard predecessor notation (e.g., FS+1d) in its Gantt view, but the underlying relationship data is stored and migratable. We resolve predecessor IDs to task row numbers during transformation and apply links in Microsoft Project by task index. Cross-project predecessor references in TaskRay (linking a task to a predecessor in another project) are documented as manual dependencies since Microsoft Project handles cross-project links differently.

TaskRay

Resource and Role

maps to

Microsoft Project

Resource

1:1
Fully supported

TaskRay Resources (individual users) and Roles (placeholder owners) map to Microsoft Project Resources. We resolve Resources by email match against the source Salesforce org's User table, then assign them to the corresponding Microsoft Project resource pool. If the destination is Project Online, resources must exist in the Project Web App resource pool; if Project Desktop, resources are local to the plan. Roles with no assigned user are created as material or generic resources. Dynamic Team Builder capacity data on the Premium tier migrates as a custom Resource field rather than a native Microsoft Project field.

TaskRay

Checklist and Checklist Item

maps to

Microsoft Project

Task Notes (bulleted list)

lossy
Fully supported

TaskRay Checklist containers on tasks hold granular Checklist Items with completion status. We export each checklist item's text and isCompleted flag, then write them as a bulleted list into the Microsoft Project task's Notes field. Completion status is represented as a checkbox character or [x] prefix. Teams relying on checklist state for work tracking should note that Microsoft Project does not have a native checklist UI; the notes representation is the standard approach and is readable but not interactive like TaskRay's checklist view.

TaskRay

Custom Fields on Projects and Tasks

maps to

Microsoft Project

Custom Fields

1:1
Mapping required

TaskRay exposes custom fields on Project, TaskGroup, and Task through standard Salesforce field management. We detect all custom fields via Salesforce metadata query, map them to equivalent Microsoft Project custom fields (text, number, date, or flag type). Custom fields referencing Salesforce lookups (Account, Opportunity, Contact) are mapped as text fields in Microsoft Project since Project has no native CRM lookup model. The customer identifies which custom fields are reportable; we apply only those as Project custom fields and store the remainder as notes.

TaskRay

Files and Attachments

maps to

Microsoft Project

Attachments / Notes

1:1
Mapping required

TaskRay stores files via Salesforce ContentDocumentLink. We export file names and ContentVersion URLs from the source org and document them in an attachment inventory. Files are not embedded into Microsoft Project plans natively; we deliver the file list with task assignment and recommend storing files in SharePoint or a network location with a link recorded in the task Notes field. Direct file re-attachment into Project Online's SharePoint document libraries is possible if the customer provisions the target library during migration.

TaskRay

Project Template

maps to

Microsoft Project

Project Template (MPP)

1:1
Fully supported

TaskRay Template Projects are standard Salesforce records containing Projects, Task Groups, Tasks, and Milestones that can be cloned to create new engagements. Templates are migratable via Salesforce Data Loader with the same dependency-order import process. Note that Template hierarchies (template Sub-Projects) and Files are not supported by TaskRay's own Template Migration feature and are not migratable in this scope. We deliver a template inventory documenting each source template's structure for manual recreation in Microsoft Project.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

TaskRay logo

TaskRay gotchas

High

No standalone API — migration runs through Salesforce

High

Licensing count explosion during inbound migration

High

No native cost or invoice objects

Medium

Field Trickler lookups require post-migration validation

Medium

Sub-Project hierarchy depth limits

Microsoft Project logo

Microsoft Project gotchas

High

Project for the web is being retired and merged into Microsoft Planner

Medium

Planner-tier portfolio features are incomplete despite Plan 5 labeling

Medium

Web app constraint controls are weaker than the Windows desktop client

High

Project requires a separate license not bundled with standard Microsoft 365

Medium

Project Online API is edition-gated and inconsistently documented

Pair-specific challenges

  • All extraction runs through Salesforce REST and Bulk APIs

    TaskRay has no independent API. Every record read and written during migration passes through the source Salesforce org's REST API, Bulk API 2.0, or Data Loader, subject to the org's edition limits (1,000 API calls per day on Essentials up to unlimited on Unlimited). Salesforce maintenance windows pause extraction. We scope API headroom before migration starts, prefer Bulk API 2.0 for large task volumes to minimize API call consumption, and throttle writes to stay within the daily limit. If the source org is on a low-tier Salesforce edition, extraction speed is gated by the API ceiling and the migration timeline extends accordingly.

  • One-level Task Group hierarchy flattens on import

    TaskRay permits Task Groups at one level under a Project and Tasks at one level under a Task Group; Sub-Projects can nest one level deep but cannot contain further Sub-Projects. Microsoft Project supports unlimited WBS nesting. If your TaskRay source has more than two levels of project-child nesting, we must flatten the structure at import: deepest child records become tasks under the highest available summary level. We flag any structure that will flatten pre-migration. Projects with five or more levels of original nesting will lose intermediate grouping levels in the Microsoft Project plan.

  • Collaboration Hub workspaces and Chatter threads do not migrate

    TaskRay Collaboration Hub provides external stakeholders with Salesforce-free access to project workspaces, including views, assignments, and light task workflows. Microsoft Project has no guest-access workspace feature; collaboration relies on SharePoint document libraries, Teams channels, or manual file distribution. Chatter threads attached to TaskRay records (Projects, Tasks) are Salesforce-native and cannot transfer to Microsoft Project. We document every Collaboration Hub workspace and Chatter thread in a collaboration handoff report for the project manager to recreate in Teams or SharePoint manually.

  • Field Trickler propagation requires manual rebuild

    TaskRay's Field Trickler automatically propagates Account and Opportunity lookups from the Project level down to all child Tasks. When migrating to Microsoft Project, these propagated values must be re-established. We extract the Account and Opportunity names during export, but Microsoft Project has no native CRM lookup model. Values are written as text custom fields on tasks. Any Salesforce Flow or Process Builder logic that relied on Field Trickler lookups is excluded from scope and documented in the automation inventory for the customer's admin to rebuild outside of Microsoft Project.

  • Resource management data requires custom field setup in Microsoft Project

    TaskRay's resource management features (Dynamic Team Builder, capacity tracking, utilization percentages) exist only on the Premium tier and store data as custom fields on Resource records in Salesforce. Microsoft Project's native resource fields cover name, type, capacity, and cost rate, but task weighting and utilization metrics from TaskRay have no native equivalent. We map capacity and utilization values to Microsoft Project resource custom fields, but the customer must configure the resource sheet and any capacity view they wish to use. Dynamic Team Builder's team-building suggestions do not migrate.

Migration approach

Six steps for a successful TaskRay to Microsoft Project data migration

  1. Discovery and Salesforce API scoping

    We audit the source TaskRay Salesforce org to count Projects, Task Groups, Sub-Projects, Tasks, Milestones, and Checklist Items. We extract custom field metadata for all three object types, identify dependency records, resource assignments, and attachment volumes. We also confirm the Salesforce edition and API call consumption rate to determine Bulk API 2.0 vs REST API throughput for the extraction phase. The discovery output is a written migration scope including record counts per object type, any Salesforce org maintenance windows to avoid, and a pre-migration API headroom test.

  2. Object dependency mapping and template inventory

    We build the TaskRay-to-Microsoft Project object map covering every migratable object. For each Project, we identify its Task Group and Task hierarchy, extract all predecessor links as a graph, and flag cross-project dependencies. We compile a template inventory listing every TaskRay Project Template with its record structure for the template handoff report. We identify Salesforce Flow triggers, Process Builder flows, and Field Trickler configurations on TaskRay records for the automation inventory. This step produces the transformation rules we apply during the data extraction phase.

  3. Salesforce data extraction via Bulk API 2.0

    We extract all TaskRay records through the Salesforce Bulk API 2.0 or REST API depending on volume and edition limits. Extraction runs in dependency order: Projects first (the parent records), then Task Groups, Sub-Projects, Tasks, Milestones, Checklist Items, Dependencies, and Resources. We chunk large record sets into 10,000-record batches, apply the custom field transformation rules during extraction, and write the output to a staging directory organized by Project. Attachment extraction produces a file inventory with source URLs rather than downloading binary blobs into the migration workspace.

  4. Data transformation and WBS hierarchy construction

    We transform the extracted Salesforce records into Microsoft Project XML (.xmlpp) or CSV format depending on whether the destination is Project Desktop or Project Online. The transformation applies the following logic: Task Groups become summary tasks at WBS level 1; Sub-Projects become summary tasks at WBS level 2-3; Tasks become detail rows; Milestones become duration-0 tasks; Checklist Items append as bulleted text to the parent task's Notes field; Dependencies are resolved by task index and written as predecessor links; Resources are added to the resource sheet and assigned to tasks by email match. Custom fields map from Salesforce field types to Microsoft Project custom field types.

  5. Microsoft Project plan creation and baseline capture

    We create Microsoft Project plans in the destination environment (Project Desktop .mpp files or Project Online PWA plans depending on licensing). For Project Online, we use the PWA REST API or CSV import; for Project Desktop, we use the MSProject object model via programming interface. We import transformed records in hierarchy order, validate the WBS structure against the source, and apply a baseline snapshot matching each project's original planned start and finish dates. We generate a reconciliation report comparing record counts by object type between the source extract and the destination plan.

  6. Cutover, validation, and automation handoff

    We run a final delta extraction from the source for any records modified during the migration window, apply updates to the destination plans, then freeze source writes. We deliver the complete package: Microsoft Project plans (or exported PWA project set), file attachment inventory with source locations, template recreation guide, and automation inventory covering Field Trickler configurations, Salesforce Flows, and Collaboration Hub workspaces. We support a one-week post-cutover window for reconciliation issues. We do not rebuild Salesforce Flows or automations in Microsoft Project or Power Automate as part of standard migration scope.

Platform deep dives

Context on both ends of the pair

TaskRay logo

TaskRay

Source

Strengths

  • Hierarchical project structure (Projects → Task Groups → Tasks → Milestones) accommodates multi-phase implementation and onboarding workflows natively in Salesforce.
  • Templating and cloning capabilities let teams replicate structured project plans at scale without manual re-entry.
  • Field Trickler propagates Account and Opportunity lookups from Project to Task level automatically.
  • Multiple views (Plan/Gantt, Kanban, Spreadsheet, Calendar, My Work) give different team roles their preferred interface without leaving Salesforce.
  • External collaboration via Collaboration Hub lets customers and stakeholders participate in project workspaces without Salesforce licenses.

Weaknesses

  • TaskRay covers only 34% of PMI project management processes, with 0% coverage on cost management, procurement, and risk management — insufficient for revenue-generating professional services.
  • No native billing, invoicing, or expense tracking; organizations requiring these must purchase a separate PSA tool alongside TaskRay.
  • Per-user licensing applies to anyone who views or edits project data, making it expensive at scale for large implementation or CS teams.
  • No public TaskRay API — migrations are entirely dependent on Salesforce REST and Bulk API performance and edition limits.
  • Limited email notification customization for task assignment alerts frustrates teams with specific communication workflow requirements.
Microsoft Project logo

Microsoft Project

Destination

Strengths

  • Deep critical-path scheduling with baseline comparison and cross-project dependency tracking unmatched by lighter PM tools.
  • Native Azure AD authentication, Teams integration, and Power BI reporting sit on infrastructure enterprises already license and manage.
  • Enterprise governance controls including demand intake workflows, resource request approval, and portfolio-level capacity analysis.
  • Supports both Waterfall and Agile methodologies within the same project, accommodating hybrid delivery teams.
  • Scalable from Project Plan 1 for small teams to Project Server on-premises for regulated industries with strict data-sovereignty requirements.

Weaknesses

  • Ease-of-use scores trail the category average by a wide margin; onboarding friction frustrates new users consistently across G2 and Capterra reviews.
  • Pricing ranks 42nd of 49 tools in its category — the total cost of ownership including IT administration and training is rarely recovered for small or mid-market teams.
  • No built-in client portal, external stakeholder sharing, or proofing workflow, limiting use cases to internal PMO environments only.
  • The web interface (Project for the web / Planner Premium) has materially weaker constraint controls and resource auto-leveling than the Windows desktop client.
  • Project for the web is being consolidated into Microsoft Planner, creating uncertainty about which product tier will host project portfolio data long-term.

Complexity grading

How hard is this migration?

Standard Project Management migration. 1 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across TaskRay and Microsoft Project.

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    TaskRay: Not documented for TaskRay specifically — governed by Salesforce API limits (edition-dependent, 1,000–unlimited daily calls).

  • Data volume sensitivity

    A

    TaskRay exposes a bulk API — large-volume migrations stream efficiently.

Estimator

Estimate your TaskRay to Microsoft Project migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about TaskRay to Microsoft Project data migrations

Answers to the questions buyers ask most during TaskRay to Microsoft Project migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your TaskRay to Microsoft Project migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between four and six weeks for organizations with under 5,000 task records and straightforward Task Group hierarchies. Migrations exceeding 15,000 tasks, complex multi-level Sub-Project structures, large checklist item volumes, or organizations on lower-tier Salesforce editions (which cap daily API calls) extend to eight to twelve weeks. The Salesforce API extraction phase is typically the longest single step because TaskRay has no independent API and all data must flow through the source org's edition limits.

Adjacent paths

Related migrations to explore

Ready when you are

Move from TaskRay.
Land in Microsoft Project, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day