After an upgrade from Sitecore 9.0 to 9.1.1 we found that the Experience Editor load time had gone from 8 seconds to over a minute! The time is all spend loading Ribbon.aspx.
Sitecore have been unable so far to determine the cause of the slowdown, but various posts imply that other people have the same issue either on new or upgraded 9.1 sites, and that a good way to speed this up is to tweak the page editor ribbon options.
I spend some time looking at the built-in roles that might help.
I found that any user that inherits from sitecore\Author is extremely slow (~70 seconds). The tabs include “Optimization” which is not even needed by our site which has xDB Disabled!
It looks like this is due to sitecore\Author inheriting from Analytics roles:
- sitecore\Analytics Testing
- sitecore\Analytics Personalization
- sitecore\Sitecore Client Authoring
If I use sitecore\Sitecore Client Authoring instead then the load time goes down to 40 seconds and it no longer includes the Optimization tab.
This implies that the Optimization tab was adding about 30 seconds. But 40 seconds is still too slow.
I found that by adding the role sitecore\Sitecore Limited Page Editor in addition to either of the above roles then it loads in 15 seconds but only the ribbon contains 2 tabs – Home and Versions. However the tick boxes on the View tab are present on the Home tab.
The only issue here is that the Add Component button is greyed out. I found that this is due to it being Denied read access in the item in the core database – /sitecore/system/Settings/Security/Policies/Page Editor/Can Design
Once I removed this, the design features are available and the experience editor appears perfectly usable, and much faster.
If / when we find a better way to resolve this without limiting the features, I will update this post!