File upload
Collect photos, logos, and artwork, with allowed file types, file counts, an image editor, and live preview on the product photo.
A field the customer uses to attach files. Use it for print-on-demand products, photo gifts, and custom artwork.
Watch it done — 1:55. Collecting artwork from customers at the moment they order, instead of chasing files by email afterwards.
What customers see
An upload control with your label above it. After uploading, the file is listed as a thumbnail if it is an image, or as a link otherwise, depending on your store-wide File preview setting.

Basic
Blocks add to cart until at least one file is attached.
Hides the label.
Allow multiple (up to 20)
Lets the customer attach more than one file. Off by default. Reveals the two file-count limits.
Between 1 and 20 each. Only shown once Allow multiple is on.
Allowed extensions
Which file types are accepted. Starts as jpg, jpeg, png.
Guidance that stays visible — the right place for your quality requirements.
Show or hide based on other choices.
There is no placeholder, no default value, and no add-on price on this type.
Allowed extensions
The picker groups the accepted extensions into nine categories, so you can allow a whole group at once:
Image
jpg, jpeg, png, gif, bmp, webp, tif, heic, dng
Graphics
svg, eps, ico, stl, 3mf and other design and 3D formats
Document
doc, docx, rtf, txt
Spreadsheet
Spreadsheet formats
Presentation
Presentation formats
Audio
mp3, wav, mpc
Video
mp4, mov and others
Archive & Compressed
zip, rar, 7z, bin
Others
Specialist formats, including machine and font files
A search field lets you find a single extension without opening its group.
Advanced
Enable image editor
Lets customers adjust an image before it is uploaded — cropping, rotating, and similar. Off by default.
Where the help text sits.
Styling hook and field width.
Enable the Enable image editor for printed products. It lets the customer crop the image to the correct shape before uploading, which reduces the number of unusable files you receive.
Personalizer
File upload is the only option type that draws an image supplied by the customer. The uploaded image is displayed on the product photo immediately.
Its personalizer settings are:
Image shape: a preset shape to mask the image into, or a shape you upload
Background mode: how the image fits the shape. The values are Stretch, Cover, Contain, Full width, and Full height
Width, Height, X position, Y position, Opacity, Rotation
Crop area: a region the image cannot be moved outside of
Allow customers to: change position, resize, or rotate the image
Use these settings to let a customer upload a photo and see it on the product. See Image layers and Customer controls.
Add-on pricing
File upload cannot carry a price.
To charge for an upload, such as an artwork setup fee, add the price to a Switch or Checkbox, then display the upload field with conditional logic.
Store-wide settings that affect it
File preview
Settings > Settings > General > Product page
Show image if the uploaded file is a photo, otherwise show link, or Show link for everything.
Choose file, File uploading, Uploaded file: and similar wording
Settings > Translations
All editable per language.
Examples
One photo to print in a frame
Label / Name
Your photo
Required field
On
Allow multiple
Off
Allowed extensions
jpg, jpeg, png
Enable image editor
On
Help text
JPG or PNG, at least 1500 × 1500 pixels for a sharp print.
Personalizer
On, masked into the frame shape, customer may reposition
A four-photo collage
Allow multiple on, Min number of files 4, Max number of files 4, image editor on.
Print-ready artwork from a designer
Allowed extensions set to document and graphics formats, including pdf, svg, and eps. Required field off, with help text stating your bleed and color requirements.
Reference images for a repair quote
Allow multiple on, Min number of files 2, Max number of files 6, with help text asking for one photo per angle.
Notes
Available on paid plans. Multiple file upload and the per-file size limit are separately plan-gated.
Works in Shopify POS.
Cannot carry an add-on price.
Up to 20 files per option.
Uploaded files are attached to the order, so your team can download them from the order in Shopify admin.
Large files take time to upload on a slow connection. Limit the allowed extensions and state your requirements in help text.
Last updated
Was this helpful?