Windows doesn’t come with the sqlite3 command, and unpacking the official zip isn’t enough on its own, because a terminal only finds programs in folders on its PATH. In this article I’ll walk you through installing sqlite3 so it works from any terminal, with a package manager or by hand.
TLDR
- Fastest:
winget install SQLite.SQLite, then open a new terminal and runsqlite3 --version. - Chocolatey users run
choco install sqlite, and Scoop users runscoop install sqlite. - By hand: download
sqlite-tools-win-x64-….zipfrom sqlite.org and unzip it to a folder such asC:\sqlite. Then add that folder to yourPath. 'sqlite3' is not recognizedmeans Windows can’t find the folder: it isn’t onPath, or the terminal was opened before you changed it.
What are you installing?
You’re installing the SQLite command-line tools: sqlite3.exe, the shell where you type SQL, plus a few helper programs. SQLite itself is a library inside other programs, so apps such as Python already include their own copy. You only need these tools to work with database files from a terminal.
The official download page lists these Windows builds:
| File | What it is |
|---|---|
sqlite-tools-win-x64-3530400.zip | Command-line tools for 64-bit Intel/AMD Windows |
sqlite-tools-win-arm64-3530400.zip | The same tools for Windows on ARM |
sqlite-dll-win-…-3530400.zip | The DLL only, for programs that link to SQLite. You don’t need it for the shell |
The number at the end is the version: 3530400 is SQLite 3.53.4.
Prerequisites
| Requirement | Detail |
|---|---|
| Windows | A 64-bit edition, Intel/AMD or ARM. Chocolatey’s package notes say “only 64-bit tools are available” since 3.44.0 |
| Package manager (optional) | winget, Chocolatey or Scoop, if you already use one |
How to install SQLite on Windows
I couldn’t run Windows for this article, so none of the Windows commands below were executed. They come from each package’s own manifest or docs. What I did test is the official download itself: its hashes and its contents.
Option 1: Install with winget
winget install SQLite.SQLite
The winget manifest for SQLite.SQLite installs the official x64 or ARM64 zip as a portable package, and adds a sqlite3 command alias. Open a new terminal window afterwards.
Option 2: Install with Chocolatey
choco install sqlite
Upgrade later with choco upgrade sqlite (Chocolatey package).
Option 3: Install with Scoop
scoop install sqlite
The Scoop manifest downloads the same official zip and puts sqlite3.exe on your path through Scoop’s shims.
Option 4: Install from the ZIP by hand
- Download
sqlite-tools-win-x64-3530400.zip(or the ARM64 one) from the SQLite download page. - Unzip it into a folder you’ll keep, for example
C:\sqlite. - Add that folder to your
Path: Start menu > “Edit environment variables for your account” >Path> Edit > New >C:\sqlite> OK. - Open a new terminal window.
Here’s what that download contains. I fetched it on a Mac to check it:
$ curl -sSO https://www.sqlite.org/2026/sqlite-tools-win-x64-3530400.zip && ls -lh sqlite-tools-win-x64-3530400.zip | awk '{print $5, $NF}'
6.3M sqlite-tools-win-x64-3530400.zip
$ unzip -Z1 sqlite-tools-win-x64-3530400.zip
sqlite3.exe
sqldiff.exe
sqlite3_analyzer.exe
sqlite3_rsync.exe
sqlite3.exe is the shell. The others are sqldiff (compares two databases), sqlite3_analyzer (reports space use) and sqlite3_rsync (copies a live database). It’s a 64-bit Windows console program:
$ unzip -q sqlite-tools-win-x64-3530400.zip sqlite3.exe && file sqlite3.exe
sqlite3.exe: PE32+ executable (console) x86-64, for MS Windows
Check the download wasn’t tampered with
The download page publishes a SHA3-256 hash for each file. This one matches the page’s 88b4659f…dcc8b:
$ python3 -c "import hashlib; print(hashlib.sha3_256(open('sqlite-tools-win-x64-3530400.zip', 'rb').read()).hexdigest())"
88b4659fe747896b853af10157316b4ade143553efb89c1c8ca7423a278dcc8b
The winget and Scoop manifests list SHA-256 f46ee247…29f9fc for the same zip. That matches too:
$ shasum -a 256 sqlite-tools-win-x64-3530400.zip
f46ee2475de4cbe287e6e5f7d43c838796b14e7379cd216bdbb28d391429f9fc sqlite-tools-win-x64-3530400.zip
On Windows, Get-FileHash .\sqlite-tools-win-x64-3530400.zip in PowerShell prints the SHA-256 hash to compare.
Check that it works
In a new Command Prompt or PowerShell window, run this (not executed here, because it needs Windows):
sqlite3 --version
It prints the version first, for example 3.53.4 for the current build. Then create a database and a table to be sure the shell can write files:
sqlite3 test.db "CREATE TABLE t (x); INSERT INTO t VALUES (1); SELECT * FROM t;"
It should print 1, and test.db appears in the current folder. For what to do next in the shell, see SQLite commands.
Troubleshooting
None of these were reproduced on Windows. They follow from how Windows finds programs and how SQLite opens files.
'sqlite3' is not recognized as an internal or external command: the folder withsqlite3.exeisn’t onPath, or the terminal was already open when you changed it. Open a new window, then runwhere sqlite3to see whether Windows finds it.- An old version runs: another
sqlite3.exesits earlier onPath.where sqlite3lists every match in order, so remove or reorder the older one. unable to open database filewhen creating a database: the current folder is read-only for you, for example underC:\Program Files. Change to a folder in your user profile first.database is locked: another program has the file open for writing. See database is locked.
Upgrading or uninstalling
Each package manager has its own upgrade command:
| Installed with | Upgrade | Uninstall |
|---|---|---|
| winget | winget upgrade SQLite.SQLite | winget uninstall SQLite.SQLite |
| Chocolatey | choco upgrade sqlite | choco uninstall sqlite |
| Scoop | scoop update sqlite | scoop uninstall sqlite |
| ZIP | Replace the files in C:\sqlite | Delete the folder, then take it off Path |
Conclusion
On current Windows, winget install SQLite.SQLite is the shortest route to a working sqlite3. Use Chocolatey or Scoop if you already manage your tools with them, or unpack the official ZIP if you’d rather not install anything. Whichever you pick, open a new terminal before you test it.
Further reading
- SQLite installation on every platform
- SQLite commands
- SQLite with PowerShell
- Python sqlite3
- SQLite docs: download page, command-line shell
Tested with the SQLite 3.53.4 Windows download (sqlite-tools-win-x64-3530400.zip) on 7 October 2026: hashes and contents checked on macOS. The Windows commands weren’t run.
