Outlook’s AutoComplete seems simple and useful. It’s certainly useful but it’s hardly simple and occasionally it’s been downright dangerous or embarrassing. AutoComplete makes it too easy to send an email to the wrong address.
We’ll look at AutoComplete, how it works, the pitfalls and the few settings available. First we’ll cover the basics (that you might already know) before we get down to the nitty-gritty details few sane humans would want to know <g>.
Mistakes happen when an employee types in the first few letters of the intended recipient and accidently selected the first option that Outlook offered. For example, all these choices if you start typing ‘Peter’ …
The above example contains mistakes. (We’ve had to blur the names/emails for privacy) including:
- An old email address that’s been updated in our Contacts list.
- A mistyped email address.
- Multiple email addresses for the same person.
- Addresses for emails sent as a ‘one off’ that should not be on the list (reduce list clutter and the other persons privacy).
Autocomplete is so useful and quick, it’s easy to forget the downside. You have to be careful to select the right name/email address from the list. Most misaddressed messages go to someone with the same or similar first name.
Reduce the risk simply by typing more letters. That will usually slim down the autocomplete list and make it less likely you’ll select the wrong one.
There’s also a risk of sending to an ‘old’ or superseded address (we’ll explain later in this article). And a mistyped address which gets copied into future messages.
Turning off AutoComplete
You can turn off AutoComplete from Options | Mail | Use Auto-Complete List to suggest names when typing in the To, Cc and Bcc lines.
There’s also an option to empty the Auto-Complete List. As we’ll see, you can edit the AutoComplete list rather than Microsoft’s ‘all or nothing’ approach.
How AutoComplete works
To understand the good and bad of AutoComplete, let’s look at how the feature works and where it’s saved.
Each time you sent an email message, the name, email address and mail format are saved to the AutoComplete file.
Where is AutoComplete saved?
The heart of AutoComplete was a separate .nk2 file.
Until Outlook 2010, the Autocomplete entries were stored in a file at drive:\<user>\AppData\Local\Microsoft\Outlook in a file with an .nk2 extension.
In Outlook 2010 and later, the Autocomplete list moved to the Outlook data store. A .PST for many people, .OST if you’re connected to Exchange Server. That’s a sensible change because it means AutoComplete automatically roams between different Outlook installations. It’s also moved if you migrate your PST file to another computer.
The smarties among you will know the last paragraph isn’t quite true. Autocomplete list is also saved to a data file at \Users\<user>\AppData\Local\Microsoft\Outlook\RoamCache
This file is probably created to speed up Autocomplete. It’s regularly updated from the master list (in the PST/OST) by Outlook and is also updated when Outlook is shut down normally.
As we’ll see, this external copy is also useful for editing and exporting the Autocomplete list.
Separate from Contacts list
An important point. Autocomplete is a separate address list from the rest of Outlook.
Changes you make to Outlook Contacts do NOT automatically make changes in Autocomplete, as many people expect.
If someone changes email address you need to do TWO things in Outlook:
- update their Contact entry.
- Remove the old address from the AutoComplete list.
Adds addresses – never removes
Outlook only adds entries to the Autocomplete list. Removing old entries or clearing out the list mostly a job for us humans.
That’s why you might see ‘old’ and out-of-date addresses in your Contacts list.
Invalid addresses included
Outlook adds to the Autocomplete list when you send an email. It has no way of knowing if the address you typed is right.
For example, if you sent an email to [email protected] (ie put the period in the wrong place) that address will be added to Autocomplete. Of course, you’ll quickly get an error message about the wrong email address, but that error isn’t connected back to Autocomplete.
Next time you type ‘fe’ the incorrect address will pop up in the Autocomplete suggestions.
UPDATE: We tested this again in late April 2017 with Outlook for Windows version 1705. A pleasant surprise! Outlook appears to ‘read’ the bounced email from an invalid address and delete the incorrect email address from the AutoComplete list. This only seems to work for wrongly formatted email addresses (like the fred.daggcom )
Sending in wrong format
When Autocomplete saves an email address, it also saves the email format to send with. The options are Rich Text, Plain Text or Automatic. The latter is the default.
Just like an email address, if you change the preferred sending format in a contact, that change isn’t copied to Autocomplete.
The fix is to remove the Autocomplete entry and let another entry be created when you next send a message to that address.
Removing Autocomplete items
The easiest way to delete an item on the Autocomplete list is to click on the X on the right of an entry.
Or clear the list entirely from Options | Mail | Empty Auto-Complete List.
There’s also a command line switch available to clear the Autocomplete list at startup.
Editing the Autocomplete list
You can’t directly edit the Autocomplete list. It’s in some mysterious Microsoft format.
Happily, you can edit the details of the Autocomplete list using NK2Edit, a free tool from the smart folks at Nirsoft.
NK2Edit is the power tool for Autocomplete. It shows you all the innards of the Autocomplete list.
Among its many features are:
- Sortable columns. Makes it easy to find similar entries. There are columns for name, email address and domain, among many.
- See/edit what appears in the drop down list
- See/edit the email address type – Rich Text, Plain Text or Automatic.
- Copy Autocomplete items to your contact list
- Copy a Contact to your Autocomplete list.
- View and set the Index and Weight values which control the order that Autocomplete entries appear in.
- Remove quote or double-quote marks from Autocomplete entries. Under the Actions menu:
Removing less common Autocomplete entries
If you want to quickly tidy the Autocomplete list, have a look at the Record Weight column in NK2Edit. Record Weight is a measure of how often each Autocomplete record is used.
Sort by Record Weight and the most commonly used addresses should be at the top. That makes it easy to select and delete entries with lower Record Weights.
How Outlook calculates Record Weight is complicated. In our quick test, sending an email to a new address is added to AutoComplete with an initial Record Weight of 16,384. However there are entries with lower values than that. There’s one address that we use fairly often; more often than the 11,080 Record Weight suggests.
AutoComplete stops working
If AutoComplete doesn’t work (ie no suggestions appear when you type) first check the setting at Options | Mail | Use Auto-Complete List to suggest names when typing in the To, Cc and Bcc lines.
Make sure Autocomplete is on. Also that the option and ‘Empty Autocomplete list’ button are active. If the option and button are greyed out then Autocomplete has been disabled using the registry or Group Policy settings explained below.
If Autocomplete is on but nothing appears, most likely the Autocomplete list has become corrupted. Either empty the Autocomplete list or use NK2Edit to check for troublesome entries.
It’s possible to disable Outlook AutoComplete from the Windows Registry.
Replace ‘15.0’ with the value for your version of Office: 12.0 for Office 2007, 14.0 for Office 2010, 15.0 for Office 2013 and 16.0 for Office 2016 and Microsoft 365.
Options: 1 Enabled or 0 Disabled
Network Adminstrators can control Outlook AutoComplete from a Group Policy.
User Configuration, Administrative Templates, Microsoft Office Outlook ????
Tools, Options, Preferences, E-mail Options, Advanced E-mail Options
Use the Office administrative tools ADM files for Group Policy integration for the right version of Office. Adding Office ADMs to a group policy should give you a “When sending a message | Suggest names while completing To, Cc, and Bcc fields” option.
Since the Autocomplete list is now saved in the Outlook PST or OST file, it should move with you between computers (especially if you use cloud storage and Exchange Server with an OST).
But sometimes you might want to migrate Autocomplete from one account to another.
In theory, you could copy the Stream_Autocomplete?????.dat and change the name to match the Outlook profile on that computer. However, that might not work with Outlook overwriting the .dat file instead.
There’s a few ways to do it. Microsoft recommends a method using a developer tool to extract the Autocomplete list from an Outlook data file and import it into another data file. Such poking around in the delicate PST/OST file isn’t for the faint hearted.
A less risky method is using an NK2 file to migrate the Autocomplete list. The NK2 file is the ‘old’ Autocomplete file used until Outlook 2007. Later versions of Office have a way to import .NK2 files into the newer Autocomplete list, but no way to import the new format – go figure.
To make the NK2 file use NK2Edit File | Save As and choose the .NK2 format. Move that NK2 file to the new computer or open another Outlook profile.
On the new computer put the NK2 file in the \Users\<user>\AppData\Local\Microsoft\Outlook\ folder (ie one level below the ‘RoamCache’ folder). Start Outlook with the one-time command:
The NK2 file will be merged with existing Autocomplete entries.
Autocomplete List Size
The default size for the Autocomplete list is 1,000 entries. That’s usually more than enough but it can be changed in the Windows Registry. Either expanded to 2,000 or reduced to a pointless 1.
Microsoft itself doesn’t recommend this saying
“Because this configuration is untested, it is not recommended. If you have a larger auto-complete list, you could also lose a larger number of cached entries if your auto-complete cache becomes unusable because of corruption.”
Replace ‘15.0’ with the value for your version of Office: 14.0 for Office 2010, 15.0 for Office 2013 and 16.0 for Office 2016 and Microsoft 365.
Options: from 1 to 2000. Decimal