3-digit reply code Temporary

SMTP error 447

Delivery time expired — a misread of 4.4.7, not a real code.

Updated Jul 1, 2026

The short answer

SMTP 447 is not a real 3-digit reply code. It is the enhanced status 4.4.7 ("delivery time expired") with the dots dropped, usually seen in Exchange or Microsoft 365 NDRs like "550 4.4.7 Queue.Expired; message expired." Your server retried for hours (Microsoft 365 retries for about 24 hours) but never got through. Fix the underlying transient failure.

Quick fix

Fix the underlying transient failure: recipient MX/DNS, connectivity, or a backed-up queue.

4 - Temporary. Safe to retry. The message is not lost and most servers retry automatically.

What it means

RFC 5321 defines no 447 reply code. Its transient codes are 421, 450, 451, 452, and 455. What people read as "447" is the enhanced status 4.4.7 with the dots removed. Written out it is class.subject.detail: 4 (persistent transient), .4 (network and routing), .7 (delivery time expired). So "400 4.4.7 message delayed" or "550 4.4.7 Queue.Expired" carries its meaning in the 4.4.7, not the 447. It means your sending server kept retrying because each attempt hit a temporary failure, and the message eventually sat in the queue past its expiration and was dropped.

Common causes

Recipient MX or DNS problem

A missing, wrong, or unresolvable MX record means your server can never connect, so every attempt fails until the queue expires.

Recipient server unavailable

If the remote host was offline, full, greylisting, or rate-limiting your IP, each attempt returns a transient error until the message ages out.

Backed-up or throttled queue on your side

A stalled queue or Exchange back pressure (low disk or memory freezing outbound mail) can also let a message expire.

How to fix it

  1. Read the full NDR or queue log

    The real problem (DNS failure, connection timeout, recipient 4xx throttling) is usually quoted next to the 4.4.7. RFC 3463 says the original error should be preferred over this one when available.

  2. Verify the recipient MX and DNS

    A missing or unresolvable MX means your server never connects.

    nslookup -type=mx recipientdomain.com
    dig MX recipientdomain.com
  3. Check the recipient server availability

    If it was offline, full, or rate-limiting you, every attempt returned a transient error until the queue expired. Retry once the remote host is healthy.

  4. For Microsoft 365 senders

    Confirm your own MX record, ensure your SPF record lists all sending sources so receivers do not soft-reject, and test with the Microsoft Remote Connectivity Analyzer outbound SMTP test.

  5. On self-hosted Exchange

    Check for a backed-up queue or back pressure (low disk or memory), restart the transport service, and review Queue Viewer. Lengthening the expiration timeout only masks the real failure, so fix the DNS and connectivity items first.

Paired code

A real bounce often shows both a 3-digit code and an enhanced code together. This one commonly pairs with:

Common questions

Is 447 a valid SMTP reply code?

No. RFC 5321 defines no 447. It is the enhanced status 4.4.7 ("delivery time expired") written without the dots, usually inside an Exchange or Microsoft 365 NDR.

Does 447 mean I sent to too many recipients?

No. A recipient-count limit returns a different code (usually 452 4.5.3). Do not troubleshoot 4.4.7 by batching recipients.

Why does Microsoft 365 take so long to report 4.4.7?

It retries delivery for about 24 hours before giving up, so the NDR arrives only after the queue expires.

Related codes

Ready when you are

Most rejections come back to sender reputation.

Blocklists, auth failures, and policy blocks are what warmup prevents. Warm up your domain so your mail is trusted before you hit send.

7-day free trialNo credit cardCancel anytime