Alias vs Symlink on Mac: What’s the Difference?
macOS gives you two ways to make one file appear in two places: the Finder alias and the Unix symbolic link. They look similar — both are small pointer files with an arrow badge — but they fail in opposite ways. Pick the wrong one and your “shortcut” breaks the day you reorganize, or your app refuses to see it at all.
Two pointers, two philosophies
An alias is a Finder-native bookmark. When you right-click a file and choose Make Alias, macOS stores rich bookmark data about the target — not just its path, but its file-system identity. A symlink, created in Terminal with ln -s, is far dumber: it’s a tiny file containing nothing but a path, like a signpost with an address painted on it.
That one difference drives everything else.
The move test: aliases survive, symlinks break
Move or rename the original file and the two behave very differently:
- Alias: keeps working. Because the alias tracks the file’s identity, macOS finds the original even after you drag it to another folder or rename it. Only deleting the original (or losing the volume it lived on) breaks an alias — and even then Finder offers to Fix Alias by picking a new target.
- Symlink: breaks instantly. The link stored
/Users/you/Documents/report.pdf; if that exact path stops existing, the link points at nothing. Nothing offers to fix it — you delete it and make a new one.
The compatibility test: symlinks work everywhere, aliases don’t
Here the ranking flips. A symlink is resolved by the file system itself, so everything follows it: Finder, Terminal, every app, every script. That’s why symlinks are the tool for tricks like making a folder appear at a fixed path an app insists on.
An alias is only understood by Finder and standard Open/Save dialogs. In Terminal, an alias is just a small data file — try to cd into an alias of a folder and you’ll get “Not a directory”. Command-line tools, build scripts, and any app that takes a raw path can’t follow aliases at all.
Hard links, briefly — and which to choose
For completeness: a hard link (ln without -s) isn’t a pointer to a file at all — it’s a second name for the same data on disk. Delete one name and the other still holds the data. Hard links only work within one volume and macOS restricts them heavily for directories, so outside backup tools and version-control internals you’ll rarely want one.
The practical rule:
- Use an alias when you live in Finder and might reorganize later — see how to make an alias.
- Use a symlink when Terminal, apps, or scripts need to follow the link — see how to create a symlink with ln -s.
How to tell which one you’re looking at
In Finder they’re nearly identical — both carry the curved-arrow badge. Two quick checks settle it. First, press Cmd+I: an alias reports its Kind as Alias, while a symlink typically shows the kind of whatever it points to. Second, ask Terminal, which never lies about symlinks:
# a symlink shows an arrow to its target; an alias is just a file
ls -l ~/Desktop
# lrwxr-xr-x ... Projects -> /Users/you/Documents/Projects (symlink)
# -rw-r--r-- ... Report.pdf alias (alias)
Both kinds are safe to delete at any time — trashing the pointer never touches the original. That’s also the “undo”: made a link you regret, in either format? Drag it to the Trash and you’re back where you started. The one exception worth repeating: never run rm -rf on a directory symlink with a trailing slash, because the shell will follow it into the real folder and delete its contents.
If you’re comfortable linking folders, you’ll appreciate the rest of macOS’s hidden layer. Mainspring turns 90+ buried settings into labelled, one-click, fully reversible toggles — no Terminal required.
Try Mainspring free →Signed & notarized by Apple · 1-day free trial · $29 once