What to Clean Before Using Migration Assistant
Before you transfer data from Mac to Mac with Migration Assistant, clear what the new Mac would only rebuild anyway: app caches, the Trash, Xcode DerivedData and other build output you can regenerate. Keep what may be the only copy of something: iPhone and iPad backups you have not verified elsewhere, app data such as mail, chats, notes libraries and project folders, and anything you are unsure about. Then compare the size of what you are about to move with the free space on the new Mac.
The reason is simple. Migration Assistant moves your user account wholesale, and the bulk of a long-used account is often material nobody needs on day one. Every gigabyte of cache it copies is a gigabyte of transfer time and a gigabyte the new Mac has to store or rebuild.
What Migration Assistant copies
Apple's Migration Assistant guide says it transfers documents, apps, user accounts and settings, and that it calculates how much storage is used by applications, user accounts, files, folders and settings before you start. On the new Mac you open Applications › Utilities › Migration Assistant, choose From a Mac, Time Machine, or startup disk, and on the old Mac choose To another Mac. Each category has a checkbox, and you can expand a category to pick specific items.
It does not delete anything from the old Mac, so the old one stays a fallback until you are satisfied.
Apple does not publish a list of folders inside an account that it skips. Plan as if your whole home folder comes along, including ~/Library, which is where most caches, app support data and device backups live. That is the part of the account that grows quietly for years.
Two more of Apple's notes matter for timing. Large transfers might need hours to complete and might seem to pause occasionally, and antivirus, firewall or VPN software on either Mac should be turned off until the transfer is done. If an account with the same name already exists on the new Mac, you are asked to replace it or rename the incoming one, so decide that before you start.
Why leftovers make the move slower and the new Mac fuller
Three kinds of data account for most of the waste:
| What | Where it usually is | Why it costs you |
|---|---|---|
| App and browser caches | ~/Library/Caches, cache folders in Application Support and Containers |
Copied byte for byte, then often rebuilt by the new version of the app anyway |
| Developer build output | ~/Library/Developer/Xcode/DerivedData, project build, dist, target and .next folders |
Large, many small files, and tied to the old machine's toolchain |
| Leftovers of removed apps | ~/Library/Application Support, ~/Library/Containers, ~/Library/Preferences |
Data for apps you no longer have, carried onto a clean Mac |
None of it helps you on the new Mac, and the new Mac starts its life with those leftovers already in its Library, which is the opposite of what most people want from a new machine.
The Trash is a fourth case. Files in it are still on disk until you empty it, so empty it before you measure the account.
Measure before you clean
On the old Mac, open Apple menu › System Settings › General › Storage for the overview Apple describes in its storage guide. For your account specifically, a few read-only commands show where the size is:
du -sh ~ 2>/dev/null
du -sh ~/Library/Caches ~/Library/Developer ~/Library/Application\ Support/MobileSync 2>/dev/null
du may report permission errors for protected folders; those mean Terminal lacks access, not that the folders are empty. A disk map is easier to read than a list of numbers; how to find large files on Mac covers both routes.
Safe to clear first
These rebuild themselves or are already copies:
- The Trash. Look through it once, then empty it. If it refuses, see Mac Trash won't empty.
- App caches. Quit the app, then clear only its cache folders. Which Mac caches are safe to delete explains how to tell a cache from data that only looks like one.
- Xcode DerivedData and simulator leftovers. Xcode rebuilds DerivedData on the next build. How to clean up Xcode lists what else under
~/Library/Developercan go and what should stay. - Project build output you can regenerate with one command, such as
build,dist,targetor.nextfolders in projects that build cleanly from source. - Installers you have already used, such as old
.dmgfiles in Downloads; see can you delete DMG files.
Package manager caches (npm, pip, Homebrew downloads and similar) are a judgment call. They are re-downloadable, but the first install on the new Mac then fetches everything again. If your connection is slow, leave them; if they are large and you plan to reinstall tools fresh, clearing them is fine. How to clear developer caches covers each one.
Keep, or move deliberately
iPhone and iPad backups. They live in ~/Library/Application Support/MobileSync/Backup and can be very large. A backup may be the only full copy of a phone, so do not delete one just to make the transfer smaller. If you want it off the old Mac, first confirm that the device has a newer backup in iCloud or that you have archived the restore point you need. Then remove whole backups through Finder's Manage Backups, never individual files inside them. How to delete iPhone backups on Mac has the steps.
App data that is not cache. Mail and Messages databases, chat history, notes and photo libraries, password manager vaults, virtual machines and project folders are data, even when they sit in ~/Library. If an app keeps its data on a server, signing in on the new Mac may be enough, but check that before you delete anything locally.
Anything you cannot identify. Migration Assistant copying an unknown folder costs some time; deleting it may cost something you cannot get back. Leave it and decide later, on the new Mac, when you know what you actually use.
Check space on the new Mac
Before you start, open System Settings › General › Storage on the new Mac and note the available space. Migration Assistant shows how much storage each category needs once it has calculated the transfer. If the total is close to what the new Mac has free, clear more on the old Mac first, or uncheck a category or item and copy it later by hand. A Mac that starts at nearly full storage has less room for updates and caches from the first day.
If you would rather start clean, you can also set up the new Mac as new and copy only your documents and the app data you need. That takes more manual work, and it leaves every old cache and leftover behind.
How Mole fits this job
Mole's Clean is useful as the "clear first" step on the old Mac. It scans app caches, developer tools and Trash in one pass and lets you review each row before anything is removed:
- Developer Tools lists Xcode DerivedData leaves and a default-selected Xcode Data for Deleted Projects group for DerivedData whose project folder no longer exists. Project build folders it finds, such as
target,distor.next, appear as rows you tick yourself. - Package caches such as npm's
_cacache, Yarn, pnpm and Conda packages are listed but left unticked, because the next install has to download them again. - Trash empties the Trash permanently, so check it first.
- iPhone and iPad backups appear under Manage Separately with their last backup date, for information only. Clean never selects or removes them; that stays your decision in Finder.
Its Analyze view is the disk map for the measuring step. Migration itself happens in Apple's Migration Assistant, not in Mole.
Verify after the move
On the new Mac, open the apps you rely on most and check that their data arrived: mail, messages, notes, your password manager and any project that matters. Leave the old Mac untouched for a while; it is still a complete copy. Caches will grow back as you use the new machine, which is normal and not a sign that the cleanup failed.
FAQ
What does Migration Assistant transfer from Mac to Mac?
Apple says it transfers documents, apps, user accounts and settings. You can uncheck whole categories or expand them to choose specific items, and it does not delete anything from the old Mac.
Should I delete caches before using Migration Assistant?
Clearing app caches, Xcode DerivedData and the Trash first is safe and makes the transfer smaller, because the new Mac rebuilds caches as needed. Quit each app before clearing its cache, and do not treat app data or device backups as cache.
Does Migration Assistant copy iPhone backups?
Apple does not publish a list of excluded folders, so assume your whole home folder moves, including ~/Library/Application Support/MobileSync/Backup. Keep a backup unless you have confirmed a newer one exists elsewhere.
How long does it take to transfer data from Mac to Mac?
Apple says large transfers might need hours and might seem to pause occasionally. Moving fewer gigabytes is the part you control, which is why clearing caches and build output first helps.
What if the new Mac does not have enough space?
Clear more on the old Mac, or uncheck categories or items in Migration Assistant and copy them later. Compare the size Migration Assistant calculates with the free space shown in System Settings › General › Storage before you start.