Welcome! The Dynamics CRM Support blog was created to provide insights, knowledge, and techniques that support engineers around the globe utilize each day.
Dynamics CRM in the Field The Microsoft Dynamics CRM Team Blog Microsoft Dynamics CRM Online Services Blog EMEA Dynamics CRM Support Japan Dynamics CRM Team Blog China Dynamics CRM Team Blog CRM a Portguesa CRMLandia
There are many ways that a user or administrator can optimize the Outlook client and it’s performance and stability. I wanted to create a general post around these common optimizations and some best practices and troubleshooting steps. I would like to point out that there is a publicly posted white paper in reference to client side performance as well, located at the link below.
This is the first thing I would recommend walking through when implementing the Outlook client.
Optimizing and Maintaining Client Performance for Microsoft Dynamics CRM 2011 and CRM Online
This is also available on Technet
Next, make sure that your environment meets the hardware and software requirements that are listed in this documentation. It is important to note that the requirements listed here are for a machine that is only running Outlook and the CRM client add-in.
For example, it states the minimum required amount of memory is 2GB. It would be best to use the recommended amount of 4GB. Either way, this is the requirement for only the CRM add-in and does not take into account any other applications or add-ins that may be installed and running on this environment. It is important to take this into account with what else is being run on this machine while CRM is installed and running to ensure you are able to meet the needs of all applications. The minimum requirements are in the end, just that, minimums. They will be enough to run the client but will not provide an optimal experience for users.
Some of the most important steps I have used to increase performance with the Outlook client when someone is seeing performance degradation would include:
1. The first thing, is always to try the web client using Internet Explorer to see if you encounter the same performance. If not, you have narrowed it down to the Outlook CRM add-in.
2. The next thing to address would be other Outlook add-ins. They can be disabled by going into Outlook, clicking File | Options | Add-ins, and click Go on COM Add-ins. Here, you can disable all add-ins except Microsoft Dynamics CRM to see if the issue still occurs.
3. Testing with firewall and antivirus programs is another quick test to see if they are causing the performance problems with the client. Either disable or uninstall these products for testing purposes to see if the current performance continues or if the performance increases.
4. Next, always make sure you are on the latest version of the CRM add-in, as it can reduce the time spent on both sides if it turns out to be an issue that was already resolved in a newer update.
5. Is this occurring on a Citrix environment or through RDP? If so, try this directly on the machine to see if this is caused by the connection with the remote connection.
6. Also, are you using Exchange Cached mode in Outlook? The Exchange Cached mode was created so that the data could be stored locally, allowing users to have better performance while not having to depend on the connection and network with Exchange. One thing you can test is disabling this or enabling it, depending on your current settings, to see if the issue continues.
7. Another thing I pointed out in the Email Tagging blog, is that the automatic tagging process can be quite expensive, as it will continue looking for and updating Outlook items if there are changes on these on the CRM Server. If you go to Start | All Programs | Microsoft Dynamics CRM | Diagnostics, you can uncheck Automatic Tagging to see if the performance improves.
8. Other things to consider are the latest version of Outlook. The performance has increased with newer versions of Outlook and there have been a few fixes released that correct some issues with the CRM add-in performance.
9. If possible, try this on a machine that uses a different version of IE than what you are currently using to see if the issue continues. Along with the IE troubleshooting, if you open Internet Options on the Advanced tab, you can Reset Internet Explorer Settings to default. This is also a good step to try.
10. If for some reason, you are using the CRM 4.0 add-in with CRM 2011, be sure to try installing the CRM 2011 version to verify performance increases.
11. One thing I have seen many times is the amount of records the user is keeping open. One a normal screen, you will only be able to look at 2 or maybe 3 records at one time if the windows are shrunk down to a decent size. However, many times, I have seen people working with 30+ windows open at one time. This is chewing up memory and causing the machine to work very slowly. A best practice here is to only keep open as many CRM windows/records that you can view at one time. It would be expected to see slower performance with this many windows open and therefore hanging on to this utilized memory.
12. If performance is slow, another good step to try is running this machine outside of the local network, such as from home, to see if this continues. This helps narrow down networking related issues. In addition, the whitepapers contain links to the latency and bandwidth test that you can run to get your current network stats.
13. Another performance troubleshooting step I have successfully done and is very simple is to make sure that the machine that has the CRM add-in installed on it is a member of the CRM domain and not a workgroup machine. It is a requirement for authentication when working with On-Premise CRM deployments. Normally, if this is an issue, you would be able to launch Outlook and the CRM add-in would disable itself before you are able to access it.
14. I have seen many times where there are graphics/video driver/card issues that will cause crashing or performance issues as well. It is always good to ensure you have up to date software and hardware; however, if you are seeing issues with the CRM add-in, I would also navigate to the video card manufacturer’s website to get the most up to date drivers.
15. This is more rare, but when is the last time you have cleared the temporary files on the machine? Go to Start | Run | type %temp% | and delete the temp files. The use of these files are included in another blog post from Jarrod. Temporary Files and CRM
There are a few common troubleshooting steps that have led to many resolutions on client performance. However, I would still recommend reviewing the white papers above for additional optimizations.
Please be sure to keep an eye on our continuously growing blog, as a few other engineers will be posting here in the next few weeks on some new topics.
This is excellent and is something I've been looking for, thanks Aaron!
A couple things that could be included in the white paper could be the *.OST file sizes causing general performance issues. Also, I've found that CRM entity Reading Panes are also another performance impact (the default setting loads all sections of the entity form).
Here's a post I wrote that has some overlapping or new ideas:
I don't know if it already exists, but it'd be nice if there was a CRM Fixit tool that checks for a large majority of performance impacting areas on a machine (e.g. the most common best practices, *.OST size, Outlook addins, computer resources). This tool could make it really easy for end-users or CRM administrators to apply. Maybe have it somewhere in the CRM Diagnostics tool.
Is it possible to have different update rollup versions on the client and on the server? I would like to update the clients to rollup 11 and leave the server on rollup 8.
Daniel, yes it is.
Thanks for the ideas Allan. We will look into that as well. Also, Daniel, Allan's response is correct, as long as both the server and clients are post UR6 due to schema changes.
If you're experiencing a lot of Outlook rashes using CRM, specifivally "Microsoft Outlook has encountered an error ...", then the real answer is to use 64-bit Outlook
If you're using the 32-bit Outlook client you may want to pay a lot of attention to memory footprint. We went through quite a long process debugging the Outlook crashes with Microsoft, before coming to the conclusion that our CRM solution was more complex than 32-bit Outlook could handle.
Microsoft took us through steps as above and had us remove various add-ins, anti-virus, etc, but it feels like a lot of "try this" guess work. What became clear was the Outlook add-in requires a lot of memory and that Outlook is not large image aware, which limits it to 2GiB of virtual address space even when it's on a 64-bit OS. A quick look in Task Manager will reveal just how much memory IE can consume when browsing CRM pages. Outlook is running its own memory requirement, plus IE's and the CRM add-in's.
Outlook crashes pretty randomly when address space gets low. It looks like a lot of developers, myself included have forgotten to test for low memory availability. So, by the time you've got round to attaching the debug diagnostic tool, you'll see that sometimes the crash is in Outlook and sometimes in an add-in. Malloc returns null when memory is unavailable, so low memory or null pointer exceptions may be reported and can mean the same thing. Removing add-ins may help a little, but they're just one of the symptoms, this problem is architectural.
If you're seeing Outlook report memory use of about 1GiB in Task Manager and seeing an increased number of crashes in these conditions it may be why.
UR10v2 introduced more aggressive garbage collection. Later versions can see Outlook freeze for a couple of seconds from time to time. It has improved stability though and a few little freezes are less problematic that losing the whole edifice.
The CRM add-in runs well in 64-bit Outlook, it's much faster too.
Thanks Adam. I haven't tried the 64-bit version but it sounds like it could help. Have you tried following the steps that Aaron and I recommended? These are tried and true methods that we've used with great success in most environments. There are also CRM server side considerations, such as how your CRM was designed and whether that is very intensive (e.g. form design, iFRAMEs, workflows, plugins). If your CRM has a lot of features to display it'll load slowly and take up a lot of memory client side.
One thing that I have found with Outlook in particular is that when users have shared mailboxes, shared calendars, and they use CRM that the setting to cache shared mailboxes gets checked and can cause the OST file to grow to unmanageable sizes. This leads to poor Outlook performance and adds to the unresponsiveness CRM.
Additionally, Office SP1 and SQL CE 4.0 should be installed on the workstations to aid in the memory leaks that can occur between CRM and Outlook.
I Configured CRM 2011 Onpremise with Outlook 2010 and it worked fine...
Now CRM 2011 is updated with the Rollup 13 and i tried to configure Outlook with it but it is giving the below error.
"There is a problem communicating with the Microsoft Dynamics CRM server. The server might be unavailable. Try again later. If the problem persists, Contact your System administrator"
can anyone help me in this regards, what needs to be updated for Rollup 13 to configure Outlook.
Other Microsoft Sites
I'm a Customer
I'm a Partner
Follow Microsoft Dynamics