Last reviewed:
Translated from German; if the versions differ, the German version applies.
Deliverability: will the newsletter arrive?
An email can be technically sent and still never be read – because it lands in the spam folder or is rejected. Large mailbox providers decide this on the basis of many signals. Senders can control two of them themselves: whether the email demonstrably comes from them and whether the recipients want it.
Three checks, briefly explained
| Method | checks | where it is | Standard |
|---|---|---|---|
| SPF (Sender Policy Framework) | Is this server allowed to send emails for this domain? | TXT record in the DNS of the sender domain with the list of permitted servers | RFC 7208 |
| DKIM (DomainKeys Identified Mail) | Has the email remained unchanged in transit, and does a domain vouch for it with its signature? | digital signature in the email header; public key in the DNS | RFC 6376 |
| DMARC | Does the visible sender address (From) match a passed SPF or DKIM check – and what should the recipient do if not? | TXT record _dmarc. in the DNS | RFC 9989 (May 2026, replaces RFC 7489 and RFC 9091) |
DMARC policies: p=none (no instruction, only observe), p=quarantine (suspicious, e.g. into the spam folder) and p=reject (reject). With reports (rua=) you find out who is sending emails in your name – including whether your newsletter platform is set up correctly. The former percentage switch pct has been dropped in the current version (RFC 9989); it is replaced by the test mode t=y or t=n. In guides based on the older version RFC 7489 you will still find pct. How the reports are structured is described in the companion documents RFC 9990 (aggregate reports) and RFC 9991 (failure reports).
Creating and checking an SPF record
An SPF record is a TXT record in the DNS of the sender domain. It always begins with v=spf1; this is followed by building blocks that describe the permitted senders and, at the end, a rule for all other servers.
| Building block | Meaning |
|---|---|
ip4:192.0.2.10, ip6:2001:db8::/32 | a single address or a whole network may send |
a, mx | the servers that the domain’s A or AAAA record (a) or its MX record (mx) points to may send |
include:_spf.example.net | adopts the permitted servers of another domain – typically for the sending platform that sends your newsletter |
-all | all other servers are not authorised (result “fail”) |
~all | all others are “probably not authorised” (result “softfail”, a weaker statement) |
An example from RFC 7208 itself is v=spf1 ip4:192.0.2.0/24 mx -all: the network 192.0.2.0/24 and the domain’s mail servers may send, nobody else. The addresses and example.net above are example values; what your sending platform asks you to enter is in its instructions.
Five checkpoints according to RFC 7208:
- Only one record per domain. If the recipient finds more than one record with
v=spf1, the result is an error (“permerror”, Section 4.5). A new sending platform therefore goes into the existing record, not into a second one. - No more than ten DNS lookups.
include,a,mx,ptr,existsandredirecttrigger lookups; more than ten also lead to “permerror” (Section 4.6.4).ip4,ip6andalldo not count. Anincludecounts together with everything in the included record. In addition, checkers should allow no more than two lookups without a result (“void lookups”), and anmxmay trigger no more than ten address lookups (also Section 4.6.4). - No
ptr. According to RFC 7208, this building block should no longer be published (Section 5.5). - A clear ending. If you want recipients to be able to recognise unauthorised senders unambiguously, the record must end with
-all(Section 2.1). Without such an ending, no definitive statement is possible. - SPF alone is not enough for DMARC. SPF checks the sender in the envelope of the email (“MAIL FROM”) and the name of the sending server (“HELO”), not the visible sender line. DMARC additionally requires this domain to match the visible sender address (alignment, see the table above).
You can put the record together with the SPF builder: it counts the DNS lookups of the building blocks you enter, but does not check anything live. Whether the record has been published correctly is shown by the DMARC reports or your DNS provider.
What the large mailbox providers require
| Provider | applies to | Requirements (extract) | since |
|---|---|---|---|
| Gmail | all senders to Gmail accounts; stricter rules from 5,000 messages per day | all: SPF or DKIM; from 5,000 per day: SPF, DKIM, DMARC, one-click unsubscribe; spam rate in Postmaster Tools below 0.3% (recommended: below 0.1%) | both 1 February 2024 |
| Yahoo | bulk senders (Yahoo does not give a fixed number) | SPF and DKIM, DMARC at least p=none, From domain aligned with SPF or DKIM; a working List-Unsubscribe header (one-click method according to RFC 8058 highly recommended); honour unsubscribes within 2 days; spam rate below 0.3% | February 2024 |
| Outlook.com (Microsoft) | domains sending more than 5,000 emails per day to Outlook.com accounts | pass SPF and DKIM, DMARC at least p=none (recommended p=reject), aligned with SPF or DKIM; otherwise junk folder; if the issues remain, Microsoft may reject the emails (error 550 5.7.515) | 5 May 2025 |
Even those who send less should set up SPF, DKIM and DMARC: Gmail requires at least SPF or DKIM from all senders, and Microsoft recommends all three methods to all senders. According to Google, authentication protects recipients against spoofing and phishing and the sender against identity theft.
One-click unsubscribe
RFC 8058 describes how an email header (List-Unsubscribe and List-Unsubscribe-Post) signals that recipients can unsubscribe with a single click – without a web page and without a confirmation step. The email program then shows, for example, an “Unsubscribe” link next to the sender. This does not replace the unsubscribe link in the body of the email.
Common reasons for ending up in the spam folder
- Sender domain without SPF/DKIM/DMARC, or sending via a service that is not listed in the SPF record.
- Bought or old address lists: many bounces and spam reports.
- Unsubscribing hidden or slow – recipients then click “Spam”.
- Suddenly sharply rising sending volumes: Google gives the example that even an immediate doubling can lead to rate limiting or a worse reputation.
Tool
You can put together a suitable DMARC record with our DMARC builder and an SPF record with the SPF builder – both run in your browser and explain every option (Tools).