Project Management migration

Migrate from Tidy Build to Microsoft Project

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

Tidy Build logo

Tidy Build

Source

Microsoft Project

Destination

Microsoft Project logo

Compatibility

36%

4 of 11

objects map 1:1 between Tidy Build and Microsoft Project.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Tidy Build to Microsoft Project is a directional shift from construction-specific job costing to general-purpose project scheduling. Tidy Build treats Projects as cost-containers with Materials, Suppliers, Quotes, and Expenses tied to the project record. Microsoft Project treats Projects as task-and-resource schedules with dependencies, baselines, and resource leveling. We map Tidy Projects to Microsoft Project Plans, Tidy Tasks to Tasks with start/duration/finish scheduling, Tidy Expenses to Expense entries mapped into custom Text fields, and Tidy Times to Assignment records. The Manager-vs-Team user tier designation migrates as a custom resource field. We do not migrate Tidy Build's workflow automations, Quotes, Purchase Orders, or Sales Records as these have no native Microsoft Project equivalent; we deliver a written inventory of these objects for the customer's admin to handle separately.

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

Tidy Build logo

Tidy Build

What's pushing teams away

  • Lack of public documentation or structured user guides makes self-service onboarding difficult, with users reporting they cannot find answers without contacting support.
  • User interface limitations and missing features for documenting and supporting certain project types, particularly for firms with complex or non-standard construction workflows.
  • Performance and usability complaints in G2 reviews where users describe the tool as functional but lacking refinement, especially around mobile and on-site use cases.
  • Desire for more comprehensive CRM-style features or deeper accounting integration beyond what the current Xero connection provides, pushing users toward platforms with broader functionality.

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 Tidy Build objects map to Microsoft Project

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

Tidy Build

Project

maps to

Microsoft Project

Project (Plan)

1:1
Fully supported

Tidy Build Projects map directly to Microsoft Project Plans. We preserve project name, start date, target finish, status (active, on hold, closed), and cost centre metadata as custom fields (Text fields) on the Project record. Tidy Build's project group and budget summary fields migrate to Project-level custom fields for financial reference. The project-level status in Tidy (draft, active, completed) maps to a custom project-level field since Microsoft Project does not have a native project-status property beyond open/closed in the plan.

Tidy Build

Task

maps to

Microsoft Project

Task

1:1
Fully supported

Tidy Build Tasks and Subtasks map to Microsoft Project Tasks with hierarchical parent-child relationships preserved. Task name, start date, due date, status, and description migrate directly. Tidy Build task assignments (linking tasks to users) map to Assignment records in Microsoft Project with the assigned resource and units loaded. Duration is derived from the start/due date delta if not explicitly stored in Tidy. Milestone-flagged tasks in Tidy become milestone tasks in Microsoft Project.

Tidy Build

Times (Time Entries)

maps to

Microsoft Project

Assignment + Task (timephased)

1:many
Mapping required

Tidy Build Time entries linked to Projects and Users map to Microsoft Project Assignment records with hours entered as Work. Each time entry becomes an Assignment against the relevant Task for the relevant Resource. If the destination is Project Online, timephased data can be loaded via the PWA timesheet API. For Project for the web, we store time entry totals as a custom number field on the Assignment record since the Graph API for Project for the web does not natively support timephased assignment data. The original Tidy Build date, duration, and charge-rate references are preserved in custom fields on the Assignment.

Tidy Build

Expenses

maps to

Microsoft Project

Task + custom fields

1:many
Fully supported

Tidy Build Expenses linked to Projects map to Microsoft Project Tasks with expense category and amount stored in custom fields (Text1 for category, Number1 for amount). Each expense record becomes a task record within the parent project so that the expense appears on the project schedule. Expense date and description are stored in additional custom fields (Date1 and Text2). Attachments on Tidy Build expense records are exported as linked files and reattached to the corresponding task in Microsoft Project.

Tidy Build

Material Items

maps to

Microsoft Project

Resource (Material type)

1:1
Fully supported

Tidy Build Material Items with pricing levels and location hierarchies map to Microsoft Project Resources of type Material. Each material item becomes a Resource record with the material label, standard cost from the default pricing level, and unit of measure. Material categories map to a custom resource field (Text1) for grouping. Tidy Build's multi-level pricing (pricing tiers per customer or project) is stored as a custom resource field note because Microsoft Project Resources do not support per-instance pricing tiers natively.

Tidy Build

Customers

maps to

Microsoft Project

Custom field on Project (Text lookup)

many:1
Fully supported

Tidy Build Customer records (contact name, company name, billing address) do not have a native Microsoft Project equivalent because Project has no CRM layer. We store the primary customer reference as a custom Text field on the Project record (Text5: customer_name and Text6: customer_contact). If the customer requires full CRM functionality, Microsoft Dynamics 365 Project Operations or a third-party integration is the recommended destination addition. We do not migrate Customer records as a standalone object.

Tidy Build

Suppliers

maps to

Microsoft Project

Custom field on Resource (Text lookup)

many:1
Fully supported

Tidy Build Supplier records similarly have no native Microsoft Project equivalent. We store supplier references as custom Text fields on the Resource record for each material resource linked to that supplier. The supplier contact name and primary supplier identifier are preserved for reference. Full supplier contact records do not migrate as standalone objects.

Tidy Build

Quote

maps to

Microsoft Project

Custom field on Project

lossy
Fully supported

Tidy Build Quotes have a lifecycle state (draft, sent, approved, lost) and line-item pricing that has no direct Microsoft Project equivalent. We preserve the quote reference number, total amount, and status as custom Text and Number fields on the Project record. Line-item detail is documented in a written quote inventory we deliver to the customer. If the destination is Project Online, the customer may elect to attach the quote PDF to the project as a document via SharePoint.

Tidy Build

Purchase Order

maps to

Microsoft Project

Custom field on Resource or Project

lossy
Fully supported

Tidy Build Purchase Orders with supplier references, line items, quantities, and approval status have no native Microsoft Project equivalent. We map open Purchase Order totals and count to custom fields on the associated Project (Number2: open_po_count, Number3: open_po_value). Full PO line-item detail is documented in a written PO inventory for the customer's admin to handle in their procurement system.

Tidy Build

User (Manager vs Team)

maps to

Microsoft Project

Resource

1:1
Fully supported

Tidy Build Users map to Microsoft Project Resources. We preserve the Manager vs Team user role designation as a custom resource field (Text3: tidy_user_role) so that the destination system can replicate the access model. Resource type is set to Material for material items and Work for people. The customer's admin provisions the Microsoft 365 accounts that correspond to Tidy Build users as Resources in Project Online or Project for the web before migration begins.

Tidy Build

Custom Fields

maps to

Microsoft Project

Custom Fields

lossy
Mapping required

Tidy Build custom field definitions on Projects and Materials are detected via the API schema during pre-migration audit. We map Tidy custom field types (text, number, date, dropdown) to the nearest equivalent Microsoft Project custom field type: text properties map to Text1-30, numeric properties map to Number1-20, date properties map to Date1-10. Custom field values are loaded at migration time against the corresponding Project or Task record. The customer admin creates the destination custom fields in Project Online PWA settings or Project for the web before migration begins.

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.

Tidy Build logo

Tidy Build gotchas

High

API must be enabled per organisation before migration

Medium

User-role tier limits affect migration scoping

Medium

No publicly documented API rate limits for bulk extraction

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

  • Tidy Build API must be activated per organisation before migration begins

    Tidy Build's Developer API is not enabled by default on all accounts. The API feature must be explicitly turned on for an organisation and requires contacting Tidy International to have it activated. If we begin a migration scoping call and the API is not active, extraction stalls until activation completes. We confirm API availability during the pre-migration audit and request activation with Tidy on the customer's behalf. This typically takes one to three business days and must complete before any extraction begins.

  • No documented Tidy Build API rate limits require live probing at scoping

    The Tidy Build API documentation does not specify rate limits for GET, POST, PUT, or DELETE operations. This means we cannot size migration worker threads accurately without first probing the customer's live account. We run a low-concurrency extraction at scoping to detect throttling behaviour, then tune thread count accordingly. If 429 responses appear, we implement exponential backoff and reduce concurrency. Microsoft Project's Graph API and PWA API have documented limits (1,000 requests per minute per app for Project Online) that we use for the destination write phase.

  • Microsoft Project has no native CRM or quoting object for Tidy Build Customers, Suppliers, and Quotes

    Microsoft Project is a scheduling tool, not a CRM or job-costing platform. Tidy Build's Customers, Suppliers, Quotes, and Purchase Orders have no direct native equivalent in Microsoft Project. We preserve references to these records as custom fields on Projects and Resources, and we deliver written inventories of all Quote, Purchase Order, Customer, and Supplier records for the customer's admin to handle separately. If full CRM or financial-tracked quoting is required, Microsoft Dynamics 365 Project Operations is a more complete destination than Microsoft Project alone.

  • Time-phased assignment data requires Project Online or a manual rebuild in Project for the web

    Tidy Build Times linked to Projects and Users must be loaded as Assignment Work values in Microsoft Project. For Project Online, we can load timephased data via the PWA REST API which supports period-by-period time entry. For Project for the web (the Microsoft 365 web client), the Graph API does not natively support timephased assignment data; we load the total hours as Assignment Work and note that weekly or period-level time distribution requires manual entry or a Power Automate flow. We confirm the destination variant during scoping.

  • Manager vs Team role designation has no native Project permission equivalent

    Tidy Build's tiered Manager and Team user model (separate seat caps per plan) does not map to any native Microsoft Project permission level. We preserve the designation as a custom Resource field (tidy_user_role) for reference. If the customer needs role-based access control in Microsoft Project, this requires Azure Active Directory group configuration or Project Online permission modes managed in PWA settings, which is outside the scope of data migration. We flag this in the approach documentation and advise the customer to address it with their Microsoft 365 admin before cutover.

Migration approach

Six steps for a successful Tidy Build to Microsoft Project data migration

  1. Pre-migration audit and API activation

    We audit the source Tidy Build account via API across active Projects, Tasks, Subtasks, Time entries, Expenses, Material Items, Quotes, Purchase Orders, and Custom Fields. We confirm that the Tidy Build Developer API is active and request activation with Tidy International if needed. We run a low-concurrency probe extraction to detect rate-limit behaviour and tune our worker threads accordingly. We extract a full schema snapshot including custom field definitions, user list, and relationship metadata. We also confirm the Microsoft Project destination variant (Project for the web vs Project Online PWA) and validate that the customer has appropriate Microsoft 365 licensing to support it.

  2. Scope definition and custom field creation

    We define the migration scope: which Projects, Tasks, and historical records will migrate versus being archived. We create the destination custom fields in Microsoft Project (Project Online via PWA enterprise custom field settings, or Project for the web via the Power Platform admin centre) to match the Tidy Build custom field schema. We define the Tidy-to-Project field mapping document covering Project name, task hierarchy, expense categorisation, time entry totals, material resource types, and customer/supplier reference fields. This document is reviewed and signed off by the customer's project manager before extraction begins.

  3. Data extraction and transformation

    We extract all Tidy Build records via the REST API in dependency order: Users first (for Resource mapping by email), then Projects, then Tasks and Subtasks with hierarchy, then Material Items as Resources, then Time entries as Assignment Work values, then Expenses as expense tasks with custom fields, then Custom Field values applied to the parent records. We transform the data during extraction: Tidy Build project status becomes a custom project field, Manager vs Team role becomes a custom resource field, material pricing levels are preserved in resource notes, and expense categories are stored in custom task fields. We flag any Tidy Build records that cannot be represented in Microsoft Project (Quotes, Purchase Orders, Customer contacts, Supplier contacts) for the written inventory output.

  4. Destination load and resource provisioning

    We load migrated data into Microsoft Project via the appropriate API: Project for the web uses Microsoft Graph (projects, tasks, assignments, resources endpoints); Project Online uses the PWA REST API. Resource records are created first so that task assignments can reference them. Task hierarchy is loaded with parent-child links preserved. We load time entry totals as Assignment Work values. We validate row counts per object and spot-check five to ten records per object against the source Tidy Build data before proceeding to the next phase.

  5. Validation and reconciliation

    We run a reconciliation pass comparing record counts and a random sample of field values between the Tidy Build source and the Microsoft Project destination. We verify task hierarchy (parent-child count), resource count, assignment mapping (task-to-resource links), and custom field population. We flag any discrepancies for correction. We deliver the written inventory of Quote, Purchase Order, Customer, and Supplier records with their Tidy Build identifiers and summary data so that the customer's admin can handle these in their downstream systems.

  6. Cutover and written handoff

    We freeze writes to Tidy Build during the cutover window, run a final delta extraction of any records modified during migration, load the delta into Microsoft Project, and confirm the destination as the system of record. We deliver the complete object mapping document, the custom field mapping document, the written Quote and Purchase Order inventory, and the Manager-vs-Team user role reference list. We support a one-week hypercare window to resolve any data quality issues raised by the project team. We do not rebuild automations, Gantt dependency structures, baseline schedules, or resource leveling rules as these require Microsoft Project-native configuration by the customer's project management team.

Platform deep dives

Context on both ends of the pair

Tidy Build logo

Tidy Build

Source

Strengths

  • Purpose-built for construction job costing with native support for materials, labour rates, and expense tracking against Projects.
  • Multi-tier user model with separate Manager and Team user roles, limiting cost for firms that only need site-staff access.
  • Material hierarchy with categories, items, pricing levels, and locations, supporting complex supplier and inventory structures.
  • REST API covering the full data model including Projects, Materials, Quotes, Tasks, Times, and Expenses for custom integrations.
  • Xero integration for accounting sync, keeping financial data connected to the project control layer.

Weaknesses

  • No publicly documented API rate limits, making it difficult to plan bulk migration workloads without manual testing against the customer's account.
  • API access requires contacting Tidy to have the feature enabled per-organisation, adding a prerequisite step before migration can begin.
  • Documentation and user guides are sparse, with G2 reviewers explicitly flagging the lack of proper documentation as a friction point.
  • Manager user limits on lower plans constrain how many administrative accounts a growing firm can have, potentially requiring plan upgrades to support new hires in management roles.
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 Tidy Build 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

    Tidy Build: Not publicly documented. Tidy International does not publish per-endpoint quotas in the open developer docs; in practice rate limits are confirmed once the integration is enabled on a customer tenant..

  • Data volume sensitivity

    B

    Tidy Build doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Tidy Build 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 Tidy Build to Microsoft Project data migrations

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

Can't find your answer?

Walk through your Tidy Build 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 three and five weeks for accounts under 50 active Projects with clean task hierarchies and under 10,000 time entries. Migrations with large material hierarchies (over 500 items), multi-level subtask nesting, extensive historical timesheets (over 10,000 entries), or customer-managed custom field creation in Project Online move to six to ten weeks. The Tidy Build API activation step (one to three business days) and the Microsoft 365 licensing confirmation add time before extraction begins.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Tidy Build.
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