What Photos returns offline

I tested a Photos library containing 43,615 photographs, with 370 originals stored on the Mac. Most originals were in iCloud under Optimise Mac Storage. At roughly 20.7 MB each, downloading originals for grid thumbnails would require a large transfer. I disabled the network to check what Photos could provide locally.

Results

In this test, a cloud-only photograph returned a 512 px preview without network access. The EXIF request for the same photograph returned nil.

This meant the grid could use local previews, while reading full metadata could require an original download. The result differed from my reading of the documentation.

How Frames uses this

ThumbnailLoader reads two proxy caches and has no photo-source access. It cannot request original downloads. The grid therefore works from local data.

That guarantee applies to the grid. Other viewing and editing actions can request originals or larger previews.

Download paths at the time of the test

The implementation then had these five paths:

Path Trigger
EscalationLadder.climb Zooming past fit; Compare requests for its panes
LoupeModel.loadOriginal Load original or the status bar’s Try again
MainWindow.loadEditFrame Opening a photograph in Develop
MetadataBackfill Running the metadata backfill command
PreviewOnDemand Opening a photograph without a proxy at any size, requesting a 2048 px preview

These describe the implementation on 13 August 2026. The current download behaviour is documented in Downloads and Compare.

An early landing-page draft described the entire application as downloading nothing. That was incorrect. The website now checks broad download claims during its build to keep the grid’s guarantee from being applied to other parts of Frames.

A limit of the cache check

The available resource-size check did not reliably tell me whether an original was already local to Photos. PHAssetResource.dataSize was unavailable for the cloud-only resources being tested. Definitive image-data requests could read or download the full originals, measured at roughly 200 GB across this library.

Frames instead checked whether it held its own fetched copy. This could miss an original already local to Photos, especially without Optimise Mac Storage. In that case the preview stayed soft until Load original was pressed, even though the original might have been available without a download.