stripe.com
The three core checks pass. What is missing is the transport and trust layer around them.
4 of 8 checks pass Β· 3 tools visible in DNS Β· nothing urgent
1 Β· Authentication and transport
SPF
PassValid, soft failAnything not on the list is accepted but marked. Google recommends ~all; with DMARC enforced it is as strong as -all.
v=spf1 ip4:198.2.180.60/32 ip4:13.111.2.227/32 include:spf1.stripe.com include:greenhouse-outbound-mail.stripe.com include:_spf.qualtrics.com ~all
DKIM
Pass4 keys foundSelectors google, s1, s2, mandrill publish a public key. 2 of them point at a vendor by CNAME.
google._domainkey, s1._domainkey, s2._domainkey, mandrill._domainkey
DMARC
PassEnforced (p=reject)Failing mail is rejected. This is the finish line.
v=DMARC1; p=reject; pct=100; fo=1; rua=mailto:dmarc-reports@stripe.com; ruf=mailto:dmarc-forensics@stripe.com;
MX
Pass5 hostsMore than one receiving server, so a single outage does not bounce mail.
10 aspmx.l.google.com 20 alt1.aspmx.l.google.com 30 alt2.aspmx.l.google.com 40 aspmx2.googlemail.com 50 aspmx3.googlemail.com
MTA-STS
ReviewNot publishedSending servers cannot tell that this domain requires TLS, so inbound mail can be downgraded to plain text by anyone on the path.
TLS-RPT
OptionalNot publishedNobody is told when TLS to this domain fails. Cheap to add once MTA-STS is in place.
BIMI
OptionalNot publishedDMARC is enforced, so this domain qualifies. Yahoo and Fastmail show the logo from the record alone; Gmail and Apple Mail also need a paid VMC or CMC certificate.
DNSSEC
OptionalNot signedOptional. Signing the zone protects every record in this report from tampering.
2 Β· Tools visible in DNS
| Layer | Tool | Evidence |
|---|---|---|
| Mailbox | Google Workspace | MX aspmx.l.google.com |
| Marketing | Mailchimp | DKIM mandrill._domainkey |
| Transactional | SendGrid | DKIM s1._domainkey β s1.domainkey.u2680008.wl009.sendgrid.net |
Only tools that leave a DNS trace appear. A shared DKIM selector is attributed only when its CNAME target names the vendor.
3 Β· Sender requirements (Google, Yahoo, Microsoft)
| Requirement | Applies to | Status | Note |
|---|---|---|---|
| Authenticate with SPF or DKIM | GoogleYahooMicrosoft | Verified | At least one method is in place. |
| Bulk senders: both SPF and DKIM | GoogleYahoo | Verified | Both are present. |
| Publish a DMARC record (p=none is enough) | GoogleYahooMicrosoft | Verified | Policy is p=reject. |
| From: domain aligns with SPF or DKIM | GoogleYahooMicrosoft | Not checkable here | Needs a real message. The Send-a-Test report will check this. |
| Valid forward and reverse DNS for sending IPs | GoogleYahoo | Not checkable here | Depends on the sending server, not the domain. |
| Encrypt in transit (TLS) | GoogleYahoo | Not checkable here | Outbound TLS depends on your sending tool; MTA-STS would cover inbound. |
| One-click unsubscribe (RFC 8058) for marketing mail | GoogleYahoo | Not checkable here | A message header, not a DNS record. Microsoft recommends it rather than requiring it. |
| Spam complaint rate under 0.1% (0.3% is the hard limit) | GoogleYahoo | Not checkable here | Read it in Google Postmaster Tools and Yahoo Sender Hub. Googleβs target is 0.1%; 0.3% is where enforcement starts. |
4 Β· What to fix, in order
-
P3
Publish MTA-STS (record and policy file)
Tells sending servers to require TLS to your MX hosts, which prevents downgrade attacks. The TXT record alone does nothing: the policy file must be served over HTTPS at mta-sts.stripe.com. Start in testing mode, watch TLS-RPT, then switch to enforce.
Publish at_mta-sts.stripe.com and https://mta-sts.stripe.com/.well-known/mta-sts.txtTXT v=STSv1; id=2026100401 mta-sts.txt: version: STSv1 mode: testing mx: aspmx.l.google.com mx: alt1.aspmx.l.google.com mx: alt2.aspmx.l.google.com mx: aspmx2.googlemail.com mx: aspmx3.googlemail.com max_age: 86400
-
P3
Publish TLS-RPT
You get a report when TLS delivery to your domain fails; this is what notices a downgrade that MTA-STS is meant to prevent. The address must exist.
Publish at_smtp._tls.stripe.comv=TLSRPTv1; rua=mailto:tls-rpt@stripe.com
-
P3
Add a BIMI logo record (optional)
DMARC already qualifies. The logo must be SVG Tiny PS, square, served over HTTPS. Yahoo and Fastmail show it from the record alone; Gmail and Apple Mail also need a paid VMC or CMC certificate, and a VMC needs a registered trademark. Skip this unless the certificate is worth it to you.
Publish atdefault._bimi.stripe.comv=BIMI1; l=https://stripe.com/.well-known/bimi.svg;
-
P3
Sign the zone with DNSSEC
Protects every record in this report from being swapped in transit. Two steps: enable signing at your DNS host (one switch at Cloudflare and most others), then add the DS record it gives you at your registrar.
Publish atstripe.com
Appendix Β· Raw DNS answers
| Name | Type | Answer |
|---|---|---|
| stripe.com | MX | 10 aspmx.l.google.com 20 alt1.aspmx.l.google.com 30 alt2.aspmx.l.google.com 40 aspmx2.googlemail.com 50 aspmx3.googlemail.com |
| stripe.com | A | 198.137.150.161 198.202.176.161 |
| stripe.com | TXT | v=spf1 ip4:198.2.180.60/32 ip4:13.111.2.227/32 include:spf1.stripe.com include:greenhouse-outbound-mail.stripe.com include:_spf.qualtrics.com ~all (+ 38 other TXT records: site-verification tokens and the like, omitted) |
| _dmarc.stripe.com | TXT | v=DMARC1; p=reject; pct=100; fo=1; rua=mailto:dmarc-reports@stripe.com; ruf=mailto:dmarc-forensics@stripe.com; |
| <selector>._domainkey.stripe.com | TXT | google β key published s1 β CNAME s1.domainkey.u2680008.wl009.sendgrid.net s2 β CNAME s2.domainkey.u2680008.wl009.sendgrid.net mandrill β key published |
| _mta-sts.stripe.com | TXT | no record |
| _smtp._tls.stripe.com | TXT | no record |
| default._bimi.stripe.com | TXT | no record |