Skip to content
hushvert

Convert images without uploading: JPG, PNG, WebP, AVIF, HEIC, and more

Yes, you can convert images without uploading them anywhere. hushvert runs the entire conversion inside your browser tab using WebAssembly, so your JPG, PNG, WebP, AVIF, or HEIC file never leaves your device and is never sent to a server. You can prove it: turn on airplane mode or open your browser's Network tab, and the conversion still finishes with zero upload of your image bytes. Converting among JPG, PNG, WebP, and AVIF in any direction, plus HEIC to each of those and compressing JPG or PNG to a smaller file, is client-side, unlimited, and free with no account.

Why "without uploading" matters for images

Most online image converters work the same way under the hood: you choose a file, your browser uploads the raw bytes to the company's server, the server runs the conversion, and you download the result. That means a full copy of your photo lives on someone else's machine, even if only briefly. In March 2025 the FBI publicly warned that free online file-converter sites are a common vector for malware and data theft, precisely because so many of them route your files through servers you cannot see.

Images carry more than they look like they do. A photo of an ID, a screenshot with an address or account number, a HEIC straight off a phone with embedded GPS coordinates, a product render under embargo: once uploaded, you are trusting a stranger's retention policy, security, and good faith. hushvert removes that trust requirement. For every conversion on this page, the work happens locally in your browser. There is no upload to opt out of, because there is no upload at all. That is the structural answer to a structural problem: you cannot leak a file that never leaves your device.

How browser-based image conversion works (and how you can prove it)

When you drop an image onto hushvert, your browser decodes it and re-encodes it to the target format using code that runs inside the page, on your own CPU. JPG, PNG, WebP, and AVIF all have native or WebAssembly codecs that the browser executes locally. The finished file is written straight back to a download. At no point does your image data travel over the network.

You should not take our word for it, and you do not have to. Two checks prove it in under a minute. First, the airplane-mode test: load the converter, switch your device to airplane mode (or pull the network cable), and convert. It still works, because there is nothing to upload. The /privacy-proof page has a built-in airplane-mode demo that does exactly this. Second, the Network tab: open your browser's developer tools, switch to the Network tab, and convert. You will see no upload of your file bytes. We go a step further than asking you to trust the demo: a continuous-integration test fails our build if a single file byte leaves the browser during a client-side conversion, and the engine is open source under the MIT license as @hushvert/engine, so the behavior is auditable rather than merely asserted.

The image formats you can convert in the browser

The four modern web formats all convert to each other in any direction, fully client-side: JPG, PNG, WebP, and AVIF. So JPG to PNG, PNG to JPG, PNG to WebP, WebP to PNG, JPG to AVIF, AVIF to JPG, and every other combination among those four runs in your browser with no upload.

HEIC, the format an iPhone saves photos in, converts in the browser too: HEIC to JPG, HEIC to PNG, HEIC to WebP, and HEIC to AVIF all run client-side. This matters more than it sounds, because there is no safe server-side path for HEIC anyway (the HEVC codec it uses is patent-encumbered), so a privacy-respecting HEIC converter essentially has to be in-browser. hushvert never sends HEIC to any server.

Beyond the core set, several decode-friendly sources convert client-side as well: BMP to JPG or PNG, TIFF to JPG or PNG, SVG to PNG or JPG, JXL (JPEG XL) to and from JPG and PNG, and PNG or JPG to ICO for favicons. One honest exclusion: GIF does not have a client-side image conversion on hushvert, so do not expect browser-based GIF-to-PNG here, and we will not claim that every image format converts to every other one. The full any-direction interchange is specifically JPG, PNG, WebP, and AVIF.

Which format should you pick?

Choosing the target format is usually more important than choosing the converter. Here is the honest guidance.

Use JPG for photographs and for sharing where compatibility is everything. JPG is lossy and has no transparency, but it is the most universally supported image format on earth and makes small files for photos. Use PNG when you need transparency (a logo, an icon, a UI asset) or lossless quality with no compression artifacts; PNG is bigger but never throws pixels away. Use WebP or AVIF when you want a modern, smaller file for the web: both compress noticeably better than JPG and PNG at similar quality, support transparency, and are now broadly supported in current browsers. AVIF tends to give the smallest files; WebP has slightly wider legacy support. A common, sensible move is keeping a PNG or JPG master and exporting WebP or AVIF for actual web use.

One caution worth internalizing: converting to a lossy target (JPG, or WebP and AVIF at lossy settings) re-encodes the image, which is not a free, reversible relabeling. PNG, TIFF, and BMP are lossless. See /lossy-vs-lossless-file-conversion for the deeper version of this tradeoff.

The honesty that other converters skip: transparency, re-encoding, and EXIF

A few things happen during image conversion that most tools do not tell you, and we would rather you know them before you click.

PNG to JPG drops transparency. JPG has no alpha channel, so any transparent areas in your PNG get filled in (typically with a solid background) when you convert to JPG. If you need to keep transparency, convert to PNG, WebP, or AVIF instead, not JPG. This is not a hushvert quirk; it is how the JPG format works everywhere.

Converting to a lossy target re-encodes the pixels. JPG to PNG is lossless in the sense that PNG will faithfully store whatever the JPG already contained, but PNG to JPG, or anything to JPG, genuinely recompresses the image. Repeatedly round-tripping through JPG degrades quality each time. Convert from your highest-quality source once, rather than re-saving a JPG as JPG over and over.

Re-encoding usually strips EXIF metadata, including GPS coordinates and camera details. When hushvert re-encodes an image to a new format, the embedded metadata is generally not carried over, which is a privacy win: the GPS location baked into a phone photo does not ride along into the converted file. That is a useful side effect of in-browser re-encoding, and because the whole process is local, even the original metadata never leaves your device.

Batch conversion and compressing images smaller, all in the browser

You are not limited to one file at a time. You can drop multiple images and convert them in a batch, and because everything runs locally, a batch of 50 photos is not 50 uploads to somebody's server; it is 50 conversions on your own CPU. The practical ceiling is your device's memory and patience, not a per-account upload quota, and client-side image conversions are unlimited and free with no account.

hushvert also compresses images client-side. Compressing a JPG or compressing a PNG re-encodes the file to smaller bytes, in your browser, with no upload. JPG compression trades a little quality for a much smaller file (useful for email attachments, web pages, or staying under an upload limit somewhere else), and PNG compression reduces size while keeping the image lossless. As with format conversion, the bytes never leave your device, so you can shrink a folder of screenshots or product photos without handing them to anyone.

If you are doing this constantly, established offline tools are also a fine choice and we will not pretend otherwise: macOS Preview, Windows Photos, and command-line tools handle batch image jobs entirely on your machine. The tradeoff is installation and setup; hushvert is the same no-upload guarantee with nothing to install, working the same in desktop or mobile browsers, including mobile Chrome and Firefox on Android.

The honest limits

Browser-based image conversion is the right default, but it has real edges and we will name them. The conversion runs on your device's CPU, so a very large image, or a big batch, on an older phone is slower than the same job on a modern laptop, because the work happens locally rather than on a fast remote server. There is also a small one-time cost: some codecs (for HEIC, AVIF, and JPEG XL) download a WebAssembly module the first time you use them in a session, which is the price of keeping your files off any server; after that they are cached.

GIF has no client-side image conversion here, so this page does not cover it. And while hushvert does operate a separate, clearly-labeled server lane for tasks a browser genuinely cannot do well (office documents to PDF, very large video), none of the image conversions on this page use it. HEIC in particular is never sent to a server under any circumstance. Every image conversion described here is in-browser, no-upload, and verifiable, and hushvert tells you before you start on the rare occasion a task would leave your device.

Image conversions that run in your browser

Keep reading

Common questions

Can I really convert PNG to JPG without uploading the file?
Yes. PNG to JPG runs entirely in your browser on hushvert, so the PNG never leaves your device. You can confirm it by turning on airplane mode before converting, or by watching your browser's Network tab and seeing that no file bytes are uploaded. One thing to know: JPG has no transparency, so any transparent areas in the PNG get filled in with a background when you convert, and JPG is lossy so the image is genuinely re-encoded. If you need to keep transparency, convert to PNG, WebP, or AVIF instead.
Which is the best format to convert my images to?
It depends on the goal. Use JPG for photos and maximum compatibility (lossy, no transparency, small files). Use PNG for transparency or lossless quality. Use WebP or AVIF for modern, smaller web files; AVIF usually gives the smallest size and WebP has slightly wider legacy support. A common approach is keeping a PNG or JPG master and exporting WebP or AVIF for the web. hushvert converts among all four in any direction, in the browser, with no upload.
Can I convert HEIC from my iPhone without uploading it?
Yes. HEIC to JPG, PNG, WebP, and AVIF all run client-side in your browser on hushvert, so the HEIC photo is never uploaded. This is also the only safe way to do it online: HEIC uses the patent-encumbered HEVC codec, so hushvert never processes HEIC on a server. You can verify the no-upload behavior in airplane mode or in the Network tab.
Can I compress my images smaller without uploading them?
Yes. Compressing a JPG or compressing a PNG runs entirely in your browser on hushvert, re-encoding the file to smaller bytes with no upload. JPG compression trades a little quality for a much smaller file; PNG compression reduces size while staying lossless. Because it is client-side, you can shrink a whole folder of photos or screenshots without sending them to any server.
Does converting an image remove its EXIF and GPS metadata?
Usually yes. When hushvert re-encodes an image to a new format, embedded EXIF metadata (including GPS coordinates and camera details) is generally not carried into the converted file, which is a privacy benefit. And because the entire conversion happens in your browser, even the original metadata never leaves your device in the first place.
Is there a file size or count limit for no-upload image conversion?
Client-side image conversions are unlimited and free with no account, and you can convert multiple files in a batch. The practical ceiling is your own device's memory and speed rather than an upload quota, since every conversion runs locally on your CPU. Very large images or big batches simply take longer on older or lower-RAM devices.
Does hushvert keep or see my images?
No. For the image conversions on this page, your files never reach any hushvert server, so there is nothing for us to keep or see. The conversion happens on your own device. You can verify the no-upload behavior in airplane mode or the browser Network tab, a continuous-integration test fails our build if any file byte leaves the browser during a client-side conversion, and the engine is open source under the MIT license.