diff --git a/Dockerfile b/Dockerfile
index d3edfcbeb..b887bcc4e 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -19,7 +19,7 @@ WORKDIR /code/
 
 # FIXME(chris-crone): virtualenv 16.3.0 breaks build, force 16.2.0 until fixed
 RUN pip install virtualenv==16.2.0
-RUN pip install tox==2.1.1
+RUN pip install tox==2.9.1
 
 ADD requirements.txt /code/
 ADD requirements-dev.txt /code/
diff --git a/appveyor.yml b/appveyor.yml
index 98a128a8a..04a40e9c2 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -4,7 +4,7 @@ version: '{branch}-{build}'
 install:
   - "SET PATH=C:\\Python37-x64;C:\\Python37-x64\\Scripts;%PATH%"
   - "python --version"
-  - "pip install tox==2.9.1 virtualenv==15.1.0"
+  - "pip install tox==2.9.1 virtualenv==16.2.0"
 
 # Build the binary after tests
 build: false
diff --git a/script/build/windows.ps1 b/script/build/windows.ps1
index 14c75762b..4c7a8bed5 100644
--- a/script/build/windows.ps1
+++ b/script/build/windows.ps1
@@ -16,7 +16,7 @@
 #
 # 4. In Powershell, run the following commands:
 #
-#        $ pip install 'virtualenv>=15.1.0'
+#        $ pip install 'virtualenv==16.2.0'
 #        $ Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
 #
 # 5. Clone the repository:
diff --git a/script/setup/osx b/script/setup/osx
index ff460d392..d8613e864 100755
--- a/script/setup/osx
+++ b/script/setup/osx
@@ -36,7 +36,7 @@ if ! [ -x "$(command -v python3)" ]; then
   brew install python3
 fi
 if ! [ -x "$(command -v virtualenv)" ]; then
-  pip install virtualenv
+  pip install virtualenv==16.2.0
 fi
 
 #