Decide what the upload is for

Start with one concrete job. A support form might need a photo and an order reference. A custom print enquiry might need artwork, a quantity and a deadline. A stockist application might need a document and a business email.

Perfect Forms collects these files as form responses. A response does not automatically attach artwork to a cart item, change an order or take payment. Include an order or enquiry reference when your team needs to connect it to another record.

For a custom order enquiry, this is a useful starting point:

FieldTypeWhy ask?
Name and emailShort text + EmailKnow who to contact about the file.
Product or order referenceShort textConnect the request to the right item.
What would you like made?Long textCapture dimensions, placement and other instructions.
ArtworkFile uploadCollect a supported image or document.
QuantityNumberUnderstand the size of the enquiry.
Needed byDateReview the requested deadline before committing.

Choose formats and limits that match the job

Perfect Forms supports JPG, JPEG, PNG, GIF and WebP images, plus PDF, TXT, CSV, DOCX and XLSX documents. A File upload field can accept Images, Documents, or Images and documents.

  • Per field: choose between one and five files.
  • Per file: set a limit from 1 to 20 MB.
  • Per response: up to ten files and 50 MB in total across upload fields.
  • Default: one file, up to 10 MB, accepting supported images and documents.

For a damage report, allowing a few images is often enough. For a print enquiry, ask for a PDF or supported image and explain the required dimensions in the help text. ZIP, PSD, AI and SVG files are not supported upload formats; arrange a separate handoff if your production workflow needs those originals.

Do not ask for “any file” if your team can only process a few formats. The customer should know what will be accepted before opening their file picker.

Add the upload field and publish

  1. Open a form in Perfect Forms and choose Add field → File upload.
  2. Give it a precise label, such as “Photo of the item” or “Artwork for your enquiry”. Add help text explaining what the file should show.
  3. Choose the accepted file group, file count and size limit. Make the field required only when you cannot process the request without it.
  4. Check the form in the mobile preview, save, and publish.
  5. Use Add to theme on the detail page and enter the Form ID in a Perfect Forms Form app block. Save the theme.

File uploads are included in the free plan. Its response allowance is shared across your store’s forms, so include these requests when estimating your monthly volume.

Know where your files go

Open the form’s responses in Perfect Forms, then select a response to read the answers and download its attachments. The files stay behind authenticated access rather than being published as open download links.

CSV exports include attachment filenames, not the file contents. Shopify Flow also receives filenames rather than public file URLs. Use the response link to review the actual attachments in the app.

If you route submissions to another system, decide whether the destination really needs the file or simply a notification that it is ready to review. A link back to the response is often easier to manage than copying the attachment to several places.

Test the awkward cases, too

Try a small supported image, a supported document, a file above your configured limit and a format you do not accept. If you allow multiple files, check the maximum count. Test from a real phone as well as the editor.

Check the file picker’s behaviour with your customers’ likely files. For example, a phone may produce HEIC images, which are not in the supported list. If you expect customer photos, explain that JPG or PNG works and make sure the instructions are visible before the upload.

Finally, submit the form and download the file from the saved response. A good-looking upload field is only half of the job; the person handling the request needs a usable attachment.

Written by Merle Studio, the team behind Perfect Forms. Need a hand with your setup? Get in touch.