Sunday, November 24, 2024
HomeEveryday WordPressDo Your Emails Comply With Google & Yahoo's New Email Sending Requirements?

Do Your Emails Comply With Google & Yahoo’s New Email Sending Requirements?


In February 2024, Gmail and Yahoo Mail began enforcing new rules to protect email recipients and help keep their inboxes safer and less spammy.

These rules require all email senders to adhere to specific guidelines to ensure email deliverability.

This comprehensive guide explains what these new requirements are and how they affect your business.

We’ll cover:

Google & Yahoo’s New Email Sending Requirements

In October 2023, Gmail’s Security & Trust Group Product Manager Neil Kumaran announced on Google’s blog that from February 2024 email senders would need to authenticate their emails, allow for easy unsubscription (bulk senders), and stay under a reported spam threshold in order for their emails to be delivered to Gmail addresses.

As these requirements are now in effect, ignoring them will see your mail being automatically rejected or sent to the recipient’s spam folder.

According to Neil, although Gmail’s detection tools prevent 99.9% of spam, phishing and malware from reaching inboxes and block almost 15 billion unwanted emails every day, the service is now facing ever more complex threats than it did since the service launched in April of 2004.

As Neil states on Google’s blog…

“As basic as it sounds, it’s still sometimes impossible to verify who an email is from given the web of antiquated and inconsistent systems on the internet.”

The new email sending requirements are designed to help users keep their inbox safer and more spam-free.

This initiative to combat fraudulent or spammy email by placing more stringent requirements on email senders is not coming solely from Google, however. Industry partners like Yahoo have also joined in to work alongside Google and the rest of the email community to make these new requirements industry standard and a basic email hygiene practice.

Yahoo’s email sender best practices contains similar recommendations to Google’s and includes a link to a a comprehensive guide on Senders Best Common Practices from the Messaging, Malware and Mobile Anti-Abuse Working Group (M3AAWG), an organization committed to helping industries fight and prevent online abuse.

This document is aimed at anyone involved in the delivery and compliance of electronic communications, including marketing and management personnel. It is worth downloading and covers the latest and most effective recommended practices for sending commercial electronic messages.

So, what are these new requirements and how do they affect your business?

Essentially, the main requirements can be summarized as follows:

  • Your spam complaint rate needs to be under 0.3%.
  • Authentication using SPF, DKIM, and DMARC (Bulk email senders) is now required.
  • You must have a one-click unsubscribe option and remove people requesting to be unsubscribed from your list within 1-2 days (Bulk email senders).

Additional requirements for all email senders include:

  • Ensuring that sending domains or IPs have valid forward and reverse DNS records, also referred to as PTR records.
  • Use a TLS connection for transmitting email.
  • Format messages according to the Internet Message Format standard, RFC 5322

There are additional requirements for bulk email senders.

You can read Neil Kumaran’s post here and check out Google’s email sender guidelines and Yahoo’s email sender best practices to learn how to successfully send emails to personal Gmail and YahooMail accounts.

Understanding SPF, DKIM, and DMARC

Implementing SPF, DKIM, and DMARC protocols enhances email deliverability, safeguards sender reputation, and ensures that emails reach recipients’ inboxes securely.

If you are not familiar with SPF, DKIM, and DMARC, here’s an overview:

SPF

SPF (Sender Policy Framework) is a protocol that verifies sender authenticity by checking if an email originated from an authorized server.

It ensures the legitimacy of email senders by validating a sender’s identity through cross-referencing the IP address of the sending mail server with a predetermined list of authorized sending IP addresses contained within the DNS record.

SPF authentication process.

DNS records essentially act as a directory that maps domain names to their respective IP addresses and can include instructions on handling requests directed towards that domain.

By verifying the authenticity of the sender’s identity against authorized sending IP addresses listed in the DNS record for a domain, SPF helps to prevent email spoofing and enhanced deliverability by reducing the likelihood of emails being blacklisted or marked as spam.

Here are the steps involved in creating an SPF record for email authentication:

1. Gather Information: Collect the IP addresses of all servers authorized to send emails on behalf of your domain. This includes your own mail servers, third-party email service providers, and any other servers used for sending emails.

2. Identify Sending Domains: Make a list of all domains used to send emails, even if not currently active. This prevents domain spoofing attempts.

3. Create SPF Record Syntax:

    • Start with the version tag: v=spf1
    • Add authorized IP addresses: e.g. ip4:192.0.2.0
    • Include third-party senders: include:thirdparty.com
    • Specify SPF policy: -all (hard fail) or ~all (soft fail).

After following the above steps, your SPF record should look like the example shown below:

v=spf1 ip4:192.0.2.0 include:thirdparty.com -all

Note: SPF records should be under 255 characters and limited to no more than ten include statements.

4. Publish SPF Record to DNS: Access your DNS management console provided by your domain registrar or hosting provider, add a new TXT record with your domain’s hostname and the SPF record syntax, and save the changes.

5. Test SPF Record: Use SPF check tools (e.g. EasyDMARC’s SPF Record Checker) to check if the SPF record is present or not and ensure that all legitimate sending IP addresses are listed and correctly formatted.

EasyDMARC's SPF Record Checker
Lookup and validate SPF records using a tool like easyDMARC’s SPF checker.

DKIM

DKIM (DomainKeys Identified Mail) is an email authentication method that adds a digital signature to outgoing emails.

This signature is validated by the recipient’s mail server, ensuring the email’s integrity and authenticity. DKIM prevents email tampering and strengthens email deliverability by reducing the chance of emails being flagged as spam or phishing.

Diagram illustrating how DKIM works
DKIM verification process.

DKIM is like a digital signature for emails, a way for the sender (you) to prove they really sent the email and that it hasn’t been changed by anyone in between.

A DKIM Signature Header typically includes several elements represented by tag=value pairs.

Here’s an example that illustrates the essential components necessary for email authentication through DKIM:

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=dkim1; h=From:To:Subject:Date; bh=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX; b=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY

Explanation of each element:

  • v=1: Version of the DKIM specification being used.
  • a=rsa-sha256: The cryptographic algorithm used to generate the signature.
  • c=relaxed/relaxed: Canonicalization methods used for the header and body of the email.
  • d=example.com: The domain that owns the DKIM key pair.
  • s=dkim1: The DKIM selector, which indicates the specific key used for signing.
  • h=From:To:Subject:Date: List of header fields included in the signature.
  • bh=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX: The hash of the body of the email.
  • b=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY: The actual digital signature generated using the private key associated with the selector.

Here are the steps involved in creating a DKIM record:

1. Generate DKIM Keys: Use a DKIM key generator tool provided by your email service provider or a third-party service (see list below). This generates a public and private key pair.

2. Publish Public Key to DNS:

    • Log in to your DNS management console provided by your domain registrar or hosting provider.
    • Navigate to the DNS settings for your domain.
    • Add a new TXT record with the DKIM selector as the subdomain name and the public key as the record value. The selector is usually provided by your email service provider and is specific to your DKIM configuration.

Example DKIM record:

selector._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC2h9gFo3... (long string)"

3. Verify DKIM Record: After adding the DKIM record, verify its correctness using DNS lookup tools and ensure that the TXT record contains the correct DKIM selector and public key.

4. Test DKIM: Send test emails from your domain and verify that they pass DKIM authentication checks using email authentication testing tools.

Here are some tools you can use to generate DKIM keys:

DMARC

DMARC (Domain-based Message Authentication, Reporting, and Conformance) is a protocol that helps protect email domains from being used for phishing, spoofing, and other malicious activities, and builds on SPF and DKIM to provide additional email authentication and reporting capabilities.

DMARC helps to make sure that the emails you send are really from you. If someone tries to fake your email address, DMARC helps block those phony messages from reaching others, keeping your email reputation safe and sound.

Diagram illustrating how DMARC works.
How DMARC works.

DMARC:

  • Improves email deliverability by allowing senders to monitor and enforce email authentication policies.
  • Allows domain owners to specify a handling policy for emails that fail SPF and DKIM checks, enhancing transparency and security, and reducing spoofing and phishing attempts.
  • Allows domain owners to receive alerts when unauthorized parties misuse the domain for email spoofing, protecting their brand’s reputation.

To pass DMARC’s criteria, SPF and DKIM must be properly configured for the email’s From domain. The From domain must then match the authenticated domain by SPF or DKIM.

How to implement DMARC

1. Define DMARC Policy: Decide on the DMARC policy you want to enforce. DMARC offers 3 policy options:

    • None: Monitoring mode only, no actions are taken if an email fails DMARC.
    • Quarantine: Suspicious emails are sent to the spam/junk folder.
    • Reject: Suspicious emails are rejected outright.

2. Generate DMARC Record: Create a DMARC TXT record with your chosen policy. Use the following syntax:

_dmarc.example.com. IN TXT "v=DMARC1; p=none; rua=mailto:[email protected]; ruf=mailto:[email protected]"

    • Replace example.com with your domain.
    • v=DMARC1: Indicates the DMARC version.
    • p=none/quarantine/reject: Defines the policy.
    • rua: Specifies the email address to receive aggregate reports.
    • ruf: Specifies the email address to receive forensic reports.

3. Publish DMARC Record to DNS: Log in to your DNS provider’s dashboard.

    • Navigate to your domain’s DNS management section.
    • Add a new TXT record with the host _dmarc and the value as the DMARC record you generated.

4. Verify DMARC Record: Use DNS lookup tools to ensure the DMARC record is correctly published and propagated.

5. Monitor Reports: Regularly check the aggregate and forensic reports sent to the email addresses specified in the DMARC record. These reports provide insights into email authentication failures and help fine-tune your DMARC policy.

Notes:

  • Be very careful when creating a DMARC record, as any misconfiguration will negatively impact your email delivery. We recommend following these guidelines from Google when starting out with DMARC.
  • Make sure that SPF and DKIM are authenticating emails for at least 48 hours BEFORE enabling DMARC.

Here are some free tools you can use to create, verify and validate DMARC records:

  • DMARC Tools by dmarcian.
  • DMARC Record Lookup and Checker by EasyDMARC
  • DMARC Digests – If you set up a DMARC reporting address, using your personal or business address is not recommended, as your inbox will be flooded with unintelligible emails. Instead, consider signing up for a DMARC reporting tool to ensure that you have properly authenticated all the tools you use to send email.

Email Verification Examples

Now that we have defined what SPF, DKIM, and DMARC mean, let’s look at some actual examples of these protocols  in action, so you can better understand why your emails may or may not be reaching their intended recipients.

Emails Not Reaching Recipients

First up, let’s look at an obvious spam email sent to a Gmail address. This will help us understand how Gmail and other email providers automatically filter out junk email.

Here’s an email sent to my personal Gmail address that never even made it to my inbox. Gmail filtered it and sent it directly to my SPAM folder.

Example of SPAM email
Skin Tags? Is this a taxonomy for my physiognomy?

Let’s ignore the fact that this is an obvious spam email and look at the email header to see why Gmail’s automated tools detected and flagged it as spam.