# AX 2012 to D365 Upgrade Effort Estimator

> Source: https://netray.co/tools/ax-2012-to-d365-upgrade-effort-estimator
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Bottom-up hours, cost and duration estimate for an AX 2012 to Dynamics 365 Finance and Operations upgrade.

## Category

microsoft-dynamics

## Erp

Microsoft Dynamics AX 2012

## Audience

- ERP project manager
- AX developer
- CIO

## Tool

**Kind:** calculator

**Currency:** $

**Inputs:**

#### Custom objects

**Key:** custom_objects

**Type:** number

**Default:** 180

**Min:** 0

**Step:** 10

**Unit:** objects

**Help:** Classes, forms, tables, reports, and extensions in CUS, VAR or USR layers.

#### Average hours per object

**Key:** hrs_per_object

**Type:** number

**Default:** 6

**Min:** 0.5

**Step:** 0.5

**Unit:** hours

**Help:** Analysis, rework as extension, unit test.

#### Share retired or replaced by standard

**Key:** retire_pct

**Type:** slider

**Default:** 35

**Min:** 0

**Max:** 100

**Step:** 5

**Unit:** %

**Help:** Customizations dropped because D365 covers them.

#### Integrations to rebuild

**Key:** integrations

**Type:** number

**Default:** 12

**Min:** 0

**Step:** 1

**Unit:** interfaces

#### Hours per integration

**Key:** hrs_per_integration

**Type:** number

**Default:** 40

**Min:** 4

**Step:** 4

**Unit:** hours

#### Reports to rebuild

**Key:** reports

**Type:** number

**Default:** 60

**Min:** 0

**Step:** 5

**Unit:** reports

#### Hours per report

**Key:** hrs_per_report

**Type:** number

**Default:** 8

**Min:** 1

**Step:** 1

**Unit:** hours

#### Mock data migrations

**Key:** mock_loads

**Type:** number

**Default:** 3

**Min:** 1

**Step:** 1

**Unit:** cycles

#### Hours per migration cycle

**Key:** hrs_per_load

**Type:** number

**Default:** 80

**Min:** 10

**Step:** 10

**Unit:** hours

**Help:** Extract, transform, load, reconcile.

#### Testing as share of build

**Key:** test_pct

**Type:** slider

**Default:** 35

**Min:** 10

**Max:** 80

**Step:** 5

**Unit:** %

#### Project management share

**Key:** pm_pct

**Type:** slider

**Default:** 15

**Min:** 5

**Max:** 30

**Step:** 1

**Unit:** %

#### Blended hourly rate

**Key:** rate

**Type:** number

**Default:** 95

**Min:** 20

**Step:** 5

**Unit:** per hour

#### Team size

**Key:** team

**Type:** number

**Default:** 5

**Min:** 1

**Step:** 1

**Unit:** people

**Outputs:**

#### Code remediation hours

**Key:** code_hours

**Expr:** custom_objects * hrs_per_object * (1 - retire_pct / 100)

**Format:** integer

#### Build hours (code, integrations, reports, data)

**Key:** build_hours

**Expr:** code_hours + integrations * hrs_per_integration + reports * hrs_per_report + mock_loads * hrs_per_load

**Format:** integer

#### Testing hours

**Key:** test_hours

**Expr:** build_hours * test_pct / 100

**Format:** integer

#### Project management hours

**Key:** pm_hours

**Expr:** (build_hours + test_hours) * pm_pct / 100

**Format:** integer

#### Total hours

**Key:** total_hours

**Expr:** build_hours + test_hours + pm_hours

**Format:** integer

**Primary:** true

**Description:** Excludes licensing, infrastructure and change management.

#### Labour cost

**Key:** total_cost

**Expr:** total_hours * rate

**Format:** currency

**Primary:** true

#### Elapsed duration at 130 productive hours per person-month

**Key:** months

**Expr:** total_hours / (team * 130)

**Format:** months

**Chart:**

#### Labour cost vs share of customizations retired

**Type:** line

**X:** retire_pct

**From:** 0

**To:** 100

**Steps:** 21

**Series:**

- total_cost

**Disclaimer:** A planning estimate from your own inputs. It excludes licences, hosting, third-party products and business-side effort. Validate with a partner assessment before committing a budget.

## Content

**Intro:** AX 2012 does not upgrade in place to Dynamics 365 Finance and Operations. It is a re-implementation of code and a migration of data. This estimator builds a labour estimate from the counts you can pull from your own AOT.

**Sections:**

#### How to use the estimator

**Body:** Start with counts, not guesses. Your AX developers can list objects in the CUS, VAR and USR layers, count integrations from AIF ports, batch jobs and services, and count SSRS or Management Reporter reports in use. Enter them with your own hours per item. The slider for retired customizations is the single biggest lever, and the chart shows how cost changes as more custom code is dropped in favour of standard behaviour.

**Bullets:**

- Pull object counts from the AOT or a code compare
- Count only reports users actually run
- Count each interface once, not each message type
- Use your own rate, not a list price

#### The method behind the numbers

**Body:** Code remediation is objects times hours per object, reduced by the share you retire. Build adds integrations, reports and data migration cycles. Testing is a percentage of build, and project management is a percentage of build plus testing. Duration divides total hours by team size times 130 productive hours per person-month. D365 uses an extension model rather than overlayering, so each retained customization is re-written, not copied, which is why hours per object stay high.

#### Reading the result

**Body:** The total hours and labour cost are for the technical project. A result that looks too low usually reflects an underestimate of integrations or data quality. Compare the duration with your business calendar: a long elapsed time means more parallel work or a phased approach. Use the retire slider to test a scenario where you fit processes to standard D365, then compare the savings to the change management cost you will incur.

#### Common mistakes

**Body:** Teams underestimate data migration because AX 2012 history is large and uneven, forget Management Reporter and SSRS, and count customizations by form instead of by behaviour. Do not forget licensing, Azure or Lifecycle Services setup, and a cloud-hosted test environment. Finally, business users need time away from daily work for testing, which does not appear in these developer-side hours.

**Cta:** If you want a second opinion on a customization inventory or help identifying which AX objects can be retired, we can review your list.

**Faq:**

#### Can AX 2012 be upgraded in place to D365?

**Answer:** No. Moving to D365 Finance and Operations is a new implementation with data migration and re-developed customizations. Tools exist to analyze code and help move data, but the application layer is rebuilt using extensions.

#### What drives upgrade cost the most?

**Answer:** The volume of retained customizations, integration complexity and data migration scope usually dominate. Standardizing processes and retiring custom code is the most reliable way to reduce cost and risk.

#### Does the estimate include licences?

**Answer:** No. It estimates labour only. Add D365 licences, environments, ISV products, training and business-side time separately to get a total program budget.

#### How accurate is a bottom-up estimate like this?

**Answer:** It is as good as your counts and hours per item, typically good for a planning range rather than a fixed price. Refine it after a code analysis and a first mock data migration.

## Search terms

ax 2012 to d365 upgrade cost, dynamics ax 2012 upgrade estimator, ax 2012 to finance and operations, ax 2012 end of support, ax upgrade effort calculator, ax2012 customization upgrade hours, dynamics ax migration cost

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
