filename.heic
Queued—
Two problems at once: your recipient cannot open a .heic, and a dozen photos will not fit under the limit. Convert below and watch the file sizes as you go.
100% Local — Files Never Leave Your Device
Drop your photos here
or pick them from your device — each one shows its new size when it is done
Supports .heic and .heif from iPhone, iPad and modern Android cameras
Tuned for email. Too big for your limit? Lower this and convert again — sizes update on every card.
filename.heic
Queued—
The message sends fine; the other end breaks. Outlook does not decode images itself — it asks Windows to, and Windows cannot read HEIC without the paid HEVC extensions. Your recipient gets an attachment with no preview and an error when they double-click it.
Android clients vary, older ones show a grey placeholder, and webmail often just offers a download the recipient still cannot open.
Converting to JPG solves compatibility completely. What it does not do is shrink the file — HEIC uses a more efficient codec, so a high-quality JPG is usually bigger than the original. The quality slider is what controls size.
Budget about three quarters of your limit: email encodes attachments in base64, which inflates them by roughly a third on the wire. A 25 MB cap means keeping actual files under about 18 MB.
Drag them onto the box above or press Select Files. Conversion starts at 80% quality, tuned for email.
Each card shows its new size. Add them up, lower the slider if needed, then download and attach in Gmail, Outlook or Apple Mail.
Outlook hands images to Windows to decode, and Windows cannot read HEIC without the HEIF Image Extensions, which depend on the paid HEVC codec. The attachment arrives intact but shows no preview and errors when opened. Converting to JPG fixes it for every recipient.
Not by itself — a high-quality JPG is usually larger than the HEIC it came from, because HEIC compresses more efficiently. Lower the quality slider to control size: a 12 MP photo runs roughly 5–6 MB at 95% and about 1 MB at 60%.
No. The decoder is a WebAssembly module that runs inside your browser tab, so the photo is read from your device into memory and converted there. You can check it in your browser's Network tab, or disconnect from the internet once the page has loaded and convert anyway.