Troubleshooting emails to Gmail with missing Message-ID header

Gmail has recently imposed new restrictions on emails sent to any Gmail account or domains hosted on Gmail's GSuite. One such rule is related to the Message-ID header that causes emails to be rejected if this header is missing.

The actual error message reads:

550 5.7.1 [x.x.x.x] Messages missing a valid Message-ID header are not accepted.

Here, x.x.x.x is the IP address of your SMTP server.

Problem Statement

According to RFC 532, specific headers, such as From, Date, and Message-ID, should be included in every email message. Most email servers do not take any action if any of these headers are missing. Gmail has recently started to reject emails if any of these headers are missing.

Unfortunately, many legacy applications written years ago never followed these guidelines and are now encountering problems when sending emails to any domain hosted on GSuite.

The Solution

There are two solutions to this problem:

  1. Update your legacy application and ensure it follows every best practice related to email delivery.
  2. Use an email server, such as Xeams, which can add these headers if they are missing in the original message. In addition to these missing headers, Xeams can sign your outgoing email with a DKIM signature.