Why Spotlight gets stuck indexing on macOS Sonoma
Short answer: After every major macOS update — including the Sonoma point releases — Spotlight discards its old index and builds a new one because the metadata schema has changed. The mds_stores process (macOS's Metadata Server daemon) does this work in the background. It gets stuck when it encounters a folder it cannot finish indexing: a directory with millions of tiny files like a JavaScript node_modules folder, a corrupted Photos library entry, or a folder with a permission issue. If mds_stores is still at high CPU after 24 hours, something specific is blocking it — not just volume.
How to fix Spotlight indexing stuck on macOS Sonoma
Step 1: Check free storage space first
Click the Apple menu → About This Mac → Storage. If the startup volume shows less than 10 GB free, Spotlight cannot write its index database and will silently appear stuck with no error. This is extremely common on Indian MacBooks where iCloud Photos, WhatsApp Desktop backups, and Final Cut Pro libraries accumulate. Use macOS's storage management (Manage button in the Storage view) to identify large files. Free up space before running any index commands. See our related guide on macOS storage Other category cleanup for detailed steps.
Step 2: Identify and exclude problem folders from Spotlight
Open Activity Monitor and check if mds_stores is at high CPU. In a new Terminal window, run: sudo fs_usage -w mds_stores 2>&1 | grep -v '0.000' | head -50 — this shows which files mds_stores is actively trying to index. If you see a path repeating hundreds of times (like /Users/you/projects/node_modules or a Dropbox subfolder), that folder is the bottleneck. To exclude it: System Settings → Siri & Spotlight → Spotlight Privacy → click the "+" button and add that folder. Spotlight will stop indexing it immediately and mds_stores CPU will drop within minutes.
Step 3: Force a clean reindex with mdutil
Open Terminal and run these two commands in sequence:sudo mdutil -E / (erases the existing broken index)sudo mdutil -a -i on (re-enables indexing on all volumes)
This forces Spotlight to start fresh. The MacBook will run warmer and fans may spin up — this is normal and expected. Indexing takes 1–4 hours on a typical MacBook Air M2 with 256 GB SSD. Keep the MacBook plugged into AC power throughout; battery power throttles the mds_stores process and can extend the rebuild to 8–12 hours.
Step 4: The India angle — external drives and USB hubs slow indexing dramatically
Many Indian MacBook users keep a 1–4 TB external hard drive connected for video projects, Tally backups, or Time Machine. Spotlight indexes every connected volume by default, including slow USB 3.0 HDDs. A 2 TB external HDD can take 12–20 hours to index and keeps mds_stores at elevated CPU the entire time. The quick fix: System Settings → Siri & Spotlight → Spotlight Privacy, and add the external drive to the exclusion list. The internal drive indexes quickly; the external drive can be excluded permanently or re-added later if you need to search it. This single change often resolves what looks like a stuck index on MacBooks used in Indian offices and home studios.
When to call a repair service
When indexing still fails after a clean mdutil rebuild
If Spotlight returns no results even after running the mdutil reindex and waiting 4+ hours with the MacBook plugged in, the SSD may have a filesystem inconsistency. Boot into macOS Recovery (hold power button on M-series until options appear), open Disk Utility, and run First Aid on the startup volume. If First Aid reports errors it cannot repair, the drive needs professional data recovery attention before anything else. Our data recovery service handles macOS APFS volumes.
Typical repair cost in India
Software-only fix (mdutil reindex, privacy exclusion): covered under the ₹149 doorstep visit. SSD replacement if filesystem is corrupted beyond repair: ₹3,000–₹8,000 depending on MacBook model. Data recovery from failing SSD: ₹3,000–₹15,000 depending on data volume and recovery difficulty.
A note from the LRW Engineer Team
The single most common cause of permanently stuck Spotlight indexing we encounter on Indian MacBooks is a node_modules directory from a web development project. These can contain 100,000–500,000 tiny files, and mds_stores tries to index every single one. Adding your development projects folder to the Spotlight Privacy exclusion list immediately resolves high-CPU mds_stores on developer MacBooks. It does not affect your ability to search for files in other locations. WhatsApp us at 7702503336 if you need a walkthrough.