If you let customers upload their own photos: what does a bad one actually cost you?

I’ll be upfront: I’m not a merchant. I’m a developer, and I built a small tool that checks a customer’s photo in the browser at upload — sharpness, exposure, resolution against the print size — and warns them before they pay. I’m not going to link it here; that’s not what this post is for.

What I’m trying to find out is whether the problem is actually worth solving, because I’ve only spoken to a handful of shops so far and the answers pull in opposite directions.

So, if you sell anything made from a photo the customer sends you:

1. Do you look at the photo before production, or does it go straight through?

2. When a bad one gets through, what happens — reprint at your cost, refund, or do you go back to the customer?

3. Roughly what does one of those cost you, all in?

One shop told me it’s a few emails a week and no big deal — but they send a proof before payment, so they catch everything early. I suspect it’s a completely different story for anyone printing directly. I’d like to know if that’s true or if I’ve got it backwards.

Happy to share what I learn back here.

Not a merchant either, so take this as a shape rather than an answer, but the thing that will split your data is the one you already spotted. Shops that send a proof before payment carry a support cost. Shops that print straight through carry a reprint cost. Those two numbers are not comparable, and if you mix them you get an average that describes nobody. Worth asking question 1 first and bucketing every other answer under it.

One thing worth pulling out separately. Blur is the failure people talk about, resolution is the one that actually bites, and the customer has no way of seeing it coming. An iPhone main camera gives 4032x3024, so 12 MP, which at 300 dpi tops out around 13 by 10 inches. A photo saved off Instagram is 1080 wide, which is 3.6 inches at the same density. Both look flawless on the phone the order was placed from. So plenty of shops do look at the photo and still cannot call it, because the answer only exists once you pair the file with the print size.

The cost I would chase is not the reprint itself. It is what happens after, because going back to the customer means asking someone to admit their photo was bad, and a share of those turn into refund requests rather than a second upload. That ratio is the number I would want if I were building this.

Anyone here printing direct, roughly how many of your send-us-another-one emails come back with a file versus come back as a refund?

That resolution point is the one I keep coming back to. A 12 MP phone photo covers about 13x10 inches at 300 dpi; the same image saved off Instagram is 1080 wide, so 3.6 inches. Identical on the screen the order was placed from, and no amount of looking at it tells you which one you’ve got - you need the print size to know.

Bucketing by proof vs no-proof, agreed. I’ll do that.

And your refund-vs-reupload ratio is a better question than the one I asked, so I’ll ask it plainly: if you print direct and you’ve had to go back to a customer about their photo - did they send a new one, or did they ask for their money back?

Shopify compresses image uploads, both from the admin side and also from the line item property submit side, so unless a merchant sets something up in a third party host like Cloudinary, and have the image uploaded there upon add to cart or something, or has the customer email the image, then merchant is going to get a mediocre image in the Shopify order regardless.

Fair point, and it’s true for the native line item property path. But most shops doing photo products aren’t on that path - Uploadery advertises up to 2GB per file for high-res print work, which isn’t possible through Shopify’s own upload, so those apps are clearly hosting the file themselves at full resolution.

Which actually splits things further: if you’re on the native path the merchant gets a degraded file no matter what the customer sent, and checking the original is beside the point. If you’re on an upload app, the original survives and the check is the only thing standing between a 1080px file and a 24x36 print.

So - for those of you selling photo products, which are you on? Native line item upload, an upload app, or something like Cloudinary?

Love the approach of validating the problem before pushing the tool :slight_smile: The resolution point is real, I’d guess most reprints come from exactly that and the merchant only finds out once the customer complains

Hi @Gregoire_BISCHOFF :raising_hands:

I think the distinction you’re making between stores that use a proofing step and those that send customer uploads directly into production is important. The impact of a poor-quality photo can be very different depending on where that quality check happens.

For personalized products, I’d usually try to catch the problem as early as possible, ideally when the customer is uploading the image. Things like resolution and image dimensions can be checked before the order is placed, while more subjective issues such as the photo being too dark or unsuitable for the final product may still need a manual review or proofing step.

The workflow also depends a lot on the product. For something relatively inexpensive, a merchant might simply contact the customer if there’s a problem. For higher-value personalized products, a reprint or refund can become much more expensive, especially once production and shipping are involved.

For the upload part itself, Easify Custom Product Options can be useful for stores that need customers to submit photos or other files as part of a personalized product. You can add a file-upload option directly to the product page and collect the customer’s file together with the order.

That said, I’d separate the two problems. An upload field solves how the merchant receives the photo, but it doesn’t by itself determine whether the image is good enough for printing. If automatic checks for resolution, dimensions, sharpness, or exposure are important, that would need an additional validation layer.

I think your question about the actual cost is probably the most interesting part. A few bad uploads might not seem significant individually, but if a store receives hundreds of personalized orders, even a small percentage of reprints, refunds, or extra customer-service conversations can add up quickly.

It would also be interesting to compare the numbers between stores that proof every order and stores that go straight from upload to production. That seems like it would give you a much clearer picture of whether automated pre-purchase image checking is actually solving a meaningful problem.:heart:

Thanks - the split you draw between what can be checked automatically and what can’t is the useful one, and I hadn’t drawn it that sharply. Resolution and dimensions are objective: pair the file with the print size and you have your answer. Sharpness is measurable but needs a threshold someone has to own. ‘Too dark’ genuinely isn’t decidable without knowing the product.

And your point that receiving the file and judging the file are two separate problems is exactly why I’m asking here rather than building more.

Still hoping to hear from anyone actually selling photo products. The question that would help most: when a customer’s photo isn’t good enough, do you find out before or after production - and roughly what does one of those cost you by the time it’s settled?

Hi there @Gregoire_BISCHOFF
Based on what I’ve seen, the price fluctuates wildly according to the product and process. Direct to customer upload shops can also be hit with reprints, refunds, wasted materials, and additional customer communication if poor quality files make their way through. Play a proofing step catches these problems earlier, but it too adds friction. You should be able to get a good sense of the potential savings by monitoring the number of failed uploads and the average reprint cost for a month.