File uploads failing in a form — silently, with a vague error, or only for certain file types or sizes — usually comes down to a server-side limit (file size, upload permissions, allowed file types) rather than anything wrong with the form’s own configuration, which is why the fix often lives outside the form plugin entirely.
Try uploading a small, simple file first to isolate the variable
Attempt the upload with a small, common file type (a small JPG or PDF) rather than whatever specific file originally failed. Success with a small, simple file but failure with the original narrows this to a size or file-type restriction rather than a completely broken upload feature.
File upload failure in forms
File uploads failing by size or type — the actual server limit found, not just the form's own setting.
- Full backup taken before we start
- If we can’t fix it, you get your money back
- We never ask for your own password
This or something else?
| File uploads fail in your form, either for specific files or entirely | This fix covers it |
| The form itself isn’t submitting at all, with or without a file attached | A different, broader submission failure — worth describing what happens without a file attached |
| You want to recover files or data from failed past submissions | Form entry export & data recovery, a related, follow-up concern |
| The issue is specifically a payment form’s file upload (like a receipt), tied to payment processing | Payment form integration errors, if payment is also part of the failure |
What you are seeing
- Uploads failing for files above a certain size
- Uploads failing for specific file types while others succeed
- A vague or generic error with no clear indication of what actually went wrong
- The issue possibly only affecting certain hosting environments or specific server configurations
Common causes
- A server-level file size limit lower than what the form plugin itself allows
- File type restrictions set by the server or a security plugin, blocking otherwise legitimate uploads
- Insufficient file or folder permissions preventing the server from writing the uploaded file
- A timeout occurring during upload for larger files on a slower connection or restrictive server configuration
- The upload destination folder hitting a disk storage quota on shared hosting, silently rejecting new files
What we do
- Reproduce the failure with both small and larger test files
- Check server-level upload limits (file size, allowed types) against the form’s own configuration
- Verify file and folder permissions allow the server to write uploads correctly
- Adjust server or form configuration to align limits consistently
- Test uploads across a range of file sizes and types to confirm the fix
- Verify successfully uploaded files are correctly attached to their form entries
What is included
- The specific cause of the upload failure identified and corrected
- Consistent limits aligned between server and form configuration
- Verified successful uploads across a range of file sizes and types
- The pre-fix backup, kept for 30 days
Not included
- Increasing server-level limits beyond what your hosting plan actually allows — that may require a hosting upgrade, outside a configuration fix’s scope
- Broader form submission issues unrelated to file uploads specifically
- Payment processing issues, a separate, related fix if uploads are tied to a payment flow
- Ongoing monitoring as hosting configuration changes
Questions about this fix
Why would this be a server issue rather than something in the form plugin?
Form plugins generally respect server-level limits (like PHP's maximum upload size) rather than overriding them, so even a form correctly configured to allow large files will still fail if the underlying server rejects the upload first.
Can you just increase my file size limit unconditionally?
Only up to what your hosting plan and server configuration genuinely support — a limit set higher than what the server can actually handle wouldn't meaningfully fix anything, and might require a hosting-level change or upgrade instead.
Why do some file types fail and not others?
Security plugins or server configuration sometimes block specific file extensions considered risky (like executable files), which is often a deliberate protective measure rather than an oversight, though it's worth confirming the blocked types are ones you don't actually need to accept.
Will this fix work the same way on any hosting provider?
The specific limits and how to adjust them vary by hosting provider, so the exact fix is tailored to your actual hosting environment rather than a one-size-fits-all change.
What if the file that's failing is unusually large, beyond typical limits?
We'd flag whether raising limits to accommodate it is realistic on your current hosting, or whether an alternative approach (like a direct cloud upload link) might be more appropriate for very large files.
Related fixes
If this is the second time this year
A bad update breaking the site is a symptom of updates not being tested first. Care plans run every update on a staging clone before it reaches your live site, which is the actual fix for this happening again.
Your access, your rules
Create a separate admin account for us and delete it when we are done. For anything else, we get in touch and agree a method — never a form field on this site, never by reply to an email.
We back up first, always
Before anything is touched we take a full backup and keep it for 30 days. If a fix goes wrong, we put the site back exactly as it was.
If it is not what you bought
If the problem turns out smaller than what you ordered, we refund the difference. If it is bigger, we stop and send a quote before doing any extra work.
If we cannot fix it
You get back what we received. Diagnosis is on us — you only pay when the problem is actually solved. The payment processor takes its fee before the money reaches us, so we never hold it and it is not ours to return. That is true here as everywhere else.
If it comes back
Reply within seven days of delivery and we put it back on the bench at no cost. The fix is not finished until it holds.
What we are responsible for
If something goes wrong with a fix, our responsibility is limited to what you paid for it. We take a full backup first so mistakes can be undone, and we tell you before doing anything outside what you bought.