scribase
Fix guide

Resend domain verification failed. Here is what to check.

Resend marks a domain failed when it cannot detect the required DNS records within 72 hours of you adding them. Almost every case is one of: records at the wrong host, a registrar that strips the trailing dot, or a CNAME where a TXT record was expected.

Last checked October 12, 2026.

What Resend expects at the DNS host

  • An SPF record (added as a TXT, or as a CNAME for domains created after August 2026) authorizing Resend to send on the domain's behalf.
  • A DKIM record (TXT) so receiving servers can verify the message was not altered in transit.
  • An MX record that Resend generates for the domain, used for bounce and complaint feedback, not for receiving regular mail.

Sources: Resend: Manage domains

What each status actually means

Resend domain status values
StatusMeaning
not_startedThe domain was added but verification has not been attempted yet.
pendingResend is actively checking for the records.
verifiedEvery required record was found; the domain can send.
partially_verifiedOne capability (sending or receiving) is verified while the other is still pending, or one of two sending CNAMEs is verified.
partially_failedThe domain is verified but one feature is not.
failedThe records were not detected within 72 hours.
temporary_failureA previously verified domain stopped resolving its records; Resend rechecks for 72 hours before marking it failed.

Sources: Resend: Manage domains

Fixing a failed verification

  1. Step 1

    Re-read the record exactly as Resend shows it

    Compare the host/name field character for character against what is in your DNS provider. A record added at @ instead of the subdomain Resend asked for, or vice versa, is the most common mismatch.

  2. Step 2

    Check for a registrar that rewrites or truncates TXT values

    Some registrars split long TXT records or require quotes; if the value looks truncated in a DNS lookup tool, that is the registrar, not Resend.

  3. Step 3

    Re-trigger verification instead of waiting out a stale check

    Once the records resolve correctly via a public DNS lookup, verifying again in the dashboard (or via the API) does not need another full 72-hour wait.

Sources: Resend: Manage domains

Scribase Mail

Scribase Mail answers the Resend REST API, including POST /domains/:id/verify, so a resend SDK integration points at a new base URL and key without a rewrite, if a clean switch is ever the simpler fix for a domain that will not cooperate.

Sources: Scribase Mail

FAQ

Questions people ask

How long does Resend domain verification take?

Verification is checked continuously once records are in place; Resend marks a domain failed only if it cannot detect the records within 72 hours.

What does partially_verified mean?

One capability (usually sending) is verified while another (such as receiving, or a second sending CNAME) is still pending.

My domain was verified and now shows temporary_failure. Why?

A previously verified domain stopped resolving one of its required records (often after a DNS change elsewhere). Resend rechecks for 72 hours before marking it failed again.