Convert HEIC to JPG for Notion Pages

Notion accepts the file and then shows a download link where your image should be. Convert to JPG below and it renders as a proper image block.

100% Local — Files Never Leave Your Device

HEIC to JPG converter

Drop your photos here

or pick them from your device — converted files embed as image blocks

Supports .heic and .heif from iPhone, iPad and modern Android cameras

Nothing queued yet. Converted photos appear here ready to drag into a Notion page.

Why Notion will not render your photo

Notion is a web app, and image blocks are rendered by your browser. Since no major browser decodes HEIC, Notion falls back to treating the upload as a generic file — so you get a download link, or an empty block, rather than the picture.

The same limitation hits gallery-view databases, where every card needs a thumbnail. A HEIC cover simply leaves the card blank, which is usually when people notice.

Working in a Notion database

Convert the batch first and the whole gallery populates properly: covers render, thumbnails generate, and the page keeps working when you share it with someone on Windows or Android.

Filenames are preserved, so if your database rows are keyed to photo names the matching still lines up after conversion.

  1. Drop your photos in

    Drag them onto the box above or press Select Files. Conversion runs locally and starts by itself.

  2. Add the JPGs to Notion

    Download them, then drag into the page or upload to the files property of your database.

Frequently asked questions

Does Notion support HEIC images?

Not as rendered images. Notion will store a .heic upload as a file, but because browsers cannot decode the format it cannot display it in an image block or as a gallery thumbnail. Converting to JPG makes it render everywhere Notion runs, including the mobile apps.

Why does the image work on my iPhone but not on the web?

The iOS Notion app can hand off decoding to iOS itself, which understands HEIC. The web app in a browser on Windows, Android or Linux has no such decoder, so the same page looks broken to your collaborators.

Is anything uploaded to a server?

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.