Where Does Pip Install Packages? A Developer's Guide to Python Package Locations

When you run pip install requests or any other package name, pip quietly does its job — but where exactly does everything end up? The answer isn't always the same folder, and understanding the logic behind pip's installation paths can save you hours of debugging, especially when packages seem to "disappear" or conflict with each other.

How Pip Decides Where to Install

Pip doesn't pick a random folder. It installs packages relative to the Python interpreter it's associated with. That's the core rule. When you type pip install, pip checks which Python environment is currently active and drops the package into that environment's site-packages directory.

The site-packages folder is Python's standard location for third-party packages — it's where anything that isn't part of Python's core standard library lives after installation.

The Default Installation Path by Operating System

The exact path varies by OS and Python version, but the general patterns are consistent:

Operating SystemTypical site-packages Path
WindowsC:Users<username>AppDataLocalProgramsPythonPython3xLibsite-packages
macOS (system Python)/Library/Python/3.x/site-packages
macOS (Homebrew Python)/usr/local/lib/python3.x/site-packages
Linux (system-wide)/usr/lib/python3/dist-packages or /usr/local/lib/python3.x/site-packages
Linux (user install)~/.local/lib/python3.x/site-packages

These paths aren't guaranteed to be identical on every machine — Python version, how Python was installed, and OS-level configuration all shift the exact directory.

How to Find the Exact Location on Your Machine 🔍

Rather than guessing, you can ask pip directly. Run this in your terminal: