diff --git a/.appveyor.yml b/.appveyor.yml
index a5f8e4b4f0079d066cbd5fef62df3c0fa9687133..b1c709446fbe7fc00bf3482ab55b734d3caea379 100644
--- a/.appveyor.yml
+++ b/.appveyor.yml
@@ -9,9 +9,18 @@ matrix:
   fast_finish: true
 install:
   - git submodule update --init --recursive
+  - mkdir C:\projects\deps
+  - cd C:\projects\deps
+  - appveyor DownloadFile https://github.com/Kitware/CMake/releases/download/v3.20.1/cmake-3.20.1-windows-x86_64.zip -FileName cmake.zip
+  - 7z x cmake.zip -oC:\projects\deps > nul
+  - move C:\projects\deps\cmake-* C:\projects\deps\cmake
+  - rm cmake.zip
+  - set PATH=C:\projects\deps\cmake\bin;%PATH%
+  - cd C:\projects\liblava
 before_build:
   - mkdir build
   - cd build
+  - cmake --version
   - cmake -G "Visual Studio 16 2019" -A x64 ..
 build:
   project: $(APPVEYOR_BUILD_FOLDER)\build\$(APPVEYOR_PROJECT_NAME).sln
diff --git a/.travis.yml b/.travis.yml
index b0972c1487aabeb2ec56bc0031e4fa720f5726ec..676a5e82cc6daa333c24d7293c64566e9d78a310 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -24,9 +24,9 @@ before_install:
 install:
   - DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
   - mkdir ${DEPS_DIR} && cd ${DEPS_DIR}
-  - travis_retry wget --no-check-certificate https://github.com/Kitware/CMake/releases/download/v3.16.2/cmake-3.16.2-Linux-x86_64.tar.gz
-  - tar -xvf cmake-3.16.2-Linux-x86_64.tar.gz > /dev/null
-  - mv cmake-3.16.2-Linux-x86_64 cmake-install
+  - travis_retry wget --no-check-certificate https://github.com/Kitware/CMake/releases/download/v3.20.1/cmake-3.20.1-linux-x86_64.tar.gz
+  - tar -xvf cmake-3.20.1-linux-x86_64.tar.gz > /dev/null
+  - mv cmake-3.20.1-linux-x86_64 cmake-install
   - PATH=${DEPS_DIR}/cmake-install:${DEPS_DIR}/cmake-install/bin:$PATH
   - cd ${TRAVIS_BUILD_DIR}
 
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5716708226a7c10868e2e4ef9d9f3e033e4d1ab0..ef27bcfa6946541f2c831fa50b53d2a503ea7b18 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2,7 +2,7 @@
 # copyright : Copyright (c) 2018-present, Lava Block OÜ and contributors
 # license   : MIT; see accompanying LICENSE file
 
-cmake_minimum_required(VERSION 3.15)
+cmake_minimum_required(VERSION 3.20)
 
 project(liblava VERSION 0.6.1 LANGUAGES C CXX)
 
diff --git a/DOCS.md b/DOCS.md
index 6b5930a76ec8286b33d2350e2ae176592985053c..11c7ef4be5fa938075f6043ea6963b105f4d258c 100644
--- a/DOCS.md
+++ b/DOCS.md
@@ -376,7 +376,7 @@ int main(int argc, char* argv[]) {
 ## Requirements
 
 * **C++20** compatible compiler
-* CMake **3.15+**
+* CMake **3.20+**
 * [Vulkan SDK](https://vulkan.lunarg.com)
 
 <br />