Original compatibility lab · five downloadable fixtures

What survives when you convert HEIC to PDF?

See the July 2026 compact-output baseline for orientation, full pixel dimensions, transparent alpha, Display P3 color, EXIF metadata, recompression, and network behavior. The tool now defaults to lossless decoded-pixel embedding; a fresh browser score for that default is pending.

Executive Summary

Orientation and full pixel dimensions survived. Transparent HEIC now survives. EXIF and Display P3 profiles do not survive as metadata.

The tested compact-output path correctly applied EXIF orientation 6 once, retained full decoded dimensions, and preserved alpha with a PDF soft mask. Opaque photos were re-encoded as quality-92 JPEG, so pixels changed slightly. The tool now defaults to embedding the decoded pixels as lossless PNG; these published rows remain the before-change compact baseline until the lossless browser run is authorized and completed. Source EXIF, dates, descriptions, and ICC profiles remain outside the preservation claim.

For settings and workflow advice, read HEIC to PDF without losing quality. Download the fixtures, measurements, network trace, and limitations below.

HEIC-to-PDF compact-output baseline matrix

TestResultWhat survivedWhat changed or disappeared
sRGB landscapePass1200 × 800 decoded and embedded; corner orientation correct.Re-encoded as JPEG; 44,092-byte HEIC became a 58,297-byte PDF.
EXIF orientation 6PassStored 1200 × 800 pixels displayed upright as 800 × 1200.Orientation was baked into pixels; EXIF description and dates were removed.
Transparent alphaPass800 × 600 image embedded as PNG with an 800 × 600 soft mask.Original HEIC container metadata was not copied.
Display P3 gradientPartialGradient decoded, retained 1000 × 700 dimensions, and rendered without banding or clipping.Display P3 ICC profile was not embedded in the PDF; do not treat the output as color-managed archival media.
High-detail patternPass with recompressionAll 2400 × 1600 decoded pixels were embedded.Quality-92 JPEG changed 12.916% of pixels by more than three channel values on this hard-edged stress pattern.

Source: GoPDFConverter HEIC-to-PDF Compatibility Dataset, measured in Chrome on July 10, 2026 using the then-default compact JPEG path. Fixture and output SHA-256 values are included in the CSV. This is not yet a measured score for the new lossless default.

Upright portrait PDF output showing EXIF orientation 6 applied once, with correctly placed corner labels
EXIF orientation applied once. The HEIC stores a rotated 1200 × 800 pixel matrix; the decoded PDF image is upright at 800 × 1200.
PDF output showing two translucent overlapping circles on a white PDF page without a black background
Transparent HEIC preserved. The PDF contains a PNG image plus a grayscale soft mask instead of flattening alpha into JPEG.

Does HEIC-to-PDF conversion preserve quality?

The measured compact path preserved decoded width and height but re-encoded opaque RGBA pixels as JPEG. Across the four opaque fixtures, mean absolute RGB-channel error ranged from 1.120 to 4.957 on a 0–255 scale. The hard checkerboard produced the largest measured difference because JPEG is poorly suited to sharp alternating edges.

The current recommended setting removes that avoidable second lossy generation by embedding the decoder's PNG pixels. This is a code-path guarantee, not yet a published browser-render score. It can create much larger PDFs because HEIC compresses more efficiently than PNG/Flate; choose the explicit compact option when delivery size matters more than exact decoded pixels.

Does HEIC-to-PDF conversion preserve metadata?

No. The test fixture contained EXIF orientation, a synthetic description, and synthetic capture dates. Orientation affected the decoded pixels, but the source EXIF block was not copied into the PDF. The Display P3 fixture decoded visibly, but its ICC profile was not embedded in the resulting PDF image.

This metadata removal can reduce accidental sharing of capture details, but it is not presented as a universal metadata-scrubbing guarantee. Other HEIC structures were not tested. If metadata removal matters legally or operationally, inspect the actual output with a dedicated metadata tool.

Does the browser upload the HEIC photo?

No HEIC or PDF bytes were sent to a conversion server in the measured Chrome trace.

After a safe 44,092-byte fixture was selected and converted, Chrome recorded decoder/library GET requests, local blob: reads, and Google Analytics requests. No remote request body matched the input or output size, no conversion API was called, and the analytics completion event contained the tool name and output size—not the photo bytes.

Observed destinationPurposePhoto or PDF bytes?
cdn.jsdelivr.netLoaded PDF-LIB and libheif-js code after conversion began.No; GET requests for public JavaScript/WASM assets.
blob:https://gopdfconverter.com/…Browser-local decoded image and generated download.Local object URLs; not a network destination.
google-analytics.comPage analytics and pdf_tool_complete measurement.No file bytes; event metadata included the tool and output size.
Conversion endpointNone observed.No upload request occurred.

For a repeatable check on your own device, use the two-minute browser network test with a non-sensitive sample first.

Download the five HEIC test fixtures

These deterministic files contain only synthetic shapes, labels, gradients, and test metadata. They are published so another HEIC converter can be tested against the same inputs.

FixtureInput propertyBytesSHA-256
sRGB landscape HEIC1200 × 800, nclx color44,092d97193e4…e8e289
EXIF orientation 6 HEIC1200 × 800 storage, 800 × 1200 display36,29200ae8dea…f8354
Transparent HEIC800 × 600 with alpha35,374b782c6ca…6a5d6
Display P3 HEIC1000 × 700 with ICC profile16,7344dc47ea2…b4ebc
High-detail HEIC2400 × 1600 checkerboard stress pattern124,00214bc863d…6093

Download fixture manifest Download validated results Open HEIC to PDF

Method

  1. Generate deterministic inputs.

    Pillow created five synthetic source images. libheif 1.21.2 encoded HEIC fixtures with orientation, alpha, nclx, or Display P3 ICC properties. SHA-256 hashes identify the exact files.

  2. Convert each sample in the browser.

    In the July 10, 2026 browser test, Chrome 150 used libheif-js 1.19.8 decoding, JPEG/PNG canvas encoding, PDF-LIB embedding, automatic orientation, and a 20-point margin. This run represents the compact-output baseline, not the later lossless default.

  3. Trace network requests.

    Chrome DevTools Protocol recorded request URL, method, type, and request-body length from file selection through the completion event.

  4. Validate independently.

    heif-convert decoded the source outside the browser. Poppler 26.05.0 checked PDF pages, page boxes, embedded image types, dimensions, and alpha soft masks, then rendered each first page at 72 DPI.

  5. Compare renders.

    The 20-point PDF margin was removed and the remaining image region was compared with the independent source decode using PSNR, mean absolute error, and percent of pixels changing by more than three channel values.

What this test does not cover

This lab does not cover the current lossless-default browser output, HDR gain maps, 10-bit tonal accuracy, depth maps, Live Photo video, image sequences, auxiliary thumbnails, monochrome HEIF, malformed containers, very large phone panoramas, or every ICC/nclx combination. A multi-image HEIC container may contain more than one item; the current converter uses the primary decoded image from each selected file.

Output SHA-256 values identify this run but can change between otherwise equivalent conversions because PDF creation timestamps change. Source fixture hashes are stable.