
The photo that leaves your computer and the photo that reaches the other person are often two different files. Somewhere in between, an app decided your image should be smaller, faster, and worse. If you have ever zoomed into a photo a friend sent back to you and winced, you have seen it. Sending at full quality is not hard, but it means knowing which routes touch your pixels and which ones leave them alone.
Sort every way of sending a photo into two buckets: routes that treat it as a file, and routes that treat it as a picture. File routes move bytes and change nothing. Picture routes optimize for the screen on the other end, which means resizing and re-encoding.
Picture routes, the ones that cost you quality: text messages once they fall back to MMS, WhatsApp and Messenger by default, Instagram and every social platform, and many webmail clients that offer to resize on attach. Some of these can behave when asked, WhatsApp can send as a document for instance, but their defaults work against you.
File routes, the safe ones: email attachments sent as actual attachments, AirDrop between Apple devices, cloud drive shares of the original file, and transfer links. A transfer service is a file route by construction: it stores what you upload and serves the same bytes back, because rewriting customer files would be a liability, not a feature.
The rule that follows: any time a photo matters, choose a file route on purpose rather than letting the conversation choose a picture route for you.
No sending route can restore quality that was gone at export. Before blaming the pipe, check what you put into it.
Export once, correctly, and keep that master. Every copy you send should descend from it, not from an earlier send.
For one or two images to someone nearby, AirDrop or an email attachment does the job. The interesting case is a real delivery: dozens or hundreds of files, someone far away, possibly not technical. That is what transfer links are for.
The recipient clicks, unzips, and holds files identical to your exports. Photo recipients even get a gallery view to browse before downloading, which heads off the person who would otherwise screenshot the preview and call it done.
Quality anxiety ends when you stop guessing. Two checks, one crude and one exact.
The crude check is file size. If you sent 8.4 MB and the recipient holds 8.4 MB, the image almost certainly made it untouched. If they hold 1.1 MB, something along the way re-encoded it, and you know to ask how they saved it.
The exact check is a checksum. On a Mac, Terminal, then shasum -a 256 file.jpg on both copies. On Windows, certutil -hashfile file.jpg SHA256. Matching output means the files are identical to the last bit, which is a sentence you can say to a client with total confidence.
Run the exact check once on each route you rely on, confirm the route is clean, and then stop worrying about it. From there, the only quality conversations left are about what happens after delivery, when the client uploads your work to a social platform. That one you cannot prevent, only soften, by including a folder of social sized copies so the originals never get fed to the compressor.
Use a route that moves the file itself: an email attachment for one or two small images, AirDrop between Apple devices, or a transfer link for real deliveries. Avoid texting apps and social platforms, which re-encode by default.
No. ZIP is lossless: it repacks the bytes and never touches the image encoding. The JPEG that comes out is identical to the JPEG that went in.
Compare file sizes first: a large drop means it was re-encoded. For certainty, run a SHA256 checksum on both copies. Matching checksums prove the file is unchanged.
No. Files are packed into a ZIP as they upload and stored exactly as sent. The recipient downloads the same bytes you exported, and photo transfers include a gallery view for browsing before download.
JPG opens everywhere, so it is the safer delivery format. If your originals are HEIC, convert them yourself with a tool you trust rather than leaving the recipient to find a converter.
Drag the files in, pick when the link should expire, and send. Files are zipped while they upload, stored exactly as you sent them, and deleted on schedule. No sign up, nothing recompressed.