Guide

How to Run Whisper Locally on Windows: Python, whisper.cpp or an App

OpenAI released Whisper's code and weights under the MIT license, so you can transcribe speech on your own PC with no API key and no audio leaving the machine. On Windows there are three sensible ways to run it. Which one fits depends mostly on whether you have an NVIDIA GPU and how much you like the command line.

Short answer

To run Whisper locally on Windows, install Python and ffmpeg, then run pip install -U openai-whisper and whisper audio.mp3 --model turbo. Without an NVIDIA GPU, whisper.cpp is faster: download whisper-bin-x64.zip from its GitHub releases, fetch a ggml model and run whisper-cli. Both work fully offline after setup.

Which way of running Whisper should you pick?

openai-whisper (Python)whisper.cppAn app with Whisper built in
SetupPython, ffmpeg, PyTorchUnzip a release, download a modelInstaller
Runs well on CPUSlowlyYesDepends on the app
GPUNVIDIA via CUDA PyTorchCUDA builds, Vulkan if you compileDepends on the app
Input formatsAnything ffmpeg reads16-bit WAV (convert with ffmpeg)Usually your microphone
DiskSeveral GB with PyTorchBinary plus the modelApp plus the model
Best forPython users, scripting, GPUsLaptops, CPU-only PCs, ARM64Dictation without setup

Our default recommendation: whisper.cpp for most Windows PCs, the Python package if you already have an NVIDIA card and a Python setup, and an app if you only want to talk to your computer rather than transcribe files.

What hardware do you need for each Whisper model?

Bigger models are more accurate and slower. The first set of numbers is from the openai/whisper README (GPU memory with PyTorch, speed relative to large). The last two columns are from the whisper.cpp README (ggml model file and RAM).

ModelParametersVRAM (Python)Relative speedggml fileRAM (whisper.cpp)
tiny39 M~1 GB~10x75 MiB~273 MB
base74 M~1 GB~7x142 MiB~388 MB
small244 M~2 GB~4x466 MiB~852 MB
medium769 M~5 GB~2x1.5 GiB~2.1 GB
large1550 M~10 GB1x2.9 GiB~3.9 GB
turbo809 M~6 GB~8x--

Two details people miss. First, tiny, base, small and medium come in English-only versions (base.en and so on) that are a little more accurate for English. Second, turbo is an optimized large-v3 that isn't trained for translation, so use medium or large if you want non-English speech translated into English.

Option 1: Install openai-whisper with Python

  1. Install Python. winget install Python.Python.3.12 works. The package metadata lists Python 3.8 through 3.13; 3.11 or 3.12 avoids most wheel problems.
  2. Install ffmpeg. Whisper calls the ffmpeg command-line tool to read audio. The README suggests choco install ffmpeg (Chocolatey) or scoop install ffmpeg (Scoop). Open a new terminal afterwards so the PATH change applies.
  3. Create a virtual environment. py -3.12 -m venv whisper-env, then whisper-env\Scripts\activate.
  4. Install PyTorch with CUDA if you have an NVIDIA GPU. Use the selector at pytorch.org/get-started/locally to get the right pip command for your CUDA version. Skip this step for CPU-only.
  5. Install Whisper. pip install -U openai-whisper. The current release is v20250625.
  6. Transcribe. whisper meeting.mp3 --model turbo --language en --output_format srt. The first run downloads the model to your user cache folder.

Useful flags: --output_format txt for plain text, all for every format, --device cpu to force CPU, and --task translate with medium or large to translate into English.

Transcribing a folder of files in PowerShell

Wildcards catch Windows users out. In PowerShell, whisper *.mp3 passes the literal text *.mp3 to Whisper instead of a list of files, because PowerShell doesn't expand wildcards for programs the way Linux shells do. Loop over the files instead:

Get-ChildItem *.mp3 | ForEach-Object { whisper $_.FullName --model turbo --output_format txt }

The same loop works for whisper.cpp below, with whisper-cli.exe -m ggml-base.en.bin -f $_.FullName -otxt as the command.

Common errors with the Python version

  • FileNotFoundError: [WinError 2] The system cannot find the file specified when transcribing almost always means ffmpeg isn't on your PATH. Run ffmpeg -version in the same terminal to check.
  • UserWarning: FP16 is not supported on CPU; using FP32 instead is harmless. It tells you Whisper is running on the CPU, which is your cue that the CUDA build of PyTorch isn't installed if you expected the GPU.
  • pip tries to build tiktoken from source and asks for Rust. That happens on Python versions without a prebuilt wheel. Switch to Python 3.11 or 3.12 rather than installing Rust.

Option 2: Run whisper.cpp from the prebuilt Windows release

whisper.cpp is a C/C++ port of Whisper by Georgi Gerganov, now under the ggml-org GitHub organization. It needs no Python, runs well on ordinary CPUs and ships Windows binaries. The latest release, v1.9.5, came out on October 6, 2026.

  1. Download a build from the whisper.cpp GitHub releases page. The zip files are attached to the numbered builds (for example b5454) rather than every version tag. whisper-bin-x64.zip is the plain CPU build, whisper-blas-bin-x64.zip uses OpenBLAS, whisper-bin-win-cuda-12.4.0-x64.zip is for NVIDIA GPUs, and whisper-bin-win-cpu-arm64.zip is for Snapdragon laptops.
  2. Unzip it to a folder such as C:\whisper.
  3. Download a model. If you cloned the repository, run .\models\download-ggml-model.cmd base.en. Otherwise download ggml-base.en.bin from the ggml models listed in the README and put it next to the exe.
  4. Convert your audio to 16 kHz mono 16-bit WAV: ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le input.wav.
  5. Transcribe. whisper-cli.exe -m ggml-base.en.bin -f input.wav -otxt writes input.wav.txt. Use -osrt for subtitles.

What goes wrong: a garbled or empty result from an MP3 you passed straight in. The CLI expects 16-bit WAV, so convert first. And if the CUDA build fails to start, your NVIDIA driver may be older than that CUDA version needs. Update the driver or use the CPU build.

Want local Whisper for talking to ChatGPT or Claude, without any command line? AuraCloak has it built in.

Get AuraCloak

Option 3: Use an app that runs Whisper for you

If your goal is dictating prompts to an AI rather than transcribing recordings, setting up Python is a detour. AuraCloak is an always-on-top AI overlay for Windows that includes a Local Whisper engine. It runs through Whisper.net, a .NET wrapper around whisper.cpp, so it's the same engine as option 2.

  • Models: base (ggml-base.bin, 141 MB, fast) or small (ggml-small.bin, 465 MB, more accurate). The installer offers both as a checked-by-default option of about 600 MB.
  • Turn it on: Settings > Voice > Local Whisper, and pick base or small.
  • Use it: press Alt + V, speak, and the prompt is transcribed and sent when you stop. Alt + Shift + V cancels.
  • Privacy: no audio leaves the PC with Local Whisper. Only your text prompt goes to the AI provider you chose.

Base is the default. Dictation comes in short bursts, so waiting matters more than the last bit of accuracy. Small is worth switching to for accented English or technical vocabulary. The prompts go to ChatGPT or Claude.ai through browser mode or your own API keys with BYOK. More on the engines on the voice input page. $9 a month or $49 once (pricing).

AuraCloak only transcribes your microphone, push-to-talk. It doesn't record meetings or transcribe call audio. For recordings, use option 1 or 2.

Is running Whisper locally private?

Yes, once the model is on disk. Transcription happens on your CPU or GPU and nothing is uploaded. The only network traffic is the one-time model download. That's the main reason to run it locally: the hosted OpenAI transcription API is cheap (about $0.006 per minute), but your audio goes to OpenAI.

Compare that with Windows voice typing (Win + H), which sends audio to Microsoft's online speech service. Our Windows 11 speech to text guide covers which built-in options run on the device.

FAQ

Can I run OpenAI Whisper locally for free?

Yes. Whisper's code and model weights are MIT-licensed. Install it with pip install -U openai-whisper, or use the free whisper.cpp binaries. After the model downloads, transcription runs offline with no API costs.

Do I need a GPU to run Whisper on Windows?

No. whisper.cpp runs well on modern CPUs, especially with the base or small model. The Python version works on CPU too, but it's much slower, so it's best paired with an NVIDIA GPU and CUDA PyTorch.

Which Whisper model should I use?

Start with base.en for English dictation on a laptop, small for better accuracy, and turbo on a GPU with at least 6 GB of VRAM for long recordings. Use medium or large for translation into English, since turbo doesn't translate.

Why does Whisper say FileNotFoundError on Windows?

The Python package can't find ffmpeg. Install it with choco install ffmpeg or scoop install ffmpeg, open a new terminal, and check that ffmpeg -version works before running whisper again.

Does Whisper work on Windows ARM laptops?

Yes. whisper.cpp publishes a whisper-bin-win-cpu-arm64.zip build for Windows on ARM. The Python route also works if PyTorch installs on your ARM64 Python, but the ready-made whisper.cpp build is the simpler path.