Dynamics 365 On-Premises at End of Life: Stabilise, Migrate or Rebuild
A decision guide for on-premises Dynamics CRM and Customer Engagement estates: what actually stops, what is cloud-only, how residency changes the answer, and the three honest paths with their triggers.
When Dynamics CRM or Dynamics 365 Customer Engagement (on-premises) reaches end of support, nothing switches off: security fixes, support cases and compatibility with newer servers stop, while the hardware ages on its own clock. New capability, including Copilot, Customer Insights and most Power Platform features, is cloud-only. Check the Microsoft Lifecycle page for your exact version, then choose one of three paths. Harden and buy time when the budget is frozen or data cannot legally leave your infrastructure. Migrate to online in stages when the Microsoft platform still fits. Rebuild on Dataverse or a custom stack when the customizations no longer fit either. Assess unsupported code from the original partner first, because it dominates every estimate.
What actually stops working when Dynamics 365 on-premises reaches end of support?
Less than people fear on the day, and more than they expect over the following year. Microsoft does not turn off an on-premises server at the end of its support lifecycle. The application keeps running, users keep logging in, and that is exactly why end of life gets deferred. What ends is the supply of fixes and the ability to get help, and the risk then grows every month as the rest of the stack moves on without it.
The dates themselves differ by version and by update level. Dynamics CRM 2011, 2013 and 2015 are out of support; for Dynamics CRM 2016 and Dynamics 365 Customer Engagement (on-premises) 9.0 and 9.1, check the Microsoft Lifecycle policy page for your exact version and update rather than relying on a date quoted secondhand.
| What ends or degrades | What it means in practice |
|---|---|
| Security updates for the application | Vulnerabilities found after the date are not fixed for your version, which security and audit teams will flag as an accepted risk someone has to sign. |
| Non-security fixes and Microsoft support cases | A defect in the product is now yours to work around, and a production incident has no vendor escalation route. |
| Compatibility with the rest of the stack | Newer Windows Server and SQL Server versions, browsers, Outlook clients and authentication requirements are not tested against your version, so upgrading anything around it becomes a risk. |
| The partner and skills market | Fewer people know the older versions, and a partner that built the system may no longer exist or may no longer support it. |
| Integration options | New connectors, services and SaaS products assume current APIs and modern authentication, so each new integration costs more than it should. |
What is genuinely cloud-only, and what can the on-premises version still do?
The honest split is not "online has everything, on-premises has nothing". Dynamics 365 Customer Engagement (on-premises) 9.x runs the core Sales and Customer Service model with the Unified Interface. What it does not get is the stream of capability Microsoft has added to the online service since, and that stream is now where nearly all new investment goes. The reverse is also true: a few things are possible on-premises that the online service does not allow, and those are exactly the customizations that block a move.
Treat the table as a starting list for your own check, not as a feature matrix. Microsoft documents availability per feature, and it changes.
| Capability | On-premises | Online |
|---|---|---|
| Core sales and service records, model-driven forms, views, business process flows, plugins and workflows | Yes, on 9.x with the Unified Interface | Yes |
| Twice-yearly release wave features | No; on-premises receives updates for its version, not the online feature stream | Yes |
| Copilot and generative AI features in Sales and Customer Service, Copilot Studio agents over Dataverse | No | Yes, subject to region and licensing |
| Dynamics 365 Customer Insights (Journeys and Data) | No | Yes |
| Omnichannel engagement and unified routing in Customer Service | No | Yes |
| Power Pages, and Power Apps and Power Automate working natively on Dataverse | Not natively; reaching on-premises data needs a gateway or custom integration, with a narrower feature set | Yes |
| Azure Synapse Link and Dataverse search | No | Yes |
| Direct SQL access to the database, SQL-based reports and filtered views | Yes | No; reporting goes through FetchXML, the Web API, Power BI or Synapse Link |
| Plugins running outside the sandbox with full trust | Yes | No; all plugins run in sandbox isolation |
What do the hardware and support clocks mean for a frozen budget?
There are always two clocks, and they rarely agree. The first is Microsoft's lifecycle for your Dynamics version. The second is your own infrastructure: the Windows Server and SQL Server versions underneath, the hardware warranty, the data centre or hosting contract, and the backup product. Whichever runs out first sets the real deadline, and it is often the hardware or the hosting contract, not the Dynamics version.
A frozen budget does not remove the decision, it changes its order. The cheapest thing to fund is information: an inventory of what you run, what it depends on and what breaks if it moves. The second cheapest is reducing the risk of standing still, such as proving you can restore the system and closing the worst exposures. Migration or rebuild spend can then be planned against a date you have chosen rather than one an outage chose for you. Licensing questions, including what your current agreement entitles you to if you move, belong in our Dynamics 365 licensing and renewal guide.
- Write down both clocks: the Microsoft lifecycle date for your exact version, and the earliest date among servers, SQL Server, hardware warranty and hosting contract.
- Record what is already past its date, and who signed off that risk, if anyone.
- Identify the cost of standing still for another year: extended hardware support, hosting renewal, security exceptions, and the integrations you are not able to build.
- Separate the spend that reduces risk now from the spend that changes platform, so a frozen budget can still release the first.
When does data residency mean moving online is not permitted?
Dynamics 365 online stores data in the Microsoft cloud region chosen when the environment is created, and Microsoft operates separate government and sovereign cloud offerings in some countries. For most organizations in the UK, Germany, the Netherlands and the US a suitable region exists and residency is a configuration decision, not a blocker. It becomes a blocker in a narrower set of cases, and those cases should be settled with your legal and security teams before any architecture work starts.
Where online is genuinely not permitted, the realistic options are to keep running on-premises and harden it for a defined period, or to rebuild on a stack you host yourself. The second is what our custom CRM development is for: React, Node.js, PostgreSQL and .NET, deployed on your own servers or in a data centre you choose.
- Legislation or a regulator requires the data to stay in a country where no suitable Microsoft cloud region is available.
- Government, defence or public-sector security policy requires the system to run on infrastructure the organization or the state controls.
- A contract with your own customers forbids processing their data in a public cloud service.
- The data includes categories your policy allows only on isolated networks.
Why assess the unsupported customizations from the original partner first?
Because they dominate every estimate, whichever path you choose. An on-premises system built years ago by a partner that has since gone is almost certain to contain things the online service does not allow, things the Unified Interface does not support, and business rules that exist only in code. Until they are inventoried, any quote for migration or rebuild is a guess, and the guess is usually low.
Run it as its own workstream with its own deliverable: a list of every customization, the pattern it uses, whether it would survive a move to online, and what the business still needs it to do. The classification into must-fix, replace with configuration and delete, and the remediation in reversible slices, is described on our upgrade remediation service for unsupported customizations; the client script mechanics are on common Dynamics 365 customization mistakes. Where nobody can say what the code does at all, the forensic method in legacy migration with no original developers, starting with proving you can restore the system, applies directly.
| Pattern found on-premises | Why it matters for the decision | Typical destination |
|---|---|---|
| Plugins or custom workflow activities running with full trust | Online runs plugins only in the sandbox, so file system, registry and unrestricted network access fail. | Rewrite for the sandbox, or move the work to an Azure service or a flow. |
| Reports and integrations reading the SQL database directly | There is no direct SQL access online. | FetchXML reports, Power BI, the Web API or Synapse Link. |
| Code writing straight into the database | Unsupported everywhere, and it bypasses every plugin and audit rule. | Rebuilt through the supported API, with the data it wrote checked. |
| Legacy form scripts, custom pages and 2011 endpoints | Break on the Unified Interface or on a current version. | Supported Client API, Web API, PCF controls or configuration. |
| Integrations using legacy authentication or server-to-server trust inside the domain | Online requires modern authentication. | OAuth with an app registration, re-pointed and retested. |
When does hardening on-premises and buying time make sense?
Hardening is a legitimate path, not a failure to decide, as long as it has an exit date. It fits when the budget is frozen for a defined period, when data residency rules out online and a rebuild cannot start yet, or when a larger business change, such as a merger or a restructuring, will change the requirements in the next year or so. It does not fit as an open-ended plan: every month on an unsupported version increases the cost of the eventual move.
- Trigger: a hard budget freeze with a known end, a residency constraint with no compliant cloud option yet, or requirements about to change for business reasons.
- Prove restore of the whole system into an isolated environment, and write the runbook down.
- Apply the latest update available for your version, and move the operating system and SQL Server to supported releases where your Dynamics version supports them.
- Close the worst exposures: remove unused accounts and administrator rights, restrict network access to the servers, and review the integration service accounts.
- Freeze new customization, so the estimate for the later move stops growing.
- Start the customization inventory now; it is needed on every path and it is affordable within most frozen budgets.
- Agree the exit date in writing, and the review point at which the path is chosen.
When is a staged migration to Dynamics 365 online the right path?
When the Microsoft platform still fits the business, residency allows it, and the customization inventory shows the code can be brought to supported patterns at a cost the business accepts. Staged means the risky parts move before the database does, so cutover day is small. Microsoft has offered an assisted route for moving an on-premises organization database to online, and it has expected the source to be on a recent supported version, so older estates may need an upgrade on the way; check the current Microsoft Learn guidance and eligibility for your version. The alternative is a clean implementation on Dataverse with a data migration, which is often better when the old data model carries years of workarounds. The load mechanics, reconciliation and cutover for that route are covered in our data migration guide.
- Trigger: the business wants to stay on Dynamics 365, residency allows a cloud region, and the inventory shows no blocker that costs more than a rebuild.
- Stage 1, remediate on-premises: fix the full-trust plugins, direct SQL reports and legacy scripts while still on-premises, so the same code runs in both places.
- Stage 2, move the integrations to modern patterns: the Web API and OAuth where the version allows, and middleware that can be re-pointed rather than rewritten.
- Stage 3, rehearse: a trial migration into a sandbox, tested against the processes that must not break, repeated until it is uneventful.
- Stage 4, cut over with the on-premises system kept read only and restorable as the fallback and the audit source.
- Stage 5, adopt cloud-only capability in waves once the core is stable, rather than on cutover day.
When is a rebuild on Dataverse or a custom stack the honest answer?
When most of the customization exists to make an old version do something the current platform now does differently, or does not want to do at all. At that point migrating the code means paying to move workarounds. A rebuild on Dataverse keeps the Microsoft ecosystem and starts from a clean model, and treats the old system as a source of requirements and data. A rebuild on a custom stack is right when residency rules out the cloud, when per-user licensing no longer fits how many people use the system, or when the system is really a line-of-business application wearing CRM clothes.
We recommend the right solution - whether that's Microsoft Dynamics 365, Power Platform, or a custom-built CRM. Some businesses need the Microsoft ecosystem. Others need full control without licensing. We deliver both. For the custom route we build on React, Node.js, PostgreSQL and .NET, described on our custom CRM development page, and the customization inventory becomes its requirements baseline rather than wasted work.
- Trigger for Dataverse: the business wants Dynamics 365 or Power Platform, but the inventory shows the old model and code are mostly workarounds.
- Trigger for a custom stack: residency forbids a public cloud, licensing does not fit the user base, or the core of the system is custom logic the platform would fight.
- Either way: keep the old system restorable and read only until reconciliation proves the new one, and rebuild the business rules from evidence, not from memory.
Should the next platform be Dynamics 365 online, Power Platform or a custom CRM?
Can afford licensing and want the Microsoft ecosystem
Dynamics 365
Microsoft 365, Teams and Outlook integration, a mature partner ecosystem, Copilot, and apps for sales, service and field operations that are configured rather than built.
Need full control and zero licensing
Custom CRM
A CRM built on React, Node.js, PostgreSQL or .NET that you own outright: your data model, your hosting, no per-user subscription, and features shaped exactly to your process.
Not sure which fits
We help you decide
A short discovery weighs licensing budget, process complexity, integrations and long-term ownership, then recommends one path. We deliver both, so the recommendation has no reason to lean.
How do the three paths compare side by side?
None of these paths is the right answer in general. The table is the summary to take into the room where the decision is made.
| Path | Choose it when | Spend goes first on | Main risk | Where it leaves you |
|---|---|---|---|---|
| Harden and buy time | Budget frozen for a defined period, residency blocks online, or requirements about to change | Restore proof, patching, access review, customization inventory | Becoming permanent with no exit date | Safer on the same platform, with the decision better informed |
| Staged migration to online | Dynamics 365 still fits, residency allows a cloud region, code can be made supported | Remediating customizations and integrations while still on-premises | Underestimating the unsupported code | On the current service, with cloud capability available |
| Rebuild on Dataverse | Microsoft platform wanted, old model and code mostly workarounds | Requirements recovered from the old system, clean data model | Scope growing into a wish list | A clean Dataverse build without inherited debt |
| Rebuild on a custom stack | Residency forbids cloud, licensing does not fit, logic is highly custom | Requirements baseline, architecture, hosting decision | Owning engineering and support permanently | Full control of hosting, data and cost structure |
How does Solzet deliver this, and what does it not do?
We start with a fixed-scope assessment that produces the decision inputs on this page for your estate: both clocks, the version and update level, the infrastructure, the customization inventory, the integrations, the residency position and a recommended path with its triggers. The written output stands on its own, so you can take it to any partner. Delivery of the chosen path then runs in phases with a decision point at the end of each. Where the previous partner has disappeared and the project is effectively abandoned, the first weeks follow our project rescue and takeover service.
Solzet has 8+ years of Dynamics 365 Customer Engagement and Power Platform delivery, including on-premises 9.x estates, with senior consultants and full-stack developers working remotely from Yerevan, Armenia. We do not upgrade or migrate Dynamics 365 Finance, Business Central, Dynamics NAV, Dynamics AX or any other ERP; where one sits next to the CRM, we work with the team that owns it.
What do people ask us?
Does Dynamics 365 on-premises stop working at the end of support?
No. The application keeps running after its support lifecycle ends. What stops is security updates, non-security fixes and Microsoft support cases, and over time compatibility with newer operating systems, SQL Server versions, browsers and integrations. The risk grows gradually rather than arriving on one day, which is why the decision tends to be deferred until hardware or a hosting contract forces it.
When does support end for our version of Dynamics CRM or Dynamics 365 on-premises?
Check the Microsoft Lifecycle policy page for your exact product version and update level. Dynamics CRM 2011, 2013 and 2015 are out of support, and dates for Dynamics CRM 2016 and Dynamics 365 Customer Engagement (on-premises) 9.0 and 9.1 are published there. Record that date next to your own infrastructure dates, because the earliest of them is your real deadline.
Can we use Copilot, Customer Insights or Power Pages with Dynamics 365 on-premises?
Not natively. Copilot features in Dynamics 365, Customer Insights, omnichannel engagement, Power Pages and native Power Platform on Dataverse are online capabilities. On-premises data can be reached from some cloud services through a gateway or custom integration, but with a narrower feature set, and it is not the same as running them on Dataverse.
What stops an on-premises Dynamics system from moving to online?
Usually the customizations rather than the data. Plugins that run with full trust, reports and integrations that read the SQL database directly, code that writes straight to the database, legacy form scripts and integrations using older authentication all need rework, because online allows only sandboxed plugins, no direct SQL access and modern authentication. An inventory of those patterns is the first deliverable on any path.
Our data cannot leave our own infrastructure. What are our options?
First confirm with legal and security that no Microsoft cloud region or government cloud offering satisfies the requirement, because for many organizations one does. If none does, the options are to keep running on-premises and harden it for a defined period, or to rebuild on a stack you host yourself. Solzet builds custom CRM on React, Node.js, PostgreSQL and .NET for exactly that case.
We have a frozen budget and no partner. What can we do this year?
Fund information and risk reduction first: prove you can restore the whole system, apply the latest update for your version, review access and the integration accounts, freeze new customization and build the customization inventory. That work is needed on every path, it is affordable within most frozen budgets, and it turns the later decision into a plan with a date you chose.
Should we migrate the existing database or reimplement on Dataverse?
Migrate the database when the data model is sound and the customizations can be brought to supported patterns. Reimplement with a data migration when the model carries years of workarounds, when the version gap is large, or when the business processes have changed. The customization inventory usually makes the answer clear, and the load mechanics for the reimplementation route are covered in our data migration guide.
Does Solzet migrate Dynamics NAV, AX or Business Central on-premises?
No. Solzet works on Dynamics CRM and Dynamics 365 Customer Engagement, Power Platform and custom CRM. We do not upgrade, migrate or implement Dynamics 365 Finance, Business Central, Dynamics NAV, Dynamics AX or other ERP systems. Where one is integrated with the CRM, we work alongside the team that owns it.
Where should you go next?
Upgrade remediation for unsupported customizations
An evidence-backed inventory of unsupported code, classified and remediated in reversible slices.
Legacy migration with no original developers
Prove restore, recover undocumented rules from evidence and cut over one process at a time.
Data migration guide
Mapping, load order, reconciliation and cutover for moving data into Dynamics 365.
Dynamics 365 licensing and renewals
Licence choices, rightsizing and negotiating the Microsoft renewal with evidence.
Project rescue and takeover
Taking over a Dynamics 365 system whose partner has gone or whose project has failed.
Custom CRM Development
CRM on React, Node.js, PostgreSQL and .NET for organizations that need full control without Microsoft licensing.
Which solution is right for your business?
Tell us what you need. A senior consultant replies within one business day with a recommendation - Dynamics 365, Power Platform, or a custom-built CRM - not a sales script.