Where Does Vagrant Store Boxes and Data?
Where Vagrant keeps boxes, plugins, and global state via VAGRANT_HOME on each desktop OS.
Last updated
Vagrant keeps global state in VAGRANT_HOME, defaulting to ~/.vagrant.d on Linux and macOS and %USERPROFILE%/.vagrant.d on Windows. Downloaded boxes, the plugin gems, and the global Vagrantfile all live inside.
Project folders only hold a .vagrant stub with the VM id. The heavy gigabytes sit in the home folder, which is why C: fills silently on Windows. Relocate with the env var before the next vagrant up.
Where Vagrant stores this, by platform
~/.vagrant.d/
Boxes, plugins (gems/), rgloader, and the global Vagrantfile. Override with VAGRANT_HOME. Per-project .vagrant/ dirs only store VM ids.
%USERPROFILE%\.vagrant.d\
Same boxes and plugins layout. VirtualBox disks follow this root; move via VAGRANT_HOME to spare the system drive.
~/.vagrant.d/
Same layout as Linux. Libvirt and Parallels boxes share the same home, so pruning covers every provider at once.
Frequently asked questions
How do I free disk space used by boxes?
Delete versioned box folders under boxes/ for providers you no longer use, or run vagrant box prune. Keep the global Vagrantfile and keys. Per-project .vagrant folders hold VM ids and stay with their project.
Can I move Vagrant data off a full drive?
Set VAGRANT_HOME to a roomy drive before installing boxes. Move the existing folder over and export the variable in your shell profile. VirtualBox or libvirt disk images follow the variable, so one move covers all providers.
Notice an outdated path? Let us know.