Displaying images as attachments is a common problem. Unfortunately, the solution is not so evident because there can be many reasons. For example, the problem may occur if the message gets converted to the plain text format or there are issues with the email signature's HTML code. Finally, it can be caused by a specific Outlook configuration. This article will show you how to ensure images are not displayed as attachments in each situation.
Make sure the email format is set to HTML.
The most common reason for images displaying as attachments is that some messages are sent in a plain text format instead of HTML format. As the plain text format does not support embedding or viewing images, all images are automatically attached to the message.
Automatic format change can happen either because of Outlook or Exchange Server settings:
In Outlook 2010,2013, and 2016, you can set all messages to be sent in HTML by default.
Just go to File > Options > Mail > Compose messages and set Compose messages in this format option to HTML.
For Outlook 2007, go to Tools > Options > Mail Format. Then, choose HTML from the list next to Compose in this message format.
Remember that the default message format is the same as the original message in the case of replies and forwards. As a result, if you want to respond to a plain text message, you must manually change the message format by clicking the Format Text tab on the ribbon and choosing HTML.
If you compose a message in the reading pane, be sure to click Pop Out button first:
Note that Outlook offers an option to receive all messages in plain text format. The side-effect of setting this option on is that all replies and forwards are also in this format by default. If you want to know how to turn this option off, go to the part of this guide "The receiver converts all messages to the plain text format".
On-premises Exchange Server and Office 365.
Your Exchange Server might convert outbound messages to the plain text format. It can happen on every Exchange Server and Office 365 with Exchange Online on-premises Exchange Server. By default, all messages are converted to the HTML format unless they are initially in the plain text format – in which case they continue to use simple text formatting. However, sometimes, especially in Office 365, some HTML-formatted messages are converted to plain text anyway. As it happens on the server level, it cannot be influenced by Outlook. Luckily, there is a PowerShell cmdlet that lets you change this Exchange policy quickly:
Get-RemoteDomain | Set-RemoteDomain –ContentType MimeHtml
This cmdlet should work on all emails sent outside the organization, converting them to HTML formatting.
The receiver converts all messages to the plain text format.
Another option is that it is the recipient’s fault. MS Outlook and some security programs may automatically convert all messages to plain text. If it is Outlook, above the message there will be a note that “This message was converted to plain text.” The message can be converted to HTML format by clicking the Infobar and choosing Display as HTML:
Automatic email conversion can be turned off in Trust Center settings under the E-mail Security tab, Read all standard mail in plain text by checking off the checkbox:
However, if you are the message's sender, you do not influence those settings on the recipient’s side.
Match the HTML display size and the actual image size.
First, Outlook is known for having a unique way of interpreting HTML code. One of the effects can be displaying images as attachments and not showing them in the message. This may happen if an image's width and height parameters differ from the actual image size. Therefore, you must ensure that your HTML email signature does not have such differences. Next, ensure your pictures have the proper resolution and resize them if necessary (You can use any image editor, like Paint, GIMP, or Photoshop). Then, add the width and height tags corresponding to the image's dimensions.
How to edit the HTML file of an email signature.
The email signature editor in Outlook does not let you modify the source HTML code. There is an easy way to edit Outlook email signatures, though:
1. If you have a signature created in Outlook, go to Mail options and click Signatures… while holding the Ctrl key:
2. A window with your defined signatures will open. Right-click it and choose a simple text editor like notepad to edit the one you want. (For convenience, you could also use a more advanced code editor, like Notepad++).
3. All left is to find your img tag and change width and height attributes, if necessary.
Linked images are sent as embedded.
This problem occurs mainly in the older versions of Outlook (Outlook 2007 and Outlook 2010). Still, it can also happen in Outlook 2013 and 2016 if some settings were migrated or if someone changed the Outlook configuration.
Usually, linked images should not become attachments – that’s one of the differences between linked and embedded images. However, sometimes Outlook automatically downloads linked pictures and embeds them in the message. To change that behavior, you have to make some changes in the registry.
Note: Be careful when editing the registry, as it is easy to harm your computer or programs you use if you are not sure what you are doing. Be sure to always back up your registry before applying any changes.
1. First, start Regedit with the “Win + R” key combination and typing in Regedit.
2. The path you need to access is:
Note: X stands for the Outlook version you have; e.g., if you have Outlook 2016, it would be 16.0.
When you access this location, you either have to find or add Send Pictures With Document REG_DWORD key and change its value to 0.
That's it. Your Outlook will not download the pictures before the message is sent.