File Upload Fields are used to provide users the ability to attach files to their form submissions, such as photos, PDFs or other documents. You may only upload up to 2 GB(2048 MB) of data per form submission (not per file upload field). This limit cannot be increased as we use browser-based file uploads that will time out with larger files. We also support the ability to add multiple files per upload field.
It's important to note that we updated our File Upload field during April, 2024. by default, any new Form that's being created after that will have access to this field, but any older Form can also toggle this option by selecting your Forms settings in the top right as pictured below.
Note If you don't see this option, it's possible you're using an older version of our Form builder and can follow the steps in this article to update to our most recent form version.
File Upload Field Overview
To add a file upload field to your form, click on File Upload and drag it into your form.
Once you've added your field, you can click on the field and make adjustments based on your needs from the general and field specific settings on the left. Under the field-specific section, it's possible to allow for multiple file uploads and you can adjust the maximum number for up to 20 files per field.
Under the same section, you can also adjust the file size and you can delete or add file extensions to allow whatever file types you like. If you only wanted to allow people to upload image files, you would want to allow just these extensions: jpg, jpeg, gif, png,bmp, tif, psd. If you know your form users will need to upload a zip file: allow a zip extension. Edit the allowed extensions under the "File Types" area in the File Upload field editor.
It's important to note you can configure the file size for a maximum of up to 2GB(2048 MB) and this field is only capable of uploading one file at a time. If you need the ability to add multiple files, we'd recommend you add separate fields for the total number of file uploads, but note that each form submission is limited to a total submission size of 2 GB (2048 MB).
Please note: You can also adjust the limit on the number of File uploads per submission by navigating to the Form Extras section on the top right, for a maximum of up to 50 file uploads per submission.
This is what a file upload field will look like on your form with the listed max file size that would've been configured on the field (although it will appear a bit differently in different browsers or devices and the colors will depend on your theme).
File Name Settings
By default, the Field ID associated with the File Upload field will be appended to the file names uploaded. You can adjust this setting within your form's General Settings page under "Data".
File Uploads and Notification Emails
In a form's settings, under Settings > E-mails & Actions > Notification E-mails, you can specify whether you'd like to receive the file uploads as attachments in notification emails, or if you'd only like to receive them as attachments and specify the size, anything from 1MB - 14 MB. This is due to a limit by our email provider. If you instead choose not to receive the files as attachments or they are over the 14 MB your emails will contain a link to where you can view or download the file.
How to Replace or Delete Uploaded Files
If you need to replace or delete a file that was uploading through one of your forms, browse to the Submissions tab for that form and click on the date of the submission of the file you want to modify.
Then, click on the "Edit" icon.
Once you're on the edit page for that file, you can click on the link that says "Remove current file" in order to replace or remove that uploaded file.
Click "Delete file" when the warning message pops up to permanently remove the file.
Now, you can either click save or upload another file to the submission.
Note: If you choose to encrypt your data, the file uploads you collect will not be encrypted. Therefore, if you plan to collect sensitive documents, you may opt to use a 3rd party solution like our Box integration, for more secure file management. For more information on Box security click here. This option requires adding outside code to your Form and may not be fully supported or comply with other Formstack Form Settings.
Account Storage
Each form submission is limited to a total submission size of 2 GB (2048 MB). The amount of total storage space you have for file uploads depends on the plan you're on.
See how much space you have left in your account by clicking your name on the top right and then choosing "Account Usage"
If you run out of account storage space, file upload fields on forms will be disabled, however, the form itself will remain active just without any file uploads being able to be captured on submissions. To extend your storage space, try integrating Box, Dropbox, Google Drive , Microsoft OneDrive , or Amazon S3 with your forms. Uploaded files will be automatically transferred to your off-site accounts and a link to the file will be available within the submission data.
It’s important to note that you are only able to upload a maximum of 500MB of data per submission and a maximum of 50 file upload fields per form when using a file upload integration
FAQ
Are there any integrations that don't support multi-file upload?
The following integrations are disallowed at this time for multi-file upload: Formstack Documents, Zendesk, Google Contacts, HelpSpot.
How does multi-file work with webhooks?
Our default webhook style return structure looks like this for a single file:
{
"FormID": "0000000",
"UniqueID": "123456789",
"Short Answer": "test",
"File": "https://subdomain.formstack.com/admin/download/file/14967879999"
}
If you choose to turn on multi file for a file upload field:
{
"FormID": "00000000",
"UniqueID": "123456789",
"Short Answer": "test",
"File": "https://subdomain.formstack.com/admin/download/file/14967879999/0 https://subdomain.formstack.com/admin/download/file/14967879999/1"
}
There are two urls included in the return value for the file
If you turn on "Standardize field value type to be consistent"
the two above examples will look like these:
{
"FormID": "0000000",
"UniqueID": "123456789",
"Short Answer": "test",
"File": [
"https://subdomain.formstack.com/admin/download/file/14967879999"
]
}
{
"FormID": "00000000",
"UniqueID": "123456789",
"Short Answer": "test",
"File": [
"https://subdomain.formstack.com/admin/download/file/14967879999/0",
"https://subdomain.formstack.com/admin/download/file/14967879999/1"
]
}
Where the File field now always returns an array of URLs