The invisible 15 GB: pip and conda caches hiding on your Mac

Updated September 2026 · 6 min read

Every time you run pip install or conda install, the downloaded packages are cached locally so reinstalls are faster. Sensible in theory — except nobody ever clears that cache. If you've been working with Python for a year or more, you could be sitting on 5–20 GB of cached wheels, tarballs, and extracted packages you'll never use again.

Where the caches live

ToolCache locationWhat to check
pip~/Library/Caches/pippip cache info
conda~/miniconda3/pkgs or ~/anaconda3/pkgsconda clean --dry-run --all

Run those check commands first. The numbers are often surprising.

Clearing the pip cache

pip's built-in command:

pip cache purge

This removes all cached wheel files and source distributions. It's completely safe — pip will re-download packages next time you install them. Your installed packages are not affected at all; the cache is just a local copy of what was downloaded.

Want to see what's in there before you delete it?

pip cache list

This shows every cached package with its size. Useful if you want to spot particularly large items.

Clearing the conda cache

conda keeps both downloaded tarballs and extracted packages. To clean everything:

conda clean --all

This removes cached package tarballs, extracted packages, and any unused temporary files. conda will ask for confirmation before proceeding.

If you want to preview first:

conda clean --dry-run --all

When not to do this: if you work offline frequently and rely on cached packages for installs without internet, keep the cache. For most people connected to the internet, the cache is purely redundant.

Don't forget virtual environments

Every Python virtual environment has its own copy of installed packages — and old virtual environments from finished projects are pure waste. Common locations to check:

A single venv for a data science project can be 1–3 GB (NumPy, pandas, scikit-learn, PyTorch — they add up). If the project is done, delete the environment. You can always recreate it from requirements.txt.

What about pyenv, Poetry, and other tools?

If you use pyenv, you may have multiple full Python installations sitting in ~/.pyenv/versions/. Each one is 50–200 MB. List them with pyenv versions and uninstall any you no longer need.

Poetry keeps its own cache and virtualenvs. Check poetry cache list and poetry env list for cleanup opportunities.

The bigger picture

Python caches are just one slice of the developer storage pie. If you also use npm, Docker, or Homebrew, each tool has its own hidden stash. See our full developer caches cleanup guide for the complete walkthrough, or check node_modules cleanup if you also work with JavaScript.

Let Gigatidy find all the caches at once

Gigatidy scans your Mac for pip, conda, npm, Docker, and every other tool cache — and lets you clean them in one pass.

Meet Gigatidy →

FAQ

Will clearing pip cache break my installed packages?

No. The cache is just a local copy of downloaded files. Your installed packages live in your Python environment (or virtual environment) and are completely unaffected. pip will simply re-download packages next time you install something new.

Is conda clean --all safe to run?

Yes. It removes cached downloads and extracted packages that are no longer needed. Your active conda environments and their installed packages stay intact. conda asks for confirmation before deleting anything.

How much space can I expect to recover?

It depends on how long you've been using Python and how many packages you install. A year of active data science or web development work typically accumulates 5–15 GB in pip and conda caches combined — more if you use large packages like PyTorch or TensorFlow.