Improve autodiscover performance

Autodiscover can be a lengthy process, especially if you are in a hosted environment or if your mailbox is in Office 365.

The autodiscover process consists of five different steps, it depends on your environment where autodiscover stops and returns the information. Autodiscover is using the following mechanisms:

  • Service Connection Point (SCP) in Active Directory. This is used by domain clients.
  • Root domain discovery, used by non domain joined clients or clients not being able to access Active Directory. All other steps are used by these clients as well.
  • Autodiscover.contoso.com (standard autodiscover mechanism)
  • Autodiscover redirect to autodiscover site (often used by hosting companies)
  • Autodiscover SRV records in DNS (sometimes used by hosting companies)
  • Autodiscover redirect to Office 365 (outlook.com)

If your mailbox is in Office 365, outlook will go through all these steps until it finds the information in Office 365. All steps will fail with the accompanying time-out and this will take quite some time. This can be seen in the Outlook Test Email AutoConfiguration option:

image

It is possible to disable certain autodiscover steps by creating DWORD entries in the HKEY_CURRENT_USER\Software\Microsoft\Office\<version>\Outlook\AutoDiscover registry key.

Note. <version> can be 16.0 for Outlook 2016, 15.0 for Outlook 2013 and 14.0 for Outlook 2010.

The following DWORD entries can be created:

  • ExcludeHttpRedirect
  • ExcludeHttpsAutoDiscoverDomain
  • ExcludeHttpsRootDomain
  • ExcludeScpLookup
  • ExcludeSrvRecord
  • ExcludeLastKnownGoodURL (Outlook 2010 version 14.0.7140.5001 and later)
  • ExcludeExplicitO365Endpoint (Outlook 2016 version 16.0.6741.2017 and later)

To skip the SCP, root domain and autodiscover domain check (in an Office 365 scenario) you can add the ExcludeScpLookup, ExcludeHttpsRootDomain and ExcludeHttpsAutodiscoverDomain DWORD entries and set the value to (1) as shown in the following screenshot:

image

After a restart of Outlook you can run the Test Email AutoConfiguration tool again to see the improved results as can be seen in the following screenshot:

image

This way you can exclude certain steps in the autodiscover process and therefore speed up the process (and improve user experience Smile)

More information can be found on the Unexpected Autodiscover behavior when you have registry settings under the \Autodiscover key on Microsoft Technet.

10 thoughts on “Improve autodiscover performance”

  1. Hello Jaap,

    I have one more improvement on this topic. What about making the Autodiscover process (for pure O365 hosted companies) even more faster (at least for domain-joined Outlooks) without the need to modify registry. I put O365 AutoDiscover URL “https://autodiscover-s.outlook.com/autodiscover/autodiscover.xml” into the SCP in AD.

    Then Autodiscover process for O365 mailboxes is very straightforward and behaves like having an on-premise Exchange 😉

    Like

  2. Hi Jaap,
    We have hybrid exchange and all mailboxes are moved to O365. If we create autodiscover CNAME for autodiscover.outlook.com will this not block us from ever running the HCW again (cause autodiscover points to O365) ?

    Like

  3. Hi Jaap,
    What happens if you’ve changed the external autodiscover record to a CNAME record pointing to O365 and you want to rerun the Hybrid Configuration Wizard or run the HCW on a new Exchange server? O365 is in that case no longer able to find the on-premises Exchange servers.

    Like

  4. Let me rephrase 🙂 I presume creating the CNAME in hybrid environment will block the HCW to complete successfull? So if we want to run HCW again, does it require to change autodiscover to on-premises again?

    Like

    1. I don’t know what happens in your situation. As long as Exchange Hybrid is managed on-premises (which is always the case) I keep my autodiscover record point to on-premises. From there the request is always redirected to Office 365. The other way around used to work a couple of years ago, but I’m not sure if this is still the case.

      Like

  5. If I set the ExcludeHttpsAutoDiscoverDomain when I have hybrid configured and bulk of the mailboxes still on-premises what breaks?
    Can I still access on-prem public folders via O365 mailbox when connected from external network?
    Can I add an on-prem shared mailbox that I have full permissions in my profile when connected from external network?
    Can I access free\busy of an on-premises users when connected to O365 from external network?

    Like

    1. What do you want to achieve?
      Internal domain joined clients will first try to find the SCP in Active Directory, and based on the information found there connect to the Exchange servers. Non domain joined clients, or domain joined clients outside the office will use the autodiscover.domain.com option, and you are going to exclude this with the ExcludeHttpsAutodiscoverDomain option. So most likely they will no longer find the internal organization and find information they need to connect to all resources.

      Like

Leave a comment