Showing where a file was actually saved on a Mac
The Save button was clicked, the sheet slid away, and the document is now somewhere. Not lost, exactly. It has a name, it has a modification date, and something on this machine knows where it is. The problem is that nothing on screen is currently saying so. Searching for mac file location show tends to happen in that gap, and the answer depends entirely on which of three separate questions is being asked. Sorting those out first saves a lot of clicking, because the routes that answer one of them are useless for the other two.
Three questions hiding behind one search
The first question is about a single file: this one, the one saved four minutes ago, where did it land. This is a recency problem, and recency is the fastest thing on a Mac to query.
The second is about behavior: where does this application put files when nobody tells it otherwise. That is a settings problem, and the answer lives in the app rather than in Finder. An app that has been quietly writing to a folder for two years will keep doing it until its own preference changes.
The third is about representation: what is the location as a string that a shell, a script, or a chat window will accept. Finder is comfortable showing a location as a row of icons and reluctant to hand over the text, and the two are not the same thing.
Most articles on this topic answer the third question and leave the first two alone, which is why the search often gets repeated. The sections below take them in order.
Finding the file saved a minute ago
The document window itself knows where it lives. Command-clicking the file name in the title bar of most document based apps drops a menu listing every enclosing folder up to the volume, and choosing one opens that folder in Finder. This works in TextEdit, Preview, Pages, and any app that adopts the standard document architecture. It fails silently in apps that draw their own window chrome, which is worth knowing before concluding that the file is missing.
Finder has two recency routes. The Recents item in the sidebar shows recently opened and modified files across the machine, and selecting one and pressing Command+R jumps to the folder that contains it. In any ordinary folder window, switching to list view with Command+2 and Control-clicking the column headers adds a Date Added column, which is different from Date Modified in the one way that matters here: a file copied in yesterday keeps its old modification date and gets a fresh Date Added.
For downloads specifically, the Dock stack is faster than either. Control-clicking a file in the Downloads stack offers Show in Finder, which reveals the file selected in its real folder rather than in the stack's own view.
Screenshots have their own default and it is documented:
By default, screenshots save to your desktop with the name "Screen Shot [date] at [time]." You can change the default save location in the Screenshot app.
That is from Apple's support article on taking screenshots. The Screenshot app that Shift+Command+5 opens has an Options menu where the destination can be set to any folder, and a Mac that has had that setting changed will send screenshots somewhere the desktop never sees.
The default locations nobody picked
Every application ships with an opinion about where files go, and those opinions were formed without reference to how any particular person works.
Browsers keep their own download folder setting rather than following a system wide one, so a Mac can have Safari writing to Downloads, a second browser writing to the desktop, and a third writing to a project folder chosen once and forgotten. Messaging clients usually have a separate setting again for received attachments.
Office style applications add autosave and recovery directories that are deliberately kept out of the way, and a document recovered after a crash frequently reopens from one of those rather than from the folder it was originally saved to. Saving again at that point writes to the recovery location unless Save As is used explicitly.
The pattern worth internalizing is that there is no single system setting for this. Checking the file location settings of the four or five applications that produce most of the files is a one time job of about ten minutes, and it removes the majority of future instances of this question.
The save sheet is where the location was decided
Every one of these searches traces back to a moment when a save sheet was on screen and the destination was not read. The sheet is small by default, showing only a name field and a Where popup, and that compact form is what most people accept. Pressing the disclosure triangle beside the name field expands it into a full browser with a sidebar, a search field, and column view, and macOS remembers the expanded state per application from then on.
Two behaviors inside that sheet explain a large share of misplaced files. The Where popup does not start at a fixed folder. It starts at the last folder that particular app saved to, which means a single save into a temporary folder quietly becomes the default for everything saved afterwards. And the sheet accepts typed paths: Shift+Command+G opens a Go to Folder field inside the dialog, which takes a pasted path, expands a leading tilde, and completes folder names with the Tab key. A destination that is awkward to reach by clicking is usually one keystroke and a paste away.
The expanded sheet also lets a file be tagged at the moment of saving, which is the cheapest form of insurance available here. A file that carries a tag can be found later without knowing its folder at all, because tags are a sidebar row and a search term rather than a location. None of this helps with files already saved, but it stops the same question from arriving next week.
When an app says Documents and means something else
An application distributed through the Mac App Store runs sandboxed, and a sandboxed app's idea of the Documents folder is a folder inside its own container, not the one in the home folder. The real path looks like ~/Library/Containers/com.example.app/Data/Documents. The app's open and save dialogs will call it Documents, Finder will show it as Documents when the app reveals it, and a search of the home folder in list view will still find it. Typing ~/Documents in a terminal will not.
Localized display names cause a milder version of the same confusion. On a Mac set to a language other than English, the home folders appear translated in Finder while the directories on disk keep their English names. The name in the window is a label attached to the folder, not the folder's name.
| Where it appears to be | Where it is on disk | What breaks |
|---|---|---|
| Documents, in a sandboxed app | ~/Library/Containers/<bundle id>/Data/Documents |
Shell commands aimed at ~/Documents |
| iCloud Drive | ~/Library/Mobile Documents/com~apple~CloudDocs |
Scripts, backups that skip Library |
| A translated home folder name | The English directory name | Paths typed from what the window shows |
| An external volume | /Volumes/<volume name> |
Anything hardcoded after the volume is renamed |
| Desktop, with iCloud Desktop and Documents on | ~/Desktop, synced, contents possibly evicted |
Tools that expect the bytes to be present |
On the disk, but not on this Mac
The last row of that table is the one that produces the strangest symptom. With Desktop and Documents stored in iCloud Drive, files remain visible in Finder with their names and sizes intact while their contents live only in iCloud until something asks for them. Apple's documentation on adding Desktop and Documents to iCloud Drive describes the arrangement, and the visible marker is a small cloud icon with a download arrow beside the file name.
A file in that state is present as far as Finder is concerned and absent as far as most command line tools are concerned. Reading it triggers a download, which succeeds when the network is available and fails in ways that look like corruption when it is not. Anything that walks a directory tree quickly, including build scripts and archive utilities, can hit hundreds of these in a row.
The related case is a file on an external volume that is no longer mounted. Recents will still list it, Get Info will still show a location, and opening it produces an error naming a volume that is sitting in a drawer.
Questions only the terminal answers
Three questions are effectively unanswerable in Finder and trivial in a shell.
Which files changed in the last ten minutes, anywhere in the home folder, regardless of what created them: find ~ -newermt '-10 minutes' -not -path '*/Library/*' 2>/dev/null. This catches files written by processes that never appeared in a save dialog, which is the usual situation when an application, an installer, or a script produced the file.
Which files a running application currently has open: lsof -c Preview | grep /Users. When an app is holding a document open, this reports the path it is actually holding, which settles arguments about whether the open document and the file on disk are the same file.
Which files match a name or a piece of content anywhere the index covers: mdfind -onlyin ~ -name report uses the same index Spotlight uses, and mdfind 'kMDItemFSContentChangeDate >= $time.today' lists everything indexed that changed today.
| Route | Best question for it | Where it stops |
|---|---|---|
| Title bar Command-click | Where is this open document | Apps with custom window chrome |
| Recents, Date Added column | What arrived recently | Files older than the list length |
| Get Info | Where is this selected item | Shows display names, not a path |
find -newermt |
What changed in the last N minutes | Slow across a full disk, needs a shell |
lsof |
What is this process holding open | Only covers running processes |
mdfind |
Where is anything matching this | Nothing on unindexed volumes |
The pattern in that table is the reason this question keeps coming back. The precise answers live in a shell, the file that prompted the question lives in a folder window, and the two are separate applications with separate notions of where they currently are. Handing a location from one to the other means copying a path, switching windows, and pasting it, several times a day. A folder view and a shell that share a current directory remove that trip entirely, which is the arrangement described under Features, and the practical differences between the tools that offer it are laid out in Compared with other file managers.
What to change first
Open the file location setting in the two or three apps that produce most of the work and point them at the same folder, then learn Command-click on the title bar for everything else. If the remaining friction is carrying locations between a folder window and a terminal rather than finding them, that is a window count problem, and Atriens was built for that version of it.
Frequently asked questions
How do you see the full path of a file on a Mac?
Select the file and press Option+Command+C to copy its POSIX path to the clipboard. Get Info, opened with Command+I, shows the location under Where, but as localized display names rather than as a path. For the folder currently open, Option+Command+P turns on the path bar at the bottom of the Finder window.
Where do downloaded files go by default on a Mac?
Each browser keeps its own setting, so there is no single answer for the machine. Safari, Chrome, and Firefox each have a downloads location in their own settings, and they can point at different folders. Checking all of them takes a couple of minutes and explains most cases of a file that never appeared in the Downloads folder.
Why can the terminal not find a file that Finder is showing?
The two most common causes are sandboxed app containers and localized folder names. A Mac App Store app's Documents folder is inside ~/Library/Containers, not ~/Documents, and on a non-English system the folder names shown in Finder are translations of directories whose real names are still English. Copying the path with Option+Command+C gives the string the shell expects.
How do you find a file when the name has been forgotten?
Search by time instead of by name. In Finder, list view plus a Date Added column sorts by arrival. In a shell, find ~ -newermt '-30 minutes' lists everything written in the last half hour, including files created by processes that never showed a save dialog.