File uploads
#File uploads
The file upload field lets your customers attach files when they submit a form — photos, documents, receipts, resumes, or any other file you need to collect. Uploaded files are stored securely and linked to the submission so you can access them anytime.
Plan requirement: File upload fields are available on Starter, Growth, and Pro plans. Free plan users cannot add file upload fields to their forms.
#How it works
- Add a File Upload field to your form in the form builder.
- Optionally restrict which file types customers can upload (see below).
- When a customer submits the form, their files are uploaded to secure cloud storage (AWS S3).
- The file URLs are saved as part of the submission data.
- You can view and download uploaded files from the submission detail page.
#Supported file types
Form Builder supports a wide range of file types across four categories:
Images
| Extension | Format |
|---|---|
| .jpg | JPEG image |
| .jpeg | JPEG image |
| .png | PNG image |
| .gif | GIF image |
| .webp | WebP image |
| .svg | SVG vector image |
| .tiff | TIFF image |
Documents
| Extension | Format |
|---|---|
| PDF document | |
| .doc | Microsoft Word (legacy) |
| .docx | Microsoft Word |
| .xls | Microsoft Excel (legacy) |
| .xlsx | Microsoft Excel |
| .csv | Comma-separated values |
| .ppt | Microsoft PowerPoint (legacy) |
| .pptx | Microsoft PowerPoint |
| .txt | Plain text |
Archives
| Extension | Format |
|---|---|
| .zip | ZIP archive |
| .rar | RAR archive |
| .tar | TAR archive |
Media
| Extension | Format |
|---|---|
| .mp3 | MP3 audio |
| .mp4 | MP4 video |
| .mov | QuickTime video |
| .mkv | Matroska video |
| .webm | WebM video |
That's 30 file types total, covering the most common formats your customers are likely to need.
#File type restrictions per field
You don't have to accept every file type on every upload field. When configuring a file upload field in the form builder, you can restrict which types are allowed.
For example:
- A "Profile photo" field could be limited to images only (.jpg, .png, .webp).
- A "Resume" field could accept just documents (.pdf, .doc, .docx).
- A "Supporting files" field could accept everything.
When a customer tries to upload a file type that isn't allowed, they'll see an error message and the file won't be accepted.
#Size limits by plan
Each plan has a maximum file size and monthly storage quota:
| Plan | File uploads allowed | Monthly storage quota |
|---|---|---|
| Free | No | — |
| Starter | Yes | 10 MB per month |
| Growth | Yes | 20 MB per month |
| Pro | Yes | 100 MB per month |
The monthly storage quota tracks the total size of all files uploaded across all your forms during the current calendar month. When you reach your quota, file uploads are blocked until the next month (or until you upgrade your plan).
Example: On the Growth plan, if customers upload 15 MB of files in the first two weeks of the month, you have 5 MB remaining for the rest of the month.
#Storage quotas and monthly tracking
Storage usage is tracked per calendar month and resets automatically on the first of each month. You can see your current storage usage on the app dashboard, where a progress bar shows how much of your monthly quota you've used.
The app will warn you when you approach your limits:
- 80% used — A warning lets you know you're getting close.
- 90% used — A more urgent alert suggests upgrading to avoid disruption.
If your storage quota is reached, customers will see an error when trying to upload files. The rest of the form will still work — only the file upload is blocked.
#Where files are stored
All files uploaded through form submissions are stored on Amazon Web Services S3 (AWS S3), a secure and reliable cloud storage service. Files are organized by your shop name and the month of upload.
Each file gets a unique name to prevent conflicts, and filenames are sanitized to remove special characters. Files are served with long-term caching for fast loading when you or your team views them.
Files uploaded through the form builder itself (like background images or field images) are stored on Shopify's CDN, separate from submission uploads.
#Tips for file uploads
- Set type restrictions. If you only need images, restrict the field to image types. This prevents customers from accidentally uploading the wrong file and keeps your submissions organized.
- Monitor your storage. Check the dashboard regularly to see how much storage you've used this month, especially if you run forms that collect large files like videos or high-resolution images.
- Plan for peak months. If you know a busy period is coming (like a holiday sale with warranty claim forms), make sure your plan has enough storage to handle the increased volume.
- Upgrade if needed. If you consistently hit your storage limit before the month is over, it's time to move up to a higher plan with more headroom.