Microsoft CRM performance issues and possible solutions

Get help debugging Microsoft CRM performance issues and get tips for dealing with slow screen load times in Dynamics CRM 4.0 in this expert Q&A.

We have Microsoft CRM deployed to about 40 members of our sales staff who are connecting via laptops through a...

VPN. We've had CRM for about two years now and continue to experience latency that has caused many of the sales team to abandon the software. We worked with a certified partner to implement and deploy the software but no one seems to be able to fix the latency issue. We've upgraded to Microsoft CRM 4.0, but it's still slow. Screens can take anywhere from 15-30 seconds to refresh. I have a very high-end SQL server and CRM lives on its own box as well. Is the latency within Microsoft CRM just a reality of life?

Screen load times of 15-30 seconds are very unusual with Microsoft CRM based on my experience with the application. Microsoft recently released several white papers on this subject called the Microsoft Dynamics CRM 4.0 Performance and Scalability White Papers. In these white papers, the test team at Microsoft was able to achieve response times of .70 seconds with 24,000 concurrent users. Another test with 1,500 concurrent users and a database size of 1.3 terabytes and over a billion records was able to achieve response times of .29 seconds. Finally, a network latency test between Microsoft CRM versions 3.0 and 4.0 found that, in certain areas, version 4.0 outperformed version 3.0 by up to 94%.

Microsoft CRM performance issues can be caused by a wide variety factors such as network latency, limited processing power on client machines, significant form customization, extensive client-side JavaScript and poor database performance, to name a few. VPN software can cause issues as well and it can be very difficult to pinpoint the cause of performance issues within the application. An alternative to using VPN software would be to enable an Internet-Facing Deployment against your Microsoft CRM implementation, which allows users to access the application securely without the need to "VPN into" your company's network.

In order to debug this issue, I would first try to determine if the root cause of the poor performance originates from the servers (this is unlikely based on your infrastructure), network bandwidth issues, or insufficient processing power on client machines. For example, you can run Internet Explorer on your CRM server and check the performance there. If screens still take too long to load, then you have an issue with performance either in your database or CRM server. If that is not the issue, I would move on to the client and try to access the application from several clients in different locations and preferably with different processing powers and observe screen load times for each client. You can also use an HTTP debugging proxy such as Fiddler to monitor traffic between the client and the server. If performance differs considerably, I would try to narrow the differences down further until it is obvious what the root cause of the issue is. For example, if CPU utilization on client machines spikes to 100% for more than a few seconds when a Microsoft CRM screen loads, there is a good chance that the poor performance is caused by issues with your client machines.

Finally, I wanted to point out a couple of great resources that can help you maintain your Microsoft CRM application and improve its performance:

Dig Deeper on CRM strategy and implementation