Drop in the .heic photos from your iPhone and get JPGs that open in every app, on every device, with nothing to install. Up to 3 files with no signup (3 a month without an account, 25 a month with a free one), encoded with Google's jpegli for better quality per byte, processed in memory and never saved to disk.
Drop your .heic files above, or click browse. Up to 3 a month with no account, 25 a month with a free account. Files from an iPhone, iPad or iCloud download all work; .heif and .hif files convert here too.
Let it run. There is nothing to type and nothing to set: this page does one job, a HEIC to JPG conversion tuned for quality, and starts it as soon as the files land.
Download your JPGs. They open in Windows Photos, Paint, Preview, Photoshop, every email client and every upload form, none of which need to know what HEIC is.
Since iOS 11, iPhones have saved photos as HEIC by default: a HEIF container with the picture encoded in HEVC, at roughly half the size of an equivalent JPEG. Apple's own devices open it natively, so you never notice until a photo leaves the Apple ecosystem: an upload form rejects it, a Windows PC shows a blank thumbnail, or an Android phone, a CMS or a print shop hands it straight back.
The reason is licensing, not age. HEVC is a patented codec, so Windows only opens HEIC after two extensions are installed from the Microsoft Store (the HEIF Image Extension is free; the HEVC Video Extensions cost $0.99), and Chrome, Edge and Firefox have never displayed HEIC at all; only Safari does. Converting to JPG removes the dependency instead of working around it, which is why it stays the fastest fix. If you have a plain .heif from a desktop editor or an Android phone, the HEIF to JPG converter covers every variant; if the file is a .hif from a Canon, Sony or Fujifilm camera, the HIF to JPG converter has the notes for 10-bit camera files.
Not visibly, with a good encoder. An iPhone HEIC is already a lossy file, and converting it to JPEG is a second lossy encode, so the encoder decides how much survives. Mochify writes every JPEG through Google's jpegli, which in published testing was preferred over libjpeg-turbo and MozJPEG output while using fewer bits per pixel. The jpegli guide has the numbers.
Three things do not make the trip, whatever the encoder. JPEG is standard-range 8-bit, so the extra headroom in an iPhone HDR photo does not carry into a plain JPEG. A Live Photo is a HEIC plus a short video, and converting keeps the still only. And the JPG will be bigger than the HEIC was, usually around twice the size: you are trading bytes for compatibility. Metadata is stripped by default, GPS included, with nothing to set on this page; if you need the camera data kept, the Mochify web app has a Strip EXIF switch and the API takes stripExif=false. The EXIF guide explains what is in there.
You can, one file at a time, once the codecs are in. Install the HEIF Image Extension and the HEVC Video Extensions from the Microsoft Store, open the .heic in Photos, then use the three-dots menu, Save as, and choose JPG. Paint works the same way after the extensions are installed. Without the paid HEVC extension, Photos opens the container and shows nothing. Every fix, and what to do when 10-bit files still refuse, is in how to open HEIF files on Windows.
Right-click the file in Finder, choose Quick Actions, then Convert Image, and pick JPEG (macOS Monterey or later). Or open it in Preview, then File, Export, and set the format to JPEG. Both use the system encoder with no control over quality, and neither handles a folder, which is where a batch converter earns its keep.
Three routes, none of which need an app. To stop new photos being HEIC at all, go to Settings, Camera, Formats and choose Most Compatible; the camera then saves JPEG. To convert when you copy to a computer, go to Settings, Photos (Settings, Apps, Photos on iOS 18) and set Transfer to Mac or PC to Automatic. For a photo you already have, save it to the Files app, touch and hold it, choose Quick Actions, then Convert Image, and pick JPEG. AirDrop to a Mac keeps the file as HEIC. If the JPG is then too big for an upload form, see how to reduce photo file size on iPhone for the built-in route and the quick one.
A camera roll is the usual case: a client's phone photos, a marketplace listing shot on an iPhone, a whole trip. Seller and Pro accounts convert up to 25 files per batch at up to 75MB each, and a Day Pass gives you 100 uploads in 24 hours for $2 with no account. The same conversion runs from the terminal with the Mochify CLI (mochify, one plain-English prompt for a whole directory, sign in once with mochify auth login), from an AI agent through the hosted or local MCP server, and from the REST API:
curl -X POST "https://api.mochify.app/v1/squish?type=jpg" \
-H "Authorization: Bearer $MOCHIFY_KEY" \
--data-binary @IMG_0001.heic \
-o IMG_0001.jpgThe CLI, MCP and API are clients over the same encoder as this page: files travel over HTTPS to api.mochify.app, are converted in memory and discarded. Full parameter reference in the API documentation. Need the photos in one document instead? HEIC to PDF bundles up to 20 of them.
Also available