Is there a quick and easy way to convert many HEIC files to png on macOS?


Suppose we take some live photos on iPhone, airdrop them to MacBook, and we want to upload them to a site that only accepts .png files.

enter image description here

I've noticed if you simply change the extension from .HEIC to .png (e.g. in the above image), then as far as I can tell, the image file is treated accordingly by programs and it 'works'.

However, I guess the underlying file hasn't changed, so it could still contain live photo information (I think), which a normal png wouldn't have, which, in a worst case, could be a security risk or in less severe cases simply be an annoyance.

What I know so far

The best I can do right now is go through the files one by one renaming them. I would really like to know what other solutions are available (via point and click and terminal), and have a strong preference for not having to download any external software.


This answer is what solved for me. It's based off @user3439894's extremely useful comments

To convert all .HEIC images in a directory to .png

Open terminal. cd to the directory where the .HEIC files you want to convert are stored.

for f in *.HEIC
do sips -s format png "${f}" --out "${f%.*}.png"

If you want to convert and resize images

The following will convert and resize images so the maximum height and width is 400 pixels (but you can change 400 below to any value)

for f in *.HEIC
do sips -s format png "${f}" -Z 400 --out "${f%.*}.png"



You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .