Key takeaways
- Only Safari 17 and later displays HEIC in an `<img>`: 16.93% of users in Can I use's data (11 October 2026). WebP is at 97.08% and AVIF at 96.33%. MDN says to prefer WebP or AVIF and keep a JPEG fallback.
- WordPress 6.7 converts HEIC uploads to JPEG on the server only if Imagick supports HEIC. GD cannot. WordPress 7.1 (19 August 2026) can also decode HEIC in the browser, even on hosts without server support, and keeps the original HEIC as a companion file.
- Platform help pages differ. WordPress.com, Shopify and Wix list HEIC as accepted; Squarespace says "Only .jpg, .gif, .png, or .webp". None of the four documents HEIC being served to visitors as HEIC.
- Plugins are optional now. We checked three on wordpress.org; two send images to an outside service in some configurations (ShortPixel's cloud; HEIC Support's optional paid conversion). We have not installed any of them.
- If you must host a HEIC file, serve it as `image/heic`. IANA registers it; Apache's mime.types has the line, nginx's repository file does not.
On this page
- Can a browser display HEIC in an img tag?
- What should I serve instead of HEIC?
- Does WordPress support HEIC?
- Why does WordPress still say HEIC is not supported?
- Which WordPress plugin converts HEIC to JPG?
- Does Shopify, Squarespace or Wix accept HEIC?
- How do I serve a HEIC file with the right Content-Type?
- How do I convert HEIC on the server?
- What the platforms do not document
Can a browser display HEIC in an img tag?
Only Safari can. Can I use's HEIF/HEIC data (opens in a new tab) marks Safari 17.0 and later, on macOS and iOS, as supported; Chrome, Edge, Firefox, Opera, Samsung Internet and Chrome for Android are all marked as not supported. Its note on the format is blunt: it is "hard for browsers to support HEIC because it is complex and expensive to license". Our browser support guide goes into the detail.
| Browser | HEIC | WebP | AVIF |
|---|---|---|---|
| Chrome | Not supported | 32 | 85 |
| Edge | Not supported | 18 | 121 |
| Firefox | Not supported | 65 | 93 (still images) |
| Safari on macOS | 17.0 | 16.0 (partial from 14) | 16.4 (partial from 16.1) |
| Safari on iOS | 17.0 | 14.0 | 16.0 (still images) |
| Samsung Internet | Not supported | 4 | 14.0 |
| Global usage | 16.93% | 97.08% | 96.33% |
Source: Can I use data files for heif, webp and avif. Partial WebP before the listed version means lossless, alpha or animation was missing; Safari 14 to 15.6 needs macOS 11 or later.
What should I serve instead of HEIC?
A JPEG, WebP or AVIF. MDN's image format guide (opens in a new tab) lists APNG, AVIF, GIF, JPEG, JPEG XL, PNG, SVG and WebP as the common web types and does not list HEIC. It says "for raster images, prefer WebP or AVIF", that AVIF needs fallbacks to formats with better support, and that JPEG "is often a good fallback format for photographs". Our comparison of HEIC, AVIF, WebP and JPEG XL has the sizes and trade-offs.
To prepare your own photos before uploading, HEIC to WebP, HEIC to AVIF and HEIC to JPG run in your browser and upload nothing. If a form caps the size in KB, use HEIC to Target Size.
The picture element pattern
The <picture> element lets the browser pick. MDN says a <source> whose type the browser does not support "is skipped", and that the <img> is the fallback and carries the alt text and size. List the best format first:
| Order | Element | Chosen by |
|---|---|---|
| 1 | <source srcset="photo.avif" type="image/avif"> | Browsers with AVIF |
| 2 | <source srcset="photo.webp" type="image/webp"> | Browsers with WebP but not AVIF |
| 3 | <img src="photo.jpg" alt="..." width="1200" height="800"> | Everything else, and always the one carrying alt text and size |
Structure from MDN's picture element page; width and height are our addition to prevent layout shift.
A <source type="image/heic"> would be taken by Safari 17 and later and skipped by everyone else, but it buys nothing: in our test of 25 photos AVIF landed at 80% of a JPEG's bytes at quality 85 and HEIC at 82%, and Safari already reads AVIF.
Does WordPress support HEIC?
Yes, with conditions that depend on the WordPress version. The newest release on wordpress.org's news feed (opens in a new tab) is 7.1.3 (6 October 2026).
| Version | Where it is converted to JPEG | What it needs | If it cannot convert |
|---|---|---|---|
| Before 6.7 | Nowhere | Not applicable | A warning asks the user to convert the image to JPEG manually (the pre-6.7 default, per the 6.7 dev note). |
| 6.7 and later | On the server, on upload | An Imagick that supports HEIC. See Tools > Site Health > Info > Media Handling > ImageMagick supported file formats. | The same warning. The original HEIC stays downloadable from the attachment page when conversion works. |
| 7.1 and later (19 August 2026) | In the browser, in the editor; server as the fallback | A browser that can decode HEIC: Chrome, Edge or Brave on macOS, or on Windows with HEVC support, or Safari on macOS. | Falls back to the server path. The original HEIC is kept as a companion file. |
Sources: the WordPress 6.7 dev note (15 August 2024), the 7.1 client-side media dev note (22 July 2026) and the 7.1 release announcement. Checked 12 October 2026.
The 6.7 dev note (opens in a new tab) says HEIC uploads are converted "on the server when possible" so that you can use them "regardless of whether a visitor's browser supports HEIC". To switch it off, remove the HEIC entry in the image_editor_output_format filter, as the note shows.
WordPress 7.1 adds a second path. The 7.1 dev note (opens in a new tab) says HEIC images "can be decoded in the browser and converted to JPEG before upload, even on hosts without server-side HEIC support", that the decode "relies on platform codecs", and that the original HEIC is kept as a companion file and removed when the attachment is deleted. The 7.1 announcement (opens in a new tab) lists "native support for AVIF, HEIC, and HDR gain maps". Client-side processing can be turned off with the wp_client_side_media_processing_enabled filter.
Converted JPEGs can be large. Commenters on the 6.7 note reported files nearly double the HEIC's size; the 7.1 note says big_image_size_threshold sets the dimension above which WordPress scales an image down, so that is the filter to tune.
Why does WordPress still say HEIC is not supported?
Usually because the host's image library cannot read it. WordPress's server-side converter is Imagick, not GD. In the core source (the development branch, 7.2-alpha, read 12 October 2026) the GD editor accepts only JPEG, PNG, GIF, WebP and AVIF, while the Imagick editor asks Imagick::queryFormats whether HEIC is available. PHP's GD constants (imagetypes (opens in a new tab)) have no HEIC entry either.
- 01
Update WordPress
The browser path needs 7.1 or later; the server path needs 6.7 or later.
- 02
Check what the server can read
Open Tools > Site Health > Info > Media Handling and look for HEIC under ImageMagick supported file formats, as the dev note says.
- 03
If HEIC is missing, ask the host
ImageMagick's format table (opens in a new tab) lists HEIC as read and write and says it "requires the libheif delegate library", so the host needs an ImageMagick built with libheif. A strict
policy.xmlcan also block it: ImageMagick's recommended web policy (opens in a new tab) permits only GIF, JPEG, PNG and WEBP. - 04
Or convert before you upload
Convert on your computer with HEIC to JPG or the batch converter. That works on any host.
Which WordPress plugin converts HEIC to JPG?
Since 6.7 you may not need one. A plugin earns its place if you want WebP or AVIF copies, or your host cannot read HEIC. These three are listed on wordpress.org; we describe them from their listings and have not installed or tested them.
| Plugin | What the listing says | Needs | Installs, tested up to, updated |
|---|---|---|---|
| HEIC Support (opens in a new tab) | Allows .heic and .heif uploads and makes .webp, .avif or .jpg copies. Optional paid cloud conversion, from US$5.99 for 3 conversions. | ImageMagick 7 with libheif for local conversion. Cloud mode uploads the .heic file to the vendor's service. | 5,000+, WordPress 7.0.7, 28 July 2026 |
| ShortPixel Image Optimizer (opens in a new tab) | Says HEIC photos "will be automatically converted to JPG and optimized". | An API key. Its FAQ says originals are sent to ShortPixel's cloud for compression; the listing does not say this separately for HEIC. | 300,000+, WordPress 7.1.3, 9 October 2026 |
| HEIC to JPEG (opens in a new tab) | Converts uploaded HEIC to JPEG. The listing warns it may no longer be maintained and points to HEIC Support. | ImageMagick 7.0.8-46 or above. | 1,000+, WordPress 6.2.14, 5 April 2023 |
A plugin that sends your files to an outside service is a privacy decision. The photos you upload to your own site may be the ones you least want elsewhere.
Does Shopify, Squarespace or Wix accept HEIC?
| Platform | HEIC? | What the help page says | Limits it states |
|---|---|---|---|
| WordPress.com | Yes | Lists .heic and .heif among accepted image types and says it "restricts uploads to the file types listed" (page (opens in a new tab), last reviewed 5 October 2026). Says nothing about conversion. | None for HEIC on that page |
| Shopify | Yes | Files page: "JPEG, PNG, WEBP, HEIC, and GIF" (page (opens in a new tab)). The images page (opens in a new tab) lists HEIC too and says Shopify serves "the best format available" for each browser, without saying what happens to a HEIC. | 20 MB; 25 MP on the Files page, 20 MP on the images page |
| Squarespace | No | "Only .jpg, .gif, .png, or .webp" (page (opens in a new tab), updated 22 June 2026). It adds that iPhone .heic files "automatically convert to .jpg when imported or shared in many places, including the Squarespace App". | 20 MB; 500 KB or less recommended |
| Wix | Yes | Site images accept "HEIC, HEIF" among others, and "Images are automatically converted to AVIF format on your live site" (page (opens in a new tab)). | 50 MB for images |
Squarespace's page also says every uploaded image is converted to WebP for display and the original stays in the asset library. That applies to the accepted types.
So on Shopify, Wix and WordPress.com you can upload a HEIC, but only WordPress documents what happens to it. Convert to JPG yourself if you need to know exactly what visitors get; on Squarespace you have to. The page does not say what happens to a HEIC dragged into the browser editor.
How do I serve a HEIC file with the right Content-Type?
As image/heic. IANA (opens in a new tab) registers two subtypes: heic for files with the heic, heix, heim or heis brand (HEVC-coded images, what an iPhone writes) and heif for files with the mif1 brand. The extensions are .heic and .hif for heic, .heif and .hif for heif. A HEIC served inline still will not show in Chrome, Edge or Firefox, so use it for downloads.
- Apache: mime.types (opens in a new tab) in the httpd repository maps
image/heicto heic (and heics, heif and heifs for the others). - nginx: mime.types (opens in a new tab) in nginx's repository has image/avif and image/webp but no heic or heif line. Without a mapping nginx uses default_type (opens in a new tab),
application/octet-streamin the sample nginx.conf. Addimage/heic heic;yourself if you host HEIC. A distribution may ship a different file. - Other hosts and CDNs: not documented in the sources we read; check what header your host sends.
How do I convert HEIC on the server?
Briefly, because the developer guide covers it. ImageMagick reads HEIC through libheif, as above, and WordPress uses that path. The risk is real: HEIC decoding handles untrusted files on your server, and libheif and its HEVC decoder have a history of memory-safety bugs, so keep them patched. Can a HEIC file contain a virus? sets out the details. If you do not need server-side conversion, convert on the uploader's device or let WordPress 7.1 do it in their browser.
What the platforms do not document
- WordPress.com, Shopify and Wix: what format a HEIC becomes for visitors. Wix says images become AVIF and Shopify says it serves the best format for the browser, both without naming HEIC.
- WordPress 7.1: whether the browser HEIC path runs in the Media Library upload page and under the same conditions as the WebAssembly pipeline.
- Squarespace: what happens to a HEIC dragged into the editor in a browser. The page says only that supported types are jpg, gif, png and webp.
- All of them: whether a HEIC upload keeps its original after conversion, except WordPress, which says it does.
Frequently asked questions
Try it yourself
Related reading
- HEIC browser support: Chrome, Safari, Firefox, Edge
- HEIC vs AVIF vs WebP vs JPEG XL, measured
- HEIC for developers: Python, Node, ImageMagick, FFmpeg
- HEIC vs JPG: file size and quality, measured
- Can a HEIC file contain a virus? What is verified
- HEIC in iCloud, OneDrive, Dropbox and Box
- HEIC upload not supported
- Why a HEIC file won't open
Sources
- Can I use data file: heif, webp, avif and jpegxl (caniuse.com/data.json) — Can I use, checked
- HEIF/HEIC image format — browser support — Can I use, checked
- Image file type and format guide — MDN Web Docs, checked
- The Picture element (MDN) — MDN Web Docs, checked
- Automatic conversion of HEIC images to JPEG in WordPress 6.7 — Make WordPress Core, checked
- Client-Side Media Processing in WordPress 7.1 — WordPress Core (make.wordpress.org), checked
- WordPress 7.1 "Mary Lou" — WordPress.org News, checked
- WordPress 7.1.3 Maintenance and Security Release — WordPress.org News, checked
- WordPress core source (wordpress-develop trunk): media.php and image editors — WordPress (GitHub), checked
- imagetypes (PHP manual) — PHP Documentation Group, checked
- Supported image formats (ImageMagick) — ImageMagick Studio, checked
- Security policy (ImageMagick) — ImageMagick Studio, checked
- HEIC Support (WordPress plugin listing) — WordPress.org Plugin Directory, checked
- HEIC to JPEG (WordPress plugin listing) — WordPress.org Plugin Directory, checked
- ShortPixel Image Optimizer (WordPress plugin listing) — WordPress.org Plugin Directory, checked
- Accepted file types on WordPress.com sites — WordPress.com Support, checked
- Uploading and managing files (Shopify Help Center) — Shopify Help Center, checked
- Uploading images (Shopify Help Center) — Shopify Help Center, checked
- Formatting images for display on the web (Squarespace) — Squarespace Help Center, checked
- Wix Media: Supported Media File Types and File Sizes — Wix Help Center, checked
- Media types: image/heic and image/heif — IANA, checked
- Apache httpd docs/conf/mime.types (trunk) — Apache HTTP Server, checked
- nginx conf/mime.types (master) — nginx, checked
- ngx_http_core_module: default_type — nginx, checked
- GHSA-frfr-f3vg-2g6j: heap-buffer-overflow write in grid tile chroma compositing (libheif) — libheif maintainers (GitHub Security Advisories), checked
- NVD CVE API keyword search: libheif and libde265 — NIST National Vulnerability Database, checked
How we research and correct: editorial policy.
Written by the heic.fyi team · Last updated: · Spotted an error? Tell us.