← All guides

Python's disk footprint

CacheCleaner guides · Updated July 18, 2026

Python junk comes in three layers: package manager caches (pip/uv/conda), per-project virtualenvs, and whole interpreter versions from pyenv. With PyTorch in a few venvs – several GB each – it outgrows most other ecosystems fast.

Caches – always safe

pip cache purge                  # ~/Library/Caches/pip
uv cache clean                   # uv's global cache
conda clean --all                # package archives + index cache

Forgotten virtualenvs

find ~ \( -name .venv -o -name venv \) -type d -prune -exec du -sh {} + 2>/dev/null | sort -rh | head -20

A venv is disposable by design – rm -rf .venv and recreate from requirements.txt/pyproject.toml when you return to the project.

Conda environments

conda env list
conda env remove -n old-experiment

pyenv versions – ⚠️ not caches

pyenv versions
pyenv uninstall 3.9.4

⚠️ Installed interpreter versions aren't regenerated automatically – remove only versions no project pins.

CacheCleaner scans pip/uv/conda caches, finds every virtualenv across your disk with its size, and lists pyenv versions and conda environments with ⚠️ marks – so cleaning Python junk is one informed pass, not archaeology.

Get CacheCleaner for Mac