Your scanned prints deserve accurate dates. CircaPhoto uses face recognition and age estimation — running entirely on your Mac — to work out when each photo was taken and write the correct date back to your Apple Photos library.
When you scan a print from 1972, your scanner records the scan date — not when the photo was actually taken. Apple Photos inherits that wrong date, so decades of family history ends up buried or unsortable. CircaPhoto fixes this by reasoning from what the photos themselves contain: the faces of people you know and how old they look.
Three steps. Each album represents one person — that's the key to accurate dating.
In Apple Photos, create a dedicated album for the person whose photos you want to date — for example "Grandma", "Dad 1960s–70s", or "Keith". Add all their scanned prints to that album. Photos can appear in multiple albums simultaneously, so there's no need to move or duplicate anything.
Select the album in CircaPhoto. Click Detect Faces — the app scans every photo using Apple's Vision framework, then asks you to name the primary person and confirm which detected faces are theirs.
Next, right-click 2–3 photos whose dates you already know and set an anchor date. Anchors spread across different ages of the person give the best results.
Click Show Suggested Dates. CircaPhoto presents date estimates grouped by confidence — high confidence suggestions (interpolated between anchors) are pre-accepted. Review, adjust any dates you disagree with, and click Apply. The correct dates are written directly to your Apple Photos library.
CircaPhoto uses Apple's Vision framework to detect faces and compute a geometric "feature print" for each one. A custom Core ML model then estimates the apparent age visible in the photo — not the person's true age, but how old they look.
From your anchor dates, the app fits a linear model:
estimated date = slope × apparent age + intercept.
The intercept is the implied birth date; the slope corrects for any bias
in the age model so your anchor photos land exactly on their known dates.
With 2 or more anchors spanning different ages, this calibration is highly accurate. Photos estimated by interpolation (age falls between your two youngest and oldest anchors) are marked high confidence. Estimates outside that range are marked medium or low confidence so you know to look twice.
Right-click any photo whose date you know and set it as an anchor. Two or three anchors spanning different ages calibrates the entire album's timeline.
Accepted dates are written to your Photos library as the photo's creation date — visible in Photos, iCloud, and any app that reads photo metadata.
Every photo CircaPhoto dates is added to a dedicated "Dated by CircaPhoto" album in Photos — a durable, always-visible record of what the app has touched.
Work different albums independently. A photo that appears in two albums carries the date context from whichever album dated it first — safely protected from overrides.
Enter an optional birth date for each person. CircaPhoto will never suggest a date earlier than their birth, or one that contradicts their apparent age.
Reset a single photo's date, all dates in an album, or do a full system reset that restores every original date and removes all CircaPhoto data.
Photo grid badges tell you exactly what has happened to each photo and what — if anything — still needs your attention.
Every piece of AI in CircaPhoto runs on-device using Apple's Vision framework and a local Core ML model. No photos, no face data, and no dates are ever uploaded to any server. There is no account, no subscription, and no cloud — just your Mac and your Photos library.
CircaPhoto is in early development. Request access to be among the first to try it.
Request Early Access