5.3.4
SMTPERRORNotableMail SystemHIGH confidence

Message too big for system

Production Risk

Low — affects only unusually large messages.

What this means

The message is too large to be processed by the receiving mail system. Unlike 5.2.3 which reflects an administrative limit, 5.3.4 indicates the message exceeds a hard system capability boundary.

Why it happens
  1. 1The message exceeds the MTA's absolute maximum processable size.
  2. 2A transient resource constraint on the mail system is preventing processing of large messages.
  3. 3The message queue or spool storage is insufficient to hold the message.
How to reproduce

Sending an extremely large message that the receiving mail system cannot physically process or store.

trigger — this will error
trigger — this will error
DATA
# After transmitting large message body:
552 5.3.4 Message too large

expected output

552 5.3.4 ...

Fix

Reduce message size before sending

WHEN When sending messages with large payloads

Reduce message size before sending
# Strip and re-attach large files via external storage
# Maximum recommended email attachment size: 10 MB
# For larger files, use a pre-signed URL:
const url = await s3.getSignedUrl('getObject', { Bucket, Key, Expires: 86400 });
// Include url in email body instead of attachment

Why this works

Moving large payloads out of the message body and referencing them via URLs is the standard approach for large content delivery.

What not to do

Retry the same message unchanged

System size limits are hard boundaries; the message must be reduced in size.

Sources
Official documentation ↗

RFC 3463 — Enhanced Mail System Status Codes

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All SMTP errors