Delivery
Delivering Photos to Clients: The Complete Guide
Every way to hand final photos to a client — galleries, file transfer, USB — with the tradeoffs that actually matter: full resolution, link expiry, branding, mobile, and backups.
Updated August 2026
Delivery is the last thing a client remembers about working with you, and it's where a surprising number of photographers lose the thread. The photos are edited, the invoice is paid, and then the handoff turns into a mess of expired WeTransfer links, a 40 GB Google Drive folder the client can't figure out, or a USB stick lost in a junk drawer. A clean delivery is not a nice-to-have. It's the moment that earns referrals.
This guide covers every realistic way to get final images to a client, what each method is good and bad at, and the specific decisions that trip people up: whether to hand over full-resolution files, how long a download link should live, how to keep your own name on the experience instead of a platform's, what happens on a phone, and how to keep the masters safe after the job is done.
Where a concrete example helps, we'll reference how clientgallery.io handles it — flat 10 $/month, your branding, and full-resolution ZIP delivery built in — but the principles apply no matter what tool you use.
The three delivery methods, honestly compared
Almost every delivery falls into one of three buckets. Each solves a different problem, and the right answer often depends on the client.
- Online gallery. A branded web page where the client views, favorites, and downloads. Best for most work: it doubles as proofing, it survives the client losing an email, and it makes you look like a professional rather than someone emailing a zip. The tradeoff is that it lives on a platform, so you want one that doesn't plaster its own logo over your delivery or hold your files hostage.
- File transfer (WeTransfer, Dropbox, Google Drive links). Fast, free-ish, zero setup. Fine for a one-off handoff to another vendor. Weak as a client experience: links expire without warning, there's no branding, no proofing, and a shared Drive folder invites the client to poke at your other files. Great for a colleague, wrong for a paying client.
- Physical media (USB, prints, boxes). Still meaningful for weddings and high-end portrait work as a keepsake, priced accordingly. As theonly delivery it's a liability — drives fail, get lost, and can't be re-downloaded from a beach. Treat physical media as an add-on on top of a digital delivery, never the sole copy.
The practical answer for most photographers: deliver through a branded online gallery, offer a USB as a paid upsell if your market wants it, and keep file transfer in your back pocket for vendor-to-vendor handoffs.
Full-resolution vs web-sized: what you actually hand over
Clients who paid for a shoot expect the full files, and withholding them to force a print sale reads as petty in most markets. But "full resolution" needs a definition. There are two distinct assets:
- Proofs / previews. Downsized JPEGs — around 2048 px on the long edge — used for selecting favorites and sharing on social. Small, fast, and all most clients ever touch.
- Full-resolution finals. The full-size edited JPEGs for printing and archiving. This is what "the photos" means to a client.
Deliver full-resolution edited JPEGs as the standard. You almost never hand over RAW files — they're your negatives, they need your software to look right, and a client opening a flat unedited RAW is a support ticket waiting to happen. If a client specifically contracts for RAWs, that's a separate line item, not a default. clientgallery.io is built around this split: the Lightroom plugin publishes 2048 px proofs for selection, while final delivery goes out as full-resolution JPEG ZIPs. It's deliberately JPEG-only — no video, no RAW warehousing — which keeps the whole thing fast and cheap.
Expiring links: protection or a trap?
Temporary download links are the single most misunderstood part of delivery. Clients hate them when they expire silently three days after a wedding and the couple is still on their honeymoon. But permanent links have real costs: they keep large files live forever, they leak when forwarded, and they turn your storage bill into a graveyard of galleries nobody will ever open again.
The right model separates two things. The gallery should stay available for a generous, predictable window so the client can come back and browse. The heavy full-resolution download — the multi-gigabyte ZIP — can expire quickly, because it's generated on demand and regenerated whenever the client needs it again. clientgallery.io does exactly this: a full-res ZIP is built on request, stays live for up to 100 GB at a time, and auto-expires after three days. The client isn't punished — they click again and a fresh ZIP appears — but you're not paying to store expanded archives indefinitely.
The failure to avoid is the silent expiry with no path to recovery. Whatever tool you use, make sure "the link died" is a self-service re-download, not an email to you.
Branding: whose delivery is this?
When a client opens your gallery and sees another company's logo, pricing, and "powered by" footer, you've just introduced your customer to a competitor. Delivery is prime real estate — it's the exact moment a client is delighted and about to share the link with friends who need a photographer.
- Your logo, your colors, your domain feel. The page should look like it belongs to your studio, not a SaaS vendor.
- No platform upsells to your client. You don't want the tool cross-selling prints or accounts to the people you brought in.
- Clean, guessable links. A tidy URL you can say out loud beats a random string of characters.
This is a real point of difference between platforms. Some show their brand prominently on your galleries; clientgallery.io carries zero platform branding — the client sees your work and your name, nothing else.
Mobile: most clients download on a phone
Assume the first — and often only — device your client uses is their phone. That changes what "delivery works" means:
- The gallery has to be genuinely usable on a small screen, not a desktop layout crammed into a phone.
- Downloading a giant ZIP to a phone is awkward. Phones handle saving individual images to the camera roll far better than unzipping a 10 GB archive. Offer both: single-image save for the phone crowd, full ZIP for the client who'll sit at a computer.
- Sharing is the growth engine. When a client can text a friend a link to a beautiful, branded gallery, that's your marketing. A clunky Drive folder never gets forwarded.
One phone-first feature worth calling out: clientgallery.io includes in-browser Face Search, where a guest takes a selfie and finds their own photos in a large event gallery. The matching runs entirely in the guest's browser — the selfie is never uploaded — so it's useful without being a privacy problem.
Backups and archiving the masters
Delivery is not a backup. The moment you deliver, you still own the only safe copy of a client's memories, and clients will absolutely come back in two years asking for images they deleted. A delivery platform's live storage is designed for active galleries, not as your long-term vault.
A sane setup has layers: your working catalog and drives, an off-site backup of the finals (and RAWs, if you keep them), and a delivery copy that clients can reach. Don't confuse the three. clientgallery.io keeps live delivery lean — its fair use is JPEG photos only, 1000 photos per gallery, a 250 GB account cap (the free tier caps at 5 GB) — and offers an optional archive tier that parks master files on Backblaze B2 for cheap cold storage, separate from the active galleries. That's the right shape: fast live delivery for current clients, cheap deep storage for the archive you rarely touch but can never lose.
Switching platforms without re-uploading everything
The reason a lot of photographers stay on an overpriced tool is the dread of moving years of galleries. If you're consolidating your delivery, look for an import path rather than a manual re-upload.
clientgallery.io does a one-click whole-account Pixieset import: it reads the entire Pixieset account through its API — galleries, sets, titles, and order — and reproduces the structure on the other side. Re-running the import skips anything already imported, so you can move in stages instead of a single all-or-nothing migration. That turns "I'd have to rebuild everything" into an afternoon, which is usually the only thing standing between a photographer and a flat 10 $/month bill instead of a metered one.
A delivery checklist
Before you send that link, run through this:
- Right resolution. Full-resolution edited JPEGs for the finals, proofs for selection. RAWs only if contracted.
- Branded page. Your name and look, no platform logo or upsells in front of your client.
- Predictable availability. Gallery stays up; heavy downloads can expire as long as the client can re-generate them themselves.
- Mobile-verified. Open it on a phone before you send it.
- A backup that isn't the delivery. Your archive copy lives somewhere the client's deletion can't touch.
- A short, human note. Two sentences telling the client how to download and how long they have. Delivery is communication, not just a file transfer.
Frequently asked
Should I give clients the full-resolution files or only web-sized images?
For most work, deliver the full-resolution edited JPEGs — that's what a paying client expects. Use web-sized proofs (around 2048px) for selecting favorites and social sharing. Withholding full files to force print sales works in a few high-end markets but frustrates most clients.
Do I need to hand over RAW files?
No. RAW files are your negatives — they need your software and edits to look right, and an unedited RAW confuses clients. Deliver edited JPEGs by default. If a client specifically wants RAWs, treat it as a separate paid deliverable, not the standard.
How long should a download link stay active?
Keep the gallery itself available for a generous window so clients can return, but the heavy full-resolution ZIP can expire quickly if it regenerates on demand. clientgallery.io builds ZIPs on request, keeps them live up to 100 GB, and auto-expires them after three days — the client just clicks again for a fresh one.
Is WeTransfer or Google Drive good enough for client delivery?
They're fine for handing files to another vendor, but weak as a client experience: no branding, no proofing, links that expire silently, and shared folders that expose your other files. For paying clients, a branded gallery reads as more professional and doubles as proofing.
How do I move my existing galleries to a new platform without re-uploading?
Look for an import feature. clientgallery.io does a one-click whole-account Pixieset import that reads your entire Pixieset account via its API — galleries, sets, titles, order — and reproduces it. Re-running skips what's already imported, so you can migrate in stages.
Where should I keep the master files after delivery?
Not on your live delivery platform alone. Keep a separate off-site backup of your finals. clientgallery.io offers an optional archive tier that stores masters on Backblaze B2 for cheap cold storage, kept separate from active galleries so your delivery storage stays lean.
Your client galleries, under your name
Unlimited galleries, your branding, one-click Pixieset import, and a Lightroom plugin — a flat 10 $/month, everything included. Your first gallery is free.
Deliver your next gallery with clientgallery.io — first gallery free