macOS offers several ways to search: Finder, Spotlight, the command line, and tools that build their own index. The useful skill is knowing which index handles which query.

Finder search

Press ⌘F in a Finder window or click the search field. Finder's search scope is configurable and defaults to This Mac; narrow it to the current folder in the scope bar, or change the default in Finder → Settings → Advanced. Results can be previewed and opened without leaving the file manager.

Refine with suggestions or the + button (kind, date modified, name). Filename and content results generally depend on Spotlight's index. Content matches need an importer, so a scanned PDF may appear by name but not by its words. Folders in Spotlight's privacy list are skipped by This Mac search too.

Best when you know roughly where the file lives and want to narrow results, or confirm with Quick Look.

Spotlight (⌘Space)

Spotlight is the system index, and ⌘Space opens it. Apps, filenames, metadata, Mail, Calendar, Notes, document text, settings, and actions share one index. When you remember a phrase but not the file, Spotlight is usually right.

The system maintains it; importers and exclusion rules decide what enters. Adjust categories and privacy under System Settings → Spotlight, and use mdutil when the index misbehaves. Spotlight also has a CLI: mdfind queries the same index and is subject to the same importers and exclusions. If a UI search misses, check its category, then exclusions and index status; see Spotlight not finding files.

Terminal: mdfind and find

mdfind queries Spotlight's index for indexed filenames, metadata, and content. find ignores the index and walks a path, which suits Spotlight-excluded folders or locations outside the index.

mdfind -name "report"
mdfind -onlyin ~/Documents "budget"
mdfind "kMDItemFSName == '*.pdf'c"
find ~/Projects -type f -name "*.ts"

-name limits mdfind to filenames, -onlyin scopes it to a directory, predicate syntax combines metadata conditions, and a trailing c makes it case-insensitive. With find, -name is case-sensitive and -iname is not; -type f returns regular files. find descends into .git, node_modules, and hidden directories by default, so large trees can be slow; use -prune.

mdfind only returns what the index knows: fast, never more complete. find is thorough but touches the disk each time. Both compose with xargs or loops.

macEverything

macEverything is a filename search tool for macOS. On first launch it indexes your home folder and /Applications, matching filenames only. It excludes ~/Library, node_modules, and .git by default: caches, dependencies, and version history would flood results.

The index stays local; queries never leave your Mac, and FSEvents drives incremental updates. ⌥Space opens a floating search bar—type, choose with arrows, press Return. ⌥⇧F opens the results window for sorting, multi-select, Space for Quick Look, and right-click copy of the file, path, or file name. The bundled CLI reads the same index:

macEverything query "invoice"
macEverything status

Full Disk Access is optional. Without it, the status bar shows a gap count; open it to see missed folders rather than losing them silently. After granting access, restart the engine (macEverything stop && macEverything start); reopening the app is not enough. The CLI must be on your PATH, or use Contents/MacOS/macEverything.

Limits: no external or network drives; no regular expressions; it supports only wildcard, path, and whole-word filters. Full index scope: Everything for Mac.

On an Apple M5 test set of about 1.28 million entries, the first scan of one million files takes 1.0–1.6 seconds, P99 latency is 2.9–3.6 ms, and changes are searchable within 0.3 seconds; the UI keeps about 136 MB of memory resident.

It complements Spotlight: Spotlight searches content, Mail, and system actions; macEverything answers one question—I know the filename, where is it?

Comparison table

The main differences are index source and search target.

Search capabilities of Finder, Spotlight, mdfind/find, and macEverything
MethodScopeSpeedSyntaxExclusionsPrivacy
FinderThis Mac (narrowable to the current folder); content needs Spotlight metadataIndexed results quick; unindexed locations slower or incompleteKeywords plus suggestions and filtersFollows Spotlight privacy; protected locations may be unreadableLocal queries, system Spotlight index
SpotlightIndexed local volumes; filenames, metadata, Mail, Calendar, Notes, supported textIndexed items usually return instantly; content depends on importersKeywords and category filters; mdfind for predicatesSpotlight privacy, .noindex, .metadata_never_index, unindexed or disabled volumesLocal index; Spotlight Suggestions may send queries to Apple if enabled
mdfind / findmdfind queries the system index; find walks any readable pathmdfind is fast on indexed data; find depends on tree sizeCLI; mdfind supports -name, -onlyin, predicates; find expressionsmdfind honors Spotlight rules; find has none by default and enters node_modules/.gitLocal execution; mdfind reads the system index
macEverythingHome and /Applications; filenames only; no external/network drivesM5, 1.28M entries: first scan 1.0–1.6 s, P99 2.9–3.6 ms, changes searchable in 0.3 sWildcard, path, and whole-word filters; no regular expressions~/Library, node_modules, .git; fixed scopeLocal index; queries stay offline

Choose by workflow

Locating a file. If it is in the current project, narrowing Finder to the folder wins. If you know the name but not the location, use macEverything via ⌥Space. If it may sit outside your home folder or /Applications—outside macEverything's index scope—use Spotlight or find.

Finding content. Use Spotlight for a remembered phrase, topic, or email; mdfind when results feed a script. Finder's content search works too but depends on index quality.

Automation. mdfind fits data the system index covers and prints one path per line. find gives deterministic traversal unaffected by Spotlight exclusions, at the cost of speed. macEverything query reads the local filename index.

Spotlight-excluded folders. Neither mdfind nor the Spotlight UI enters them. Use find if you have read permission, or browse in Finder. macEverything covers only home and /Applications, with exclusions—not a general indexer.

Quick start

Download the DMG (6.9 MB) and drag macEverything into Applications. It requires macOS 13 or later on Apple silicon. The first launch indexes in the background. ⌥Space opens the floating bar; ⌥⇧F opens the results window. The index stays on your Mac.