Chat, email, Google Drive, Dropbox, Google Photos, an image host, WeTransfer, or a private link: which ones keep your pixels, which ones make the image public, and which one fits a mockup that needs sign-off.
The mockup is done. The colours are the ones the brand guide asks for, the type is set, and the client has to sign off before it goes to print. You drop it into the chat thread, and what arrives on their phone is a little softer than what you sent. Now they're approving something that isn't quite your file.
Every way of sharing an image makes a choice about the pixels, the account and the audience. Most of them make it for you.
Two questions settle most of it.
Are they judging the image, or glancing at it? Signing off a brand colour, checking a typeface, reading the small print on a label: those need the file you exported, not a re-encoded copy. "Here's roughly what the living room will look like" doesn't.
Should anyone else ever see it? An image for a forum post is meant to spread. A product shot before launch, a floor plan with an address on it, or a client's unreleased campaign is not. Some routes are public by design, and that's a feature right up until the image is the second kind.
| Way | What the reader gets | What it's built for | Where it gets awkward |
|---|---|---|---|
| A chat app | The image in the thread | Quick looks in a conversation | Photos can go at a standard rather than full quality, and the image sinks in the scroll |
| An email attachment | A copy in their inbox | Handing over the file itself | Size limits, and some mail apps offer to shrink images before sending |
| Google Drive or Dropbox | A preview of the file, with the file there to download | Files a team keeps working on | The reader lands in a file viewer, and access is a sharing setting that's easy to set too narrow |
| Google Photos | A shared photo or album | Collections of photos, like an event or a trip | Built around albums and your photo library, not a single proof |
| An image host (Imgur and similar) | A page and a direct image URL | Posting images publicly and embedding them in other sites | Built to spread, and some hosts resize or re-encode large files |
| WeTransfer | A download of the original | Moving big files from one person to another | The reader downloads a file instead of seeing it, and the transfer expires |
| A private-link host (miinideck) | The image on a plain page in their browser, from an unguessable address kept out of search | One finished image going to specific people | PNG and JPEG only, and it isn't a direct image URL for embedding elsewhere |
The details that change, especially whether a service re-encodes your file, come from each service's own help pages. They're dated because services change them.
| Re-encodes the file? | Reader needs an account? | Public by default? | |
|---|---|---|---|
| Photos go at Standard quality unless you pick HD | Yes, WhatsApp | No, it stays in the chat | |
| Google Photos | Depends on your backup quality: "Original quality" keeps it as is; "Storage saver" and "Express" compress | Not to view a shared link | No; sharing is something you turn on |
| Imgur | Images over 1 MB (5 MB with an account) are compressed | No, though Imgur has been unavailable from the UK since 30 September 2025 | Posts can be public or hidden; the direct image URL is made for embedding |
| WeTransfer | No; the original file is delivered | No, to download | No; the transfer expires |
| miinideck | No; stored byte for byte | No: no account, no app, no download | No: an unguessable link with a no-index tag |
Checked against each service's own help pages on 1 October 2026. Services change how they handle images without telling us, so check their site for what's current. Our own row comes from how our upload stores files.
The drive route is the closest to what most people actually need, and it's the one people reach for first. A Google Drive link vs a private link walks where the two diverge once the file is finished. For the transfer route, a WeTransfer download vs a link that renders covers the same trade from the other side.
This is where our own limits are narrower than the services above, so here they are plainly.
We take PNG and JPEG. The upload checks the file's actual contents, not its name, so a renamed file of another type won't pass. HEIC (the High Efficiency format an iPhone camera uses unless it's set to Most Compatible), WebP, GIF and SVG need converting first. Most phones and image editors export either PNG or JPEG in a couple of taps. If what you have is a set of images that belong together, put them on one HTML page, or a ZIP with the page and its images, and share that instead.
Watch the size. A No-account upload, with no sign-up at all, takes a file up to 3 MB. The Free tier takes 10 MB per file, Solo ($4.99/mo) takes 25 MB, and Studio ($14.99/mo) takes 50 MB. A full-resolution photo straight off a camera can run past the smaller limits. A flat mockup exported as PNG or JPEG usually doesn't.
Check the location data. Because the file is stored exactly as uploaded, anything inside it travels with it, and that includes the place a phone photo was taken. Anyone who saves the image can read it. If that matters, export or share without location before you upload. Most phones have that option.
If the image is one piece of a portfolio you aren't ready to publish yet, sharing a portfolio piece before it's public covers that case.
Anything shown on a screen can be captured. No link setting stops a screenshot. If an image mustn't circulate without your name on it, a visible watermark is the only thing that stays with it after it's been seen.
Their screen isn't yours. Every route above can deliver your exact pixels. None of them can deliver your monitor. A colour sign-off on an uncalibrated laptop or a phone at half brightness is still a judgement on their display. For print work, a physical proof is the final check.
A preview in a chat can show the image. Links often unfurl into a small preview when they're pasted into a chat app. For an image, that preview can be a glimpse of the image itself. On miinideck, a password-protected link never gets a preview, because a preview would show what the password is there to hold back.
That's the job miinideck is built around: one finished image, going to specific people, seen exactly as you exported it.
You upload the PNG or JPEG as it is. It isn't resized or re-encoded. It's stored byte for byte and shown on a plain page we generate around it. The reader opens the link in any browser, on a phone or a laptop, with no account and nothing to install.
The link ends in 32 random characters, so nobody can guess it, and the page tells search engines not to index it. The people you send it to can open it, and so can anyone they forward it to. When that isn't enough, put a password on it. It's free on any account.
After you send it, the link is still yours:
A No-account upload is the quick version: no sign-up, and it can take a password, but it runs for 7 days and can't be replaced.
For how this fits alongside every other kind of file you might need to hand over, see where to put a file online.
If you know this is the route you need, share an image privately walks through the upload, the password and what the reader sees.
A test send, your ESP's preview, a rendering-test service, a screenshot, the .html as an attachment, or a hosted page link: what each one shows the client, what a browser preview can and can't prove about an email, and the combination that gets sign-off without surprises.
Postman's published docs, SwaggerHub, a hosted docs portal, GitHub Pages, the raw OpenAPI file, or one rendered HTML page behind a private link: what each is built for, how to turn a spec into a single page with one command, and what to strip out before anyone outside sees it.
Quarto Pub, RPubs, Posit Connect Cloud, GitHub Pages or Netlify, an HTML attachment, or a private link: what each one is built for, why a rendered report loses its styling when you send the HTML on its own, and which route fits a report meant for a client or an advisor.
miinideck turns a single HTML file into an unguessable link with optional password and expiry. Default-private, never indexed.