One of the key differentiators of Microsoft Dynamics CRM vs its competitors is the choice of delivery. Microsoft Dynamics CRM is available in three delivery models.
- Microsoft Dynamics CRM Online (Hosted by Microsoft)
- Microsoft Dynamics CRM On-Premise
- Microsoft Dynamics CRM Partner Hosted
This post outlines the key points for consideration between Dynamics CRM Online and CRM On-Premise. For the purposes of this post, Dynamics CRM Partner Hosted is considered the same as CRM On-Premise, the difference being that the deployment is published to the internet and the infrastructure looked after by a hosting partner.
At a high level, the underlying application is the same delivered both online and on-premise. With the advent of Dynamics 365 however, there are different subscription packages which build on this model that are only available online. Examples of online only functions are Project Service Automation, Field Service, Voice of the Customer (Surveys) and Microsoft Flow Integration.
On-Premise – you are responsible for maintaining and securing the underlying infrastructure. Often, there is a delay while new hardware is provisioned.
CRM Online – this is managed by Microsoft, reducing your IT infrastructure and maintenance costs. Microsoft actively monitor the security of the platform. To get started, simply visit the Office 365 portal and spin up a new instance of CRM.
Backups and DR
Within Dynamics CRM Online, data is automatically replicated in each server, in different racks within the data centre and across different data centres (for example in Europe, data is replicated to the Dublin and Amsterdam Data Centres) thus providing geo-redundancy. There would have a high price tag to achieve this level of redundancy in an on-premise environment.
With CRM On-Premise you are in control of your own backup strategy so can back-up as often as required. With CRM Online, Microsoft provide a nightly backup which you can restore through the CRM Online portal. You can also create up to three custom backups as required.
CRM Online is delivered over the internet so performance may be affected by a poor internet connection. CRM On-premise is typically installed locally so connectivity not an issue but performance can be affected by server resources and configuration.
Microsoft delivers new functionality to the cloud first. There are currently two major updates released a year for CRM Online. This reduces the amount of changes between versions so decreases the complexity of upgrade projects. Microsoft will only permit you to be one version behind, so you may need to do smaller upgrade projects more frequently.
With CRM On-premise, you have complete control over the upgrade schedule and applying patches.
When Dynamics CRM Online first came out, there were great limitations in the customisation available as any custom code was running in a shared environment. In recent versions, Microsoft have introduced sandboxing which isolates one customers code from another, this means the majority of custom code will now run and increases extensibility. With CRM Online, you can only add 300 custom entities (tables), There is no practical limit with On-Premise; it is limited only by the capacity of your instance of SQL Server.
With CRM On-Premise, you have direct access to the SQL database (note: NEVER make direct updates to the CRM database as this will void your warranty with Microsoft). You can run T-SQL queries and write SSRS reports against the CRM filtered views in On-Premise CRM.
With CRM Online, you have no access to the back end. CRM allows you to use FetchXML queries for querying and writing SSRS reports, but these are not as powerful as SQL queries.
It is not possible to take an On-premise database and restore it to CRM Online. Typically, the system is rebuilt (although if the on-premise environment is a similar version to Online, it is possible to transfer customisations) but data must be migrated using a 3rd party migration tool.
Note – since I first wrote this article, Microsoft have released FastTrack, a service designed to help users migrate to the cloud. This is only available to organisations with 150+ D365 Enterprise licences.
For migrations from Online to On Premise, a case can be raised with Microsoft to request a copy of a CRM Online instance and restore the SQL database backup on an CRM On-premise server.
CRM Online is a SaaS (Software as a Service) Model. You pay a monthly fee based on the number of users you require. If you require additional users, you simply purchase more licences and your monthly cost goes up. Reduce users, and your licensing cost goes down. The product is designed to scale with you as you grow removing the hardware scalability headache. It is classed as Operational Expenditure.
CRM On Premise requires an initial outlay of hardware and licences plus an ongoing maintenance fee (Software Assurance). This model requires Capital Expenditure.
CRM On-premise storage is only limited by your hardware (and SQL licensing). CRM Online comes with 10Gb of storage space with an additional 5Gb being provided for each additional 20 users added to the system. There is a cost for additional storage space. This means if you are using email tracking extensively, storage costs can increase rapidly. This can be managed in some degree by storing external documents in SharePoint Online and using the native CRM/SharePoint integration as SharePoint storage costs are lower than CRM storage.
||CRM On Premises
||Monthly Subscription (OpEx)
||Large initial capital investment (CapEx)
||Securely stored in Microsoft data centre
||Complete ownership and control over data
||Access only via CRM API / report connectors.
||FetchXML, T-SQL from locally replicated reporting server
||FetchXML or T-SQL
||10GB (plus 2.5GB for every 20 licences)
||Limited to the amount of storage available on your server
||Minimal internal administration required, Technical infrastructure managed by Microsoft
||Requires in-house or partner maintenance
||Quick to deploy
||No hardware required
||Use existing hardware or will need to purchase additional servers
||No maintenance costs
||Requires servers to be maintained and upgraded
||Reliant on connectivity but 99.9% financially-back SLA from Microsoft
||Do not rely on internet connectivity or external factors to access CRM
||Office 365 admin approves the upgrade before it is installed, update rollups applied automatically
||Minor releases can be held back for on-premise until the next major release – minimising number of updates
||Two releases per year. Spring release functionality exclusive to CRM Online, so new functionality available online first.
||Fall release released to both CRM Online and On Premises, includes the functionality released in the Spring release.
||Phone & Tablet App
||Apps available but CRM must be published externally via ADFS
||High site resilience achieved through redundancy
||Dependent on hardware – expensive to purchase redundant server for backup
|Workflows / dialogues
|Direct server access
||CRM Online customers can migrate On Premises at any time. SQL database provided to client at scheduled time that can be imported to an On-Premises deployment.
||CRM On Premises customers can migrate to CRM Online and entity customisation can be imported; however, on premises database cannot be moved to Online data centre, so a data migration is required.
||CRM Online provides non-production environments as part of your subscription that can be used for dev/test/UAT. The number of organisations received depends on the number of users.
||Non-production environments can be installed, depending on local server availability.
||CRM for Outlook, Email Router, or Server Synchronisation (if using Exchange Online/O365)
||CRM for Outlook, Email Router, or Server Synchronisation (if using Exchange on premise)
||Server-Side with SharePoint Online
|Inside View (Insights)
|Project Service Automation
Microsoft have a good guide here