contact_mailContact Form 7cloud_offupload errorwarningvalidationdescriptioncontact-form-7file_uploadfile sizeattach_fileattachmentlabelCommonwarningModerate

Contact Form 7: Attachment size exceeds limit.

The form rejects a file when its size is larger than the permitted limit. CF7 checks the size of each uploaded file against the limit defined in the form tag and against its internal total‑attachment cap.

If the file size exceeds the limit, CF7 returns a validation message and stops the submission. The error appears before the email is sent.

PHP settings also influence the process. The directives upload_max_filesize and post_max_size define the maximum size for a single file and the entire request. When these values are lower than the uploaded file, PHP aborts the upload and CF7 reports the same error.

The web server may impose its own ceiling. NGINX uses client_max_body_size and Apache uses LimitRequestBody. Requests larger than these limits receive a 413 response, which CF7 interprets as an attachment size problem.

Even after a successful upload, the mail transport can reject the message if the total attachment size exceeds the provider’s cap. Many SMTP services limit attachments to 10‑25 MB. Security plugins or ModSecurity rules that block large POST bodies also trigger the same warning.

Symptoms

[dashicons-warning]
CF7 validation message
The form shows “Attachment size exceeds limit.”
[dashicons-no]
Form does not submit
Clicking submit produces no response and no email is sent.
[dashicons-admin-site]
Browser shows 413 error
Network tab displays a Payload Too Large status.

Common Causes

CF7 tag limit
The [file] tag includes a limit parameter smaller than the uploaded file.
PHP upload limits
upload_max_filesize or post_max_size in php.ini are lower than the file size.
Web‑server body size limit
NGINX client_max_body_size or Apache LimitRequestBody blocks large requests.
Mail transport cap
SMTP provider rejects messages whose attachments exceed its maximum size.
Security plugin or ModSecurity rule
A rule flags large uploads as potential attacks and stops the request.
Need this fixed right now?

Don't waste your day debugging. Our experts can Fix your issues in under 2 hours.*

Success Rate

100% Guaranteed

Starting from

$35 /hour
99+

Trusted by Business Owners

“I spent 3 days trying to fix the Elementor loading loop. These guys fixed it in 20 minutes. Lifesavers!”

— Sarah J., Web Designer

Related Issues

contact_mail
Contact Form 7: REST API request failed: 503 Service Unavailable
A 503 Service Unavailable response stops Contact Form 7 from sending data...
apiREST APIerror503descriptioncontact-form-7
contact_mail
Contact Form 7: REST API request failed: 429 Too Many Requests

The form tries to send data through the WordPress REST API. The...

apiREST APIerrorerrorsecurityfirewalldescriptioncontact-form-7settingsserver_configuration
contact_mail
Contact Form 7: REST API request failed: 401 Unauthorized

The form tries to send data via the WordPress REST API. The...

apiREST APIadmin_panel_settingspermissionsdescriptioncontact-form-7lock401
contact_mail
Contact Form 7: File upload error: temporary directory missing

The error appears when Contact Form 7 cannot locate a writable temporary...

codePHPcloud_offupload erroradmin_panel_settingspermissionsdescriptiontemporary filedescriptioncontact-form-7
contact_mail
Contact Form 7: Mail (2) sending failed: PHP mail() function disabled

Contact Form 7 reports a failure for Mail (2) when the PHP...

codePHPerrorerrordescriptioncontact-form-7mailMailsettingsserver_configuration
contact_mail
Contact Form 7: Mail (2) sending failed: SSL certificate verification failed

Contact Form 7 reports a failure when trying to send the secondary...

errorerrorlocksslcodecURLdescriptioncontact-form-7