Activity Monitor

photoanalysisd Isn’t a Virus — It’s Photos Analyzing Your Library

You opened Activity Monitor to find out why your Mac is warm, and something called photoanalysisd is sitting near the top eating CPU. Here’s what it is, why it spikes, whether it’s safe, how long it lasts, and the one situation where it’s actually worth a closer look.

The short version

photoanalysisd is Apple’s Photos library analysis agent in macOS. It’s safe — not a virus — and it runs in the background to recognize faces, pets, scenes, objects and text so the Photos app can power People & Pets, Memories, and search. It spikes the CPU after a big import, a macOS upgrade, a new library, or an iCloud Photos sync, and that burst is normal — it stops once your library is analyzed.

WHAT YOU SEE · ACTIVITY MONITOR photoanalysisd 187% CPU · reported fans up · the Mac feels warm. WHAT IT ACTUALLY IS Photos is analyzing your library faces · scenes · objects · text → People, Memories, search Apple · on-device · expected
The alarming number in Activity Monitor is usually just Photos doing its homework — analyzing your library on your Mac so search and Memories work.

It’s a small heart-attack the first time you see it. The Mac is warm, the fan is up, you open Activity Monitor expecting to catch some app misbehaving — and instead the thing near the top of the CPU list is a process you’ve never heard of, with a cryptic name, running hard while you weren’t doing anything. photoanalysisd. It even keeps going after you quit the Photos app.

Take a breath. In the overwhelming majority of cases this is macOS working exactly as designed, and it will stop on its own. Here’s the whole picture — including how to be sure it’s the real thing, and the one case where it’s worth a second look.

What is photoanalysisd?

photoanalysisd is the part of macOS that analyzes your Photos library. It works through your pictures and videos on your Mac and recognizes the content — faces and pets, scenes, objects, and text — then stores that as searchable metadata. That’s the machinery behind the Photos features you actually use: the People & Pets album, Memories, and being able to type “dog on a beach” into Photos search and get results.

The key thing to understand: it’s a background agent, not the Photos window. It has its own process so macOS can do this work quietly while you’re doing something else — which is exactly why you’ll see it running with Photos completely closed. It has a couple of relatives you might spot alongside it: photolibraryd (the service that manages the library database) and mediaanalysisd (the related daemon behind Visual Look Up and Live Text). As the macOS-internals writer Howard Oakley documents at length, this on-device image analysis is a standing part of how modern macOS understands your media.

Why is photoanalysisd using so much CPU?

Because something gave it a backlog. macOS queues a full or partial re-analysis of your library after any of these:

  • You imported a big batch of photos or videos.
  • You upgraded macOS (a new version can re-run analysis to add new capabilities).
  • You created or switched to a new library.
  • You turned on or did a large iCloud Photos sync, so a pile of images just arrived to be analyzed.

Working through that backlog is CPU-heavy. On a multi-core Mac people commonly report it at anywhere from 50% to 300% of a core in Activity Monitor while it’s busy — that’s a few cores’ worth, which is why the fans spin up and the aluminium gets warm. (Activity Monitor counts one fully-used core as 100%, so “300%” is three cores, not a glitch.) On Apple Silicon, macOS schedules this as background and maintenance work and balances it across cores while keeping the Mac responsive for you — so a high number doesn’t mean your Mac is unusable, just busy.

If this pattern — a system process pinning the CPU while the app you’d blame sits idle — sounds familiar, it’s the same shape as a Gatekeeper CPU storm we wrote about: the heat is real, it’s just billed to a background process, not the window in front of you.

A TRIGGER… big import macOS upgrade new library iCloud Photos sync FULL RE-ANALYSIS queued runs hours–days even with Photos closed settles A one-time backlog ratchets down over hours and days — that downward trend is how you know it’s “busy,” not “stuck.”
What sets it off, and what it does next: a library-changing event queues a re-analysis that runs in the background and then stops — the trend is downward.

Is photoanalysisd a virus?

No. The real photoanalysisd is a legitimate Apple system process that ships inside macOS and runs from a protected system location. It is not malware, it is not a “PUP,” and it is not something you accidentally installed.

The honest caveat — and the reason “is photoanalysisd a virus” is a fair question to ask — is that any file can be given a familiar name. Malware sometimes hides by borrowing the name of a trusted process. So the genuine-article test isn’t the name; it’s the path and the signature. The real one runs from /System/Library/PrivateFrameworks/PhotoAnalysis.framework/ and is code-signed by Apple as com.apple.photoanalysisd. A process called “photoanalysisd” running from your home folder, Downloads, or some random app bundle is a different conversation. (The verification commands are in the how-to below.)

verify photoanalysisd $ ps -o command -p $(pgrep -x photoanalysisd) /System/Library/PrivateFrameworks/ PhotoAnalysis.framework/…/photoanalysisd ✓ genuine Apple system path $ codesign -dv --verbose=4 … Identifier=com.apple.photoanalysisd ✓ signed by Apple THE RED FLAG A “photoanalysisd” running from: ~/ · Downloads · an app bundle is NOT the real one. Investigate that.
The genuine-article test is the path and the signature, not the name: a system path under PhotoAnalysis.framework and an Apple code signature mean it’s real.

One more reassurance, because people worry about it: this analysis happens on your device. photoanalysisd reads your library locally to build local metadata — it isn’t uploading your photos somewhere to be examined.

How long does photoanalysisd take?

As long as your library needs — and no longer. A modest library can settle in a few hours. A large one, or one that just synced down thousands of images from iCloud, can take days, usually in bursts whenever the Mac is idle and on power. Then it’s done: photoanalysisd goes quiet until the next event gives it new work.

The practical tell is the trend. A one-time backlog ratchets down over hours and days as it chews through the library. That’s the difference between “busy” and “stuck,” and it’s why watching the number over time tells you far more than a single glance ever will — the same lesson behind “your battery didn’t age overnight.”

Can I stop or quit photoanalysisd?

You can — Activity Monitor will let you quit any process — but it’s not a real fix, and it’s usually counterproductive. photoanalysisd is managed by launchd, the macOS service manager, which can simply relaunch it; the analysis then picks up where it left off. Force-quitting it on a loop doesn’t cancel the work, it just stretches the job out — the Mac keeps restarting it and the analysis resumes later.

There’s also no clean “disable photoanalysisd” switch that leaves Photos intact — the analysis is the feature. Turn it off and you lose People & Pets, Memories, and content search. The genuinely better move for a real backlog is boring but effective: plug the Mac in, leave it awake and idle (overnight is perfect), and let it finish. It’ll get through the work faster with the machine to itself, and then it stops.

When is photoanalysisd actually a problem?

There’s one real exception to all this reassurance. photoanalysisd is worth investigating when all of these are true at once:

  • It’s been pegged high for many days, not hours.
  • There was no recent trigger — no big import, no macOS update, no new library, no iCloud Photos sync.
  • The trend never improves — it’s flat-high, not ratcheting down.

That combination can mean a stuck library or a sync that can’t complete — a known failure mode where analysis loops without finishing. That’s the point to look closer at Photos and iCloud library health. The one thing not to do is start deleting things: don’t delete Photos data, caches, or the library database as a “fix.” Back up first, then troubleshoot the library properly.

How to confirm it’s really photoanalysisd (and let it finish safely)

  1. Open Activity Monitor and sort by CPU. Applications → Utilities → Activity Monitor, the CPU tab, then click the %CPU column to sort. Confirm photoanalysisd is actually the top process.
  2. Check the path. In Terminal: ps -o command -p $(pgrep -x photoanalysisd | head -1). The genuine binary is /System/Library/PrivateFrameworks/PhotoAnalysis.framework/Versions/A/Support/photoanalysisd.
  3. Verify the signature. Run codesign -dv --verbose=4 on that full binary path (the one ending in /photoanalysisd — not the .framework folder, which returns a “bundle format is ambiguous” error) and look for Identifier=com.apple.photoanalysisd. Wrong path or signature → treat it as suspicious.
  4. Tie the spike to a cause. Did you recently import a lot of photos, upgrade macOS, make a new library, or enable iCloud Photos? Any one of those explains the backlog.
  5. Let it finish. If it’s genuine, plug in, keep the Mac awake and idle, and leave it be (overnight works well). It completes faster and then stops on its own.
  6. Escalate only if it never ends. Many days of flat-high CPU with no trigger and no downward trend → back up, then investigate Photos/iCloud library health. Don’t delete Photos data.

What CoreGuard shows during a photoanalysisd spike

This is the reason I’m building CoreGuard, so let me be concrete — and honest about what it does and doesn’t do.

The hard part of a moment like this isn’t fixing anything — there’s usually nothing to fix. It’s knowing that the scary process is just Photos doing expected work, and being able to watch it settle instead of guessing. That’s what CoreGuard is for here. It names the actual top process in plain English — “photoanalysisd — Photos is analyzing your library,” not a cryptic string — so you immediately know it isn’t malware. It shows live temperatures, fan RPM, and CPU/load, and — the part that matters most here — it keeps a history, so you can see the spike ratchet down over the evening rather than wondering if it’s ever going to stop. The process naming, the live readings, and the danger warnings are free; per-app energy detail over time is part of Pro.

And the honest limits, in plain text: CoreGuard does not stop, throttle, speed up, or “fix” photoanalysisd, and it is not an antivirus. It wouldn’t make sense to — this is Apple’s own process doing legitimate work, and the right answer is usually to let it run. What CoreGuard changes is the part that sends people down a rabbit hole of force-quitting system processes and Googling “is photoanalysisd a virus” at midnight: it turns “some unknown thing is hammering my Mac” into “that’s Photos, here’s the trend, it’ll be done by morning.” It’s also local-only — zero network connections, no account, no telemetry; you can verify that yourself with lsof -i -nP | grep CoreGuard and watch nothing happen.

CoreGuard isn’t out yet — the download and checkout go live shortly. Free covers the live readings, the “what’s eating your Mac” process naming, the history, and every danger warning, forever; Pro is a one-time $29 (Family $49), perpetual, not a subscription, with a 30-day money-back guarantee.

So the honest ask: get notified and grab it free at launch, or see what Pro adds. Either way: next time a process you don’t recognize is running your Mac warm, check the name and the trend before you reach for the force-quit button.

Frequently asked questions

What is photoanalysisd on Mac?

photoanalysisd is Apple's background Photos analysis agent in macOS. It builds the metadata behind Photos search, People and Pets, and Memories by recognizing faces, scenes, objects and text in your library on-device. It runs on its own as a background process, separate from the Photos app window.

Why is photoanalysisd using so much CPU?

It usually means Photos has a backlog to analyze after a big import, a new library, a macOS upgrade, or an iCloud Photos sync. Catching up on that backlog can drive high CPU for a while, and that is normal. Users commonly report it at 50-300% of a core in Activity Monitor on multi-core Macs while it is working.

Is photoanalysisd a virus?

No. The real photoanalysisd is an Apple system process that ships with macOS and runs from a system path. If you are unsure, verify the path and code signature, because a suspicious file reusing the same name somewhere else should not be trusted. The genuine one is signed by Apple as com.apple.photoanalysisd.

How long does photoanalysisd take?

It takes as long as your Photos library needs. A small library may settle in hours; a large or newly synced library can take days, often in bursts when the Mac is idle and on power. It ends once the library is analyzed, then returns after the next big import or update.

Can I stop or quit photoanalysisd?

You can quit it in Activity Monitor, but macOS can relaunch it and the analysis just resumes later, so it is not a real fix. Repeatedly killing it tends to stretch the job out. The better move is usually to let it finish while the Mac is plugged in and idle.

Why does photoanalysisd run when the Photos app is closed?

Because it is a background agent, not the Photos window. macOS schedules the analysis when the Mac is idle, plugged in, or otherwise free for maintenance work, so it can run with Photos fully quit.

When should I worry about photoanalysisd?

Worry if it stays high for many days with no recent import, macOS update, or iCloud Photos sync, and the trend never improves. That is when a normal backlog starts to look like a stuck library or a sync problem worth investigating — back up first, and never delete Photos data as a fix.

Know what's eating your Mac — without the midnight panic.

CoreGuard names the hot process in plain English, tells you when it’s an expected job like photoanalysisd, and keeps the history so you can watch a spike settle. It observes and explains — it won’t stop, speed up, or “fix” an Apple background process, and it’s not an antivirus.

launching soon · one-time purchase, not a subscription · 30-day money-back · local-only, zero telemetry

Sources & further reading

Related reading

All insights