What's Taking Up Space on My Mac? Quick Storage Analysis Guide
“Your disk is almost full.”
You’ve seen this notification too many times. You delete a few files. The warning goes away for a week. Then it’s back.
Your Mac says you have 500 GB of storage. You have 3 GB left. What’s eating the other 497 GB?
Here’s how to find out—and reclaim your space.
Why Mac Storage Fills Up Mysteriously
Common culprits:
- System Data — Cached files, app data, iOS backups (10-100+ GB)
- Photos/Videos — Original quality photos from iCloud (50-200+ GB)
- Developer files — Xcode derived data, npm cache, Docker images (20-100+ GB)
- Downloads folder — Old installers, archives you forgot about (5-50 GB)
- Time Machine snapshots — Local backups eating disk space (10-50 GB)
- Mail attachments — Years of email attachments downloaded locally (5-30 GB)
- Application caches — Browser cache, Spotify cache, etc. (10-50 GB)
The problem: macOS shows categories (System, Applications, Documents), but doesn’t tell you specifically which files or folders are using space.
Example: “System Data” shows 150 GB. Is it iOS backups? Caches? Logs? You don’t know without digging.
Lesson: Built-in tools show what is using space, not where or how to fix it.
Built-in Method 1: Storage Management
macOS includes a basic storage analyzer. Here’s how to use it:
Step 1: Open Storage Management
- Click the Apple menu → System Settings (or System Preferences)
- Click General → Storage (or just Storage on older macOS)
- Wait for the bar chart to load (30-60 seconds)
Step 2: Understand the Categories
What you’ll see:
- System Data — macOS system files, caches, logs, iOS backups
- Documents — Files in Desktop, Documents, Downloads
- Applications — Installed apps
- Photos — Photos library (iCloud originals if downloaded)
- Music, Movies, TV — iTunes/Music library, Apple TV downloads
- Mail — Mailbox data and attachments
- iCloud Drive — Locally synced iCloud files
- Messages — iMessage attachments and media
- Other Users — Other macOS accounts on this Mac
The problem with categories:
- “System Data” is a black box — Could be 5 GB or 150 GB. No breakdown.
- No file-level detail — You see “Documents: 80 GB” but not which documents.
- No visual treemap — Hard to understand what’s using the most space.
Step 3: Use Built-in Recommendations
Click “i” next to each category for Apple’s suggestions:
System Data:
- Remove Time Machine snapshots
- Clear browser caches
- Delete old iOS backups (~/Library/Application Support/MobileSync/Backup/)
Documents:
- Use “Optimize Storage” (moves old files to iCloud)
- Empty Trash
- Review large files
Applications:
- Uninstall unused apps
Limitations:
- Recommendations are generic (not personalized to your actual usage)
- Doesn’t identify specific large files
- Requires manual navigation to delete files
Built-in Method 2: Spotlight Search for Large Files
Spotlight can find large files, but it’s slow and clunky.
How to Find Files > 1 GB:
- Open Spotlight (Cmd + Space)
- Type:
kind:document size:>1GB - Browse results
Other search patterns:
kind:movie size:>500MB
kind:image size:>100MB
kind:pdf size:>50MB
Limitations:
- No visual representation — Just a list of files
- Slow for large drives — Spotlight takes time to index
- No folder-level analysis — Can’t see “this folder has 50 GB total”
- Tedious manual searching — Have to repeat searches for different sizes/types
Lesson: Spotlight finds individual files, but doesn’t give you the big picture.
Built-in Method 3: Terminal Commands (Advanced)
For developers comfortable with Terminal, you can find large files manually:
Find Largest Files in Home Directory:
du -h ~ | sort -rh | head -n 20
What this does:
du -h ~— Disk usage of home directory (~), human-readablesort -rh— Sort by size, largest firsthead -n 20— Show top 20 results
Output example:
147G /Users/yourname
52G /Users/yourname/Library
25G /Users/yourname/Library/Developer/Xcode/DerivedData
18G /Users/yourname/Downloads
12G /Users/yourname/Library/Caches
Find Largest Files (Not Folders):
find ~ -type f -size +1G -exec ls -lh {} \; | awk '{print $5, $9}'
What this does:
find ~ -type f -size +1G— Find files (not folders) larger than 1 GBls -lh— List in human-readable formatawk '{print $5, $9}'— Extract size and file path
Limitations:
- Not user-friendly — Requires Terminal knowledge
- No visual representation — Just text output
- Slow for large drives — Can take minutes to complete
- Doesn’t show folder hierarchy — Hard to understand context
When to use: Quick one-off check for a specific folder.
Built-in Method 4: Finder “Calculate All Sizes”
Finder can show folder sizes, but you have to enable it:
How to See Folder Sizes in Finder:
- Open Finder
- Press Cmd + J (Show View Options)
- Check “Calculate all sizes”
What you’ll see:
- File/folder sizes displayed in list view
Limitations:
- Extremely slow — Finder calculates sizes one by one
- No sorting by size — Can’t easily see largest folders first
- No treemap visualization — Still hard to spot space hogs
Lesson: Finder wasn’t designed for storage analysis.
The Problem with Built-in Tools
All built-in methods have the same core issues:
- No visual hierarchy — Can’t see the “tree” of where space is used
- Slow analysis — Takes minutes to scan large drives
- No actionable insights — Doesn’t suggest what to delete
- Manual cleanup — Have to delete files one by one in Finder
What you actually need:
- Visual treemap — See proportional space usage at a glance
- Fast scanning — Analyze 500 GB in seconds, not minutes
- Drill-down navigation — Click folders to see what’s inside
- Quick actions — Delete or reveal files directly from the analyzer
This is what disk space analyzers solve.
The Better Solution: Visual Disk Analyzers
Third-party disk analyzers scan your drive and show space usage as an interactive treemap. Here’s an honest comparison:
1. Storage Peek (This is mine)
What it does:
- Scans entire drive in ~10 seconds
- Visual treemap (bigger rectangles = more space)
- Click rectangles to drill down into folders
- Right-click to reveal in Finder or move to Trash
- Color-coded by file type
- Menu bar widget for at-a-glance storage stats
Why it’s fast:
- Multi-threaded scanning (uses all CPU cores)
- Optimized for SSDs (parallel directory traversal)
- Caches results (re-scan only changed folders)
Pricing: Free
Best for: Quick visual analysis without learning Terminal commands. See exactly what’s using space in seconds.
2. DaisyDisk
What it does:
- Beautiful sunburst visualization (circular treemap)
- Smooth animations and polished UI
- Scan results saved for comparison over time
- Admin mode to scan system files
Why it’s popular:
- Gorgeous design (Apple Design Award winner)
- Intuitive interaction model
- Reliable and actively maintained
Pricing: $9.99 (one-time purchase)
Best for: Users who want the most polished experience and don’t mind paying $10.
3. Disk Inventory X (Free)
What it does:
- Classic treemap visualization
- Fast scanning
- Detailed file info panel
Limitations:
- Not updated since 2013 (still works on modern macOS)
- Outdated UI — Feels like software from 2010
- No modern macOS features (no Dark Mode, no menu bar widget)
Pricing: Free (open source)
Best for: Users who want a free tool and don’t care about modern design.
4. OmniDiskSweeper (Free)
What it does:
- Simple list-based view (sorted by size)
- Shows folder hierarchy
- Quick reveal/delete actions
Limitations:
- No treemap visualization — Just a list
- Slower than modern analyzers — Single-threaded scanning
- Basic UI — Functional but not intuitive
Pricing: Free
Best for: Users who prefer list view over treemaps.
5. GrandPerspective (Free, Open Source)
What it does:
- Treemap visualization
- Multiple color schemes
- Filter by file type/size
Limitations:
- Slow scanning — Not optimized for modern SSDs
- Clunky navigation — Harder to drill down than DaisyDisk or Storage Peek
Pricing: Free (open source)
Best for: Open-source enthusiasts who want a free treemap tool.
My Recommendation (Honest Comparison)
| Tool | Best For | Pros | Cons | Price |
|---|---|---|---|---|
| Storage Peek | Fast, affordable visual analysis | Fastest scanning, modern UI, menu bar widget | Fewer features than DaisyDisk | $2.99 |
| DaisyDisk | Polished UX, willing to pay | Beautiful design, smooth animations | $9.99 cost | $9.99 |
| Disk Inventory X | Free + don’t care about design | Free, fast enough | Outdated UI, no updates since 2013 | Free |
| OmniDiskSweeper | Prefer list view | Simple, reliable | No treemap, slower | Free |
| GrandPerspective | Open-source advocates | Free, customizable | Slow, clunky | Free |
If I had to pick one:
- Free: Storage Peek (fast + modern) or Disk Inventory X (tried and true)
- Paid: DaisyDisk if you value design and smooth animations
Avoid: Buying “Mac cleaner” apps (CleanMyMac, CCleaner) — they’re expensive ($30-90/year) and overpromise. A simple disk analyzer is all you need.
How to Actually Clean Up Space
Once you’ve found what’s using space, here’s how to clean it up safely:
1. Developer Files (20-100 GB)
Xcode Derived Data:
rm -rf ~/Library/Developer/Xcode/DerivedData
Xcode regenerates this automatically. Safe to delete.
npm/yarn cache:
npm cache clean --force
yarn cache clean
Homebrew cache:
brew cleanup
Docker images:
docker system prune -a
CocoaPods cache:
pod cache clean --all
2. Browser Caches (5-20 GB)
Safari:
- Safari → Preferences → Advanced → Check “Show Develop menu”
- Develop → Empty Caches
Chrome:
- Settings → Privacy and security → Clear browsing data
- Select “Cached images and files” → Clear data
Firefox:
- Preferences → Privacy & Security → Cookies and Site Data → Clear Data
3. Application Caches (10-50 GB)
Spotify cache:
rm -rf ~/Library/Caches/com.spotify.client
Slack cache:
rm -rf ~/Library/Application\ Support/Slack/Cache
rm -rf ~/Library/Application\ Support/Slack/Service\ Worker/CacheStorage
VS Code extensions:
rm -rf ~/.vscode/extensions
(Reinstall extensions you actually use)
4. iOS Backups (10-100 GB)
Location:
~/Library/Application Support/MobileSync/Backup/
To delete:
- Open Finder
- Press Cmd + Shift + G
- Paste path above
- Delete old backups (keep most recent one)
Better solution: Use iCloud backups instead of local backups.
5. Time Machine Local Snapshots (10-50 GB)
Check snapshots:
tmutil listlocalsnapshots /
Delete old snapshots:
tmutil deletelocalsnapshots 2024-01-15-123456
(Replace with snapshot date from list)
Or let macOS manage automatically: Time Machine deletes old snapshots when disk space is low. Don’t manually delete unless desperate.
6. Downloads Folder (5-50 GB)
Common space wasters:
- Old .dmg installers (delete after installing app)
- .zip archives (extract and delete archive)
- Large PDFs (move to Documents or cloud storage)
Quick cleanup:
- Open Downloads folder
- Sort by Size (Cmd + J → Arrange by Size)
- Delete installers and archives
7. Duplicate Files (5-20 GB)
Use Gemini 2 (paid app) or Duplicate File Finder (free) to find duplicates.
Manual method:
fdupes -r ~/Documents
(Requires brew install fdupes)
8. Old Mail Attachments (5-30 GB)
Mail.app stores attachments locally:
~/Library/Mail/V10/MailData/Attachments/
To clean up:
- Open Mail
- Mailbox → Erase Deleted Items
- Preferences → Accounts → Select account → Advanced → Uncheck “Keep copies of messages for offline viewing” (IMAP accounts)
9. Photos Library (50-200 GB)
If using iCloud Photos:
- Photos → Preferences → iCloud
- Check “Optimize Mac Storage”
- macOS keeps thumbnails locally, full-res in iCloud
If not using iCloud:
- Move old photos to external drive
- Use Photos → File → Export to save originals
10. Large Log Files (1-10 GB)
System logs:
sudo rm -rf /private/var/log/*
(macOS regenerates logs automatically)
Application logs:
rm -rf ~/Library/Logs/*
Safe to delete: Yes, logs are for debugging. Apps create new logs as needed.
What NOT to Delete
Dangerous paths to avoid:
/System/— System files (breaks macOS)/Applications/(unless uninstalling known apps)~/Library/Preferences/— App settings~/Library/Keychains/— Saved passwords~/Library/Application Support/(unless you know what you’re deleting)
Rule of thumb: If you don’t recognize it, don’t delete it. Use a disk analyzer to identify safe targets (like caches and old downloads).
Preventing Future Storage Crises
1. Enable “Optimize Storage”
System Settings → General → Storage:
- ✅ Store in iCloud (moves old files to cloud)
- ✅ Optimize Storage (removes watched movies/TV)
- ✅ Empty Trash Automatically (deletes files after 30 days)
- ✅ Reduce Clutter (shows large/old files to review)
2. Use External Drives for Large Media
- Move Photos/Music/Videos to external SSD
- Keep only active projects on internal SSD
3. Clean Up Monthly
Set a calendar reminder to:
- Empty Downloads folder
- Clear browser caches
- Delete old Xcode derived data (if developer)
4. Monitor Storage Continuously
Use a menu bar app (Storage Peek, DaisyDisk) to see storage usage at a glance. Catch problems before disk fills up.
FAQ
What is “System Data” and why is it so large?
System Data (formerly “Other”) includes:
- macOS system files and caches
- iOS device backups (~/Library/Application Support/MobileSync/Backup/)
- Time Machine local snapshots
- Spotlight index
- App caches (browser, Slack, Spotify, etc.)
Normal size: 20-50 GB Bloated size: 100-200+ GB (indicates old backups or excessive caches)
To reduce:
- Delete old iOS backups
- Clear browser/app caches
- Remove Time Machine snapshots
- Reboot (clears some temporary caches)
Should I use “Clean My Mac” or similar apps?
Honest answer: Mostly unnecessary.
What they do:
- Scan for caches/logs (you can do this manually)
- Uninstall apps (Finder can do this)
- Find large/duplicate files (free disk analyzers do this)
Cost: $30-90/year (subscription)
Better approach:
- Use free disk analyzer (Storage Peek, Disk Inventory X)
- Manually delete caches (see “How to Clean Up” section above)
- Use AppCleaner (free) to fully uninstall apps
Exception: If you have zero technical knowledge and want one-click cleanup, CleanMyMac X is reputable (but overpriced).
Why does my Mac say storage is full but I just deleted files?
Cause 1: Trash not emptied
- Files in Trash still count as used space
- Finder → Empty Trash
Cause 2: Time Machine snapshots
- macOS keeps local backups even after deleting files
- Snapshots auto-delete when space is needed
- Or manually delete:
tmutil deletelocalsnapshots [date]
Cause 3: iOS backups
- Old iPhone/iPad backups eating 50+ GB
- Delete in Finder (see “iOS Backups” section above)
Cause 4: “Purgeable” space
- macOS marks some files as “purgeable” (can be deleted if needed)
- Storage Management shows this separately
- macOS auto-purges when installing large apps
How do I find duplicate files on Mac?
Free tools:
- Gemini 2 (free trial, then $19.95)
- dupeGuru (free, open source)
- fdupes (Terminal:
brew install fdupes)
Manual method:
- Use disk analyzer (Storage Peek, DaisyDisk)
- Look for folders with many files of same size
- Manually compare and delete
Common duplicate sources:
- Downloads folder (same file downloaded twice)
- Photos (imported from multiple sources)
- Music (iTunes + local files)
Is it safe to delete ~/Library/Caches?
Yes, but…
- Apps will recreate caches as needed
- You’ll lose some app preferences (like recently opened files)
- Some apps may launch slower first time (rebuilding cache)
Better approach:
- Delete specific app caches (see “Application Caches” section)
- Don’t blindly delete entire ~/Library/Caches folder
Nuclear option (if disk is critically full):
rm -rf ~/Library/Caches/*
Then reboot. Apps will regenerate caches.
Conclusion
“What’s taking up space on my Mac?” has a simple answer: large files in unexpected places.
Action plan:
- Use a disk analyzer — Storage Peek ($3) or DaisyDisk ($10)
- Identify space hogs — Developer files, caches, old backups, downloads
- Clean up safely — Follow the “How to Clean Up” section above
- Prevent future problems — Enable “Optimize Storage”, monitor monthly
Quick wins for developers:
- Delete Xcode DerivedData (20-50 GB)
- Clear npm/yarn cache (5-20 GB)
- Remove old Docker images (10-50 GB)
Quick wins for everyone:
- Empty Downloads folder (5-50 GB)
- Delete old iOS backups (10-100 GB)
- Clear browser caches (5-20 GB)
Related guides:
- Mac Storage Management Guide
- How to Clean Xcode Cache (coming soon)
- Mac Storage ‘Other’ Explained (coming soon)
Want instant storage analysis? Try Storage Peek →