What TAG Lens writes to Photos

TAG Lens edits metadata, not pictures. This page is the complete list of what it writes, where that ends up, and who can see it.

![writes-ledger]

The ledger

WhatWhere it goesVisible to
Keywords (tags) — added; removed only by a removal you make yourself (the four ways are below)Your Photos libraryPhotos and any app that reads Photos keywords
TitlesYour Photos libraryPhotos and any app that reads Photos metadata
CaptionsYour Photos libraryPhotos and any app that reads Photos metadata
FavoritesYour Photos libraryPhotos, everywhere your library syncs
Capture-date changesYour Photos libraryPhotos and any app that reads Photos metadata
Location (set or cleared)Your Photos libraryPhotos and any app that reads Photos metadata
Album membership — photos you add to or remove from an albumYour Photos libraryPhotos, everywhere your library syncs
Albums — created, renamed, or deleted (deleting an album asks first and never touches its photos)Your Photos libraryPhotos, everywhere your library syncs
Deletions — the two delete commands, plus removing the optional control photos you installed (control-only), each behind a macOS confirmationPhotos' Recently Deleted, recoverable for around 30 daysPhotos, everywhere your library syncs
Control photos (optional) — famous public-domain photographs you choose to install, the one thing TAG Lens ever adds — and can take back out in-app (Settings ▸ Control photos ▸ Remove Control Photos…), sending only the ones it installed to Recently Deleted, never your ownYour Photos library, in the “TAG Lens Controls” album, marked with “control:” keywords and their true capture yearsPhotos, everywhere your library syncs
Star ratings (0–5)A TAG Lens file on this Mac; embedded as IPTC StarRating in any dragged or shared JPEG; on macOS 27, also into Photos' own rating field if you run Library ▸ Promote Stars to PhotosTAG Lens; any IPTC-reading app (Lightroom, Bridge, Photos); Photos itself after a promote
Reject marksA TAG Lens file on this MacOnly TAG Lens
Copyright & license — your creator name, copyright, credit, contact, and chosen license (Settings ▸ Copyright & license)Embedded as IPTC (Byline, Copyright Notice, Credit, Contact) in any photo you export or share — never written to your originalsAny IPTC-reading app (Lightroom, Bridge, Flickr, Photos)
AI rating scoresA TAG Lens file on this MacOnly TAG Lens
Stories & their notesA TAG Lens file on this MacOnly TAG Lens
Facts you record about people and objects — the birth/death years and home place for a person (People ▸ Details…) or a tagged object like a pet (its inspector row ▸ Set details…)A TAG Lens file on this Mac; never written onto any photo — it only powers date and place suggestions you reviewOnly TAG Lens
Tag presets (named tag bundles for the stamp palette)A TAG Lens file on this MacOnly TAG Lens
Film rolls — roll names and the camera/film-stock facts you assert, plus which photos you assignedA TAG Lens file on this Mac; never written into your originals. One opt-in exception: Settings ▸ Tags & Privacy ▸ Sharing & export can write the asserted camera into the copies you drag, share, or exportOnly TAG Lens — plus anyone you share a copy with, if you turn that setting on
Saved filters, session, scan cachesTAG Lens files on this MacOnly TAG Lens
Flickr publishes (optional) — photos you marked For Flickr and published with Publish to Flickr…, as JPEGs carrying their title, caption, tags, and embedded IPTCYour own Flickr account, over your own API key — only when you run the command and confirm the sheet, which requires you to choose who can see them and the license every batch; your named people's tags never ride along, and location goes only if you check its boxWhoever your chosen Flickr visibility admits
Flickr check-for-updates (optional) — Check Flickr for Updates… asks Flickr about the photos TAG Lens published, sending only their Flickr ids over your sign-in; tags you added on Flickr, and titles or captions where yours are empty, come back as suggestions you review — additive only, one ⌘Z, and a named person's tag can no more enter this way than leave. Flickr's view count for each comes back and is shown in the inspector — kept in a TAG Lens file on this Mac, never written to any photo, and deleted when you disconnect the accountA read from your own Flickr account — nothing reaches your photos until you approve the review sheet; the view counts land only in TAG Lens's own fileOnly you
Flickr archive matching (optional) — Match Flickr Archive… finds photos you uploaded to Flickr before TAG Lens: it reads your own photostream list page by page (each request sends only a page number over your sign-in; your photo ids, titles, and taken dates come back), matches them against filenames and capture times on your Mac, and links only the matches you approve on a review list — so Check Flickr for Updates… can include them. The link is TAG Lens bookkeeping on this Mac, undone as one ⌘Z; nothing is written to your photosA read from your own Flickr account — nothing about your library is sent, and matching happens on your MacOnly you

TAG Lens removes a keyword only when you tell it to, and ⌘Z puts every removal back. There are four ways you can: remove a tag chip from a photo; Remove a tag from a multi-photo selection (it confirms the honest count first, and the whole batch undoes as one ⌘Z); the Settings clean-up that strips a banned tag from the photos still carrying it (also one grouped ⌘Z); and Consolidate Tags, which replaces variant spellings with the one you keep after you review the plan. TAG Lens can also suggest a removal — but only of a keyword the AI added that doesn't match the photo's visual neighbours (e.g. a stray "cat" on a photo whose look-alikes are all coins). That is suggestion-only: you accept it one card at a time, and it never suggests removing a keyword you typed.

TAG Lens can also add inferred locations in bulk — but never on its own. When several photos have no GPS, the location suggestion offers Review all N location fixes: a list of each photo and the coordinate TAG Lens inferred from a geotagged photo taken nearby in time. Because an inferred location is a guess, nothing is pre-checked — you tick only the ones you trust, and the whole set writes (and undoes with a single ⌘Z) together.

TAG Lens can also repair a cluster of dates at once. When a scan or import collapses many photos onto a single timestamp, the date suggestion offers Review all N together — a preview of every photo's current date beside the date TAG Lens proposes (taken from a near-identical shot you already dated). Nothing is written until you press Apply, you can switch any photo off in the list, and the whole repair undoes with a single ⌘Z. When the frames you've dated by hand on a film roll agree on a year, TAG Lens can offer that year to the roll's scan-stamped frames too — always a suggestion you review, never an automatic write.

When instead several photos have a caption or title that names a different year than their stored date, the date suggestion offers Review all N caption dates — each photo's current year beside the year you wrote. Because that year comes from your own words, the photos start pre-checked; switch any off, and Apply (with one ⌘Z to undo) writes them together.

Through macOS 26, Photos had no write API for star ratings, so TAG Lens keeps them in its own local database, keyed to each photo's library identifier — that local file is their home. macOS 27 added a ratings API, so there you can also send your stars into Photos' own rating field with Library ▸ Promote Stars to Photos…, after which they sync like any Photos edit; the command is hidden on earlier macOS, where the API doesn't exist. Stars (1–5) also embed as IPTC StarRating in any JPEG you drag or share — Lightroom, Bridge, and Photos can read them. Reject marks stay purely app-local. Settings ▸ Ratings Backup exports ratings, rejects, and your film rolls (the roll names, asserted camera/stock, and photo assignments) as one JSON file and merges them back in — do this before migrating or rebuilding your Photos library, because a rebuild can change those identifiers.

Export Photo Info as CSV… (File menu, ⌘⇧E) writes a spreadsheet of the current selection — or the whole filtered view — to a file you choose: keywords, title, caption, date, rating, and the reject and favorite marks. The file includes each photo's precise latitude and longitude unless you say otherwise: the save panel shows an Include location (GPS coordinates) checkbox on every export, pre-set from the Strip location when sharing or exporting setting (Settings ▸ Tags & Privacy ▸ Sharing & export), so exact coordinates leave only on your explicit choice.

Export to Folder… (File menu) copies the selected photos into a folder you choose, alongside a metadata.csv of their keywords, title, caption, and rating. Pick the Format on the panel: Keep original files copies your originals — RAW, HEIC, whatever they are — byte-for-byte and never re-encoded (the default); Convert to JPEG saves viewable JPEG copies (re-encoded, so not your originals — a HEIC is transcoded, a photo already JPEG is copied as-is) while any RAW negatives are copied untouched into a RAW Originals/ subfolder beside them. Either way it reads your originals and never changes them, and nothing leaves your Mac beyond the folder you pick. Originals stored in iCloud download first, and a photo whose original can't be fetched is reported rather than silently replaced with a lower-quality copy.

Three promises

How the writes happen

Keywords, titles, and captions are written through Photos automation (the macOS Automation permission); favorites, capture dates, locations, albums, deletions, and the optional control-photo imports go through Apple's PhotoKit. Both paths write into the same Photos library you see in the Photos app — there is no separate TAG Lens copy of your library.

Related

This page is generated from the same in-app help topic TAG Lens ships, and the engineering covenant behind it lives in the repo as ADR-0010 — the same-change rule means neither can drift from the code without failing the build.