# WhisperX review

> WhisperX is a Python speech recognition tool built on Whisper that adds word-level timestamps and speaker diarization.

Devtoolwatch Board, the week of Oct 25–31, 2026. Canonical page: https://index.devtoolwatch.com/tools/whisperx/

## TL;DR

WhisperX is a Python tool for transcribing audio with OpenAI's Whisper, adding word-level timestamps through wav2vec2 alignment and speaker labels through pyannote-audio. It is for developers who need batched transcription with accurate per-word timing. It uses a faster-whisper backend and VAD preprocessing, and runs on GPU or CPU.

## WhisperX at a glance

- **Category:** [Voice and realtime](https://index.devtoolwatch.com/categories/voice-and-realtime/)
- **Maintained by:** Max Bain (individual, [@m-bain](https://github.com/m-bain) on GitHub)
- **License:** BSD 2-Clause
- **Language:** Python
- **Repository:** [github.com/m-bain/whisperX](https://github.com/m-bain/whisperX)
- **PyPI package:** [whisperx](https://pypi.org/project/whisperx/) 3.8.6
- **Latest release:** [v3.8.6](https://github.com/m-bain/whisperX/releases/tag/v3.8.6) on GitHub, May 25, 2026
- **First published:** Dec 9, 2022

## What WhisperX does

- WhisperX runs batched Whisper inference on a faster-whisper backend for faster transcription.
- WhisperX produces word-level timestamps by aligning Whisper output with a wav2vec2 phoneme model.
- WhisperX labels speakers in a transcript using diarization from pyannote-audio.
- WhisperX applies voice activity detection before transcription, which the README says reduces hallucination.
- WhisperX can pass context from the previous segment with interleaved context, aimed at better punctuation and proper nouns on long audio.
- WhisperX picks alignment models by language, with defaults for en, fr, de, es, it and more via Hugging Face.
- WhisperX can write word timings into .srt files with the --highlight_words option.

### How it works

WhisperX runs from the command line or as a Python library. It transcribes with batched Whisper, aligns the segments with a language-specific wav2vec2 model, then optionally assigns speaker IDs with a pyannote diarization pipeline. Models load from torchaudio or Hugging Face. Diarization needs a Hugging Face token. It runs on CUDA GPUs or on CPU, including Mac OS X.

## How to install WhisperX

**With pip**

```
pip install whisperx
```

**With uvx**

```
uvx whisperx
```

**With faster alignment (Numba)**

```
pip install "whisperx[fast]"
```

### Requirements

- Python >=3.10 and <3.14.
- CUDA toolkit 12.8 for GPU acceleration. CPU-only use does not need it.
- A Hugging Face read token and acceptance of the speaker-diarization-community-1 model agreement for diarization.

### First steps

1. For GPU use, install the CUDA toolkit 12.8 before installing WhisperX. Skip this if you only use the CPU.
2. Transcribe a file with default settings: whisperx path/to/audio.wav
3. Add speaker labels: whisperx path/to/audio.wav --model large-v2 --diarize --highlight_words True
4. Run on CPU or Mac: whisperx path/to/audio.wav --compute_type int8 --device cpu

## Who WhisperX is for

- Developers making subtitles or transcripts that need accurate per-word timing.
- Transcribing multi-speaker recordings where speaker ID labels are needed.

### Limitations

- WhisperX does not handle overlapping speech well, and the README calls diarization far from perfect.
- WhisperX needs a language-specific wav2vec2 alignment model. For untested languages you must find and test one yourself.
- WhisperX transcribes without timestamps to batch inference, which can produce output that differs from default Whisper.
- WhisperX no longer provides subtitle .ass output. The README says it was removed in v3.

## Usage data (the week of Oct 25–31, 2026)

- Board rank: #112 overall, #6 in Voice and realtime, momentum score 61
- Downloads that week: 158.6k (+37% vs 4-week average)
- New GitHub stars per week (last 12 weeks): Aug 9: 110; Aug 16: 108; Aug 23: 119; Aug 30: 108; Sep 6: 104; Sep 13: 140; Sep 20: 129; Sep 27: 113; Oct 4: 106; Oct 11: 195; Oct 18: 196; Oct 25: 163

## WhisperX alternatives

| Rank | Tool | Stars | Downloads/wk |
|---|---|---|---|
| #1 | [faster-whisper](https://index.devtoolwatch.com/tools/faster-whisper/) | 26.4k | 4.4M |
| #2 | [Kokoro](https://index.devtoolwatch.com/tools/kokoro/) | 9.8k | 150.7k |
| #3 | [Chatterbox](https://index.devtoolwatch.com/tools/chatterbox/) | 27.5k | 73.2k |
| #4 | [VoiceMem](https://index.devtoolwatch.com/tools/xzf-thu-voicemem/) | 2.8k | – |
| #5 | [Pipecat](https://index.devtoolwatch.com/tools/pipecat/) | 17k | 348.5k |
| #7 | [LiveKit Agents](https://index.devtoolwatch.com/tools/livekit-agents/) | 15k | 2.4M |

## WhisperX FAQ

### Is WhisperX free and open source?

Yes. WhisperX's source code is on GitHub (m-bain/whisperX) under the BSD 2-Clause license, so you can use it for free.

### How do I install WhisperX?

Run `pip install whisperx`. The whisperx package needs Python 3.10 or newer, below 3.14. The install section above has the other options from the project's README.

### Is WhisperX still maintained?

Yes. The m-bain/whisperX repository was last updated on Oct 18, 2026, and the latest release, v3.8.6 on GitHub, came out on May 25, 2026.

### How popular is WhisperX?

WhisperX has 25k GitHub stars as of Nov 1, 2026. It gained 163 new stars in the week of Oct 25–31, 2026, against a 12-week average of 133 a week. Its main package had 158.6k downloads that week, +37% against its own 4-week average. That made it #6 among voice and realtime AI tools on the Devtoolwatch Board.

### WhisperX vs Whisper: how do they compare?

WhisperX and Whisper are both tracked by Devtoolwatch as voice and realtime AI tools. WhisperX has 25k GitHub stars and Whisper has 111.7k. In the week of Oct 25–31, 2026, WhisperX's main package had 158.6k downloads and Whisper's had 1.5M. Whisper is OpenAI's general-purpose speech recognition model for multilingual transcription, speech translation into English, and language identification, usable from the command line or Python. [Whisper review](https://index.devtoolwatch.com/tools/whisper/)

### What are the best alternatives to WhisperX?

Other voice and realtime AI tools on the Devtoolwatch Board in the week of Oct 25–31, 2026, by momentum: faster-whisper (#1), Kokoro (#2), Chatterbox (#3), VoiceMem (#4), Pipecat (#5). The alternatives table above has their numbers.

### Does WhisperX have speaker diarization?

Yes. WhisperX assigns speaker ID labels using pyannote-audio. Pass --diarize along with a Hugging Face read token, and accept the speaker-diarization-community-1 model agreement. You can set --min_speakers and --max_speakers if you know the number of speakers.

### How is WhisperX different from OpenAI's Whisper?

WhisperX adds batching, word-level timestamps from wav2vec2 alignment, VAD-based segmentation and speaker diarization. The README says Whisper's own timestamps are utterance-level and can be off by several seconds, and that Whisper does not natively support batching.

### Can WhisperX run locally without a GPU?

Yes. WhisperX runs on CPU, including Mac OS X, with: whisperx path/to/audio.wav --compute_type int8 --device cpu. The README also links Replicate demos for people without their own GPUs.

### Which languages does WhisperX support for alignment?

WhisperX ships default alignment models for en, fr, de, es and it through torchaudio, plus many other languages through Hugging Face. The full list is under DEFAULT_ALIGN_MODELS_HF in alignment.py. Release v3.8.6 added an Indonesian model.

### How do I reduce WhisperX GPU memory use?

Lower the batch size, for example --batch_size 4. You can also use a smaller model such as --model base, or a lighter compute type with --compute_type int8. The README notes that the last two can affect quality.

### Does WhisperX timestamp numbers and symbols?

The README says words such as "2014." or "£13.60" cannot be aligned and get no timing. Releases v3.7.9, v3.6.2 and v3.5.2 restored timestamps for words with digits, symbols or foreign script by using a wildcard emission column.

## Sources

1. [m-bain/whisperX on GitHub](https://github.com/m-bain/whisperX)
2. [WhisperX README](https://github.com/m-bain/whisperX/blob/main/README.md)
3. [whisperx on PyPI](https://pypi.org/project/whisperx/)
4. [Release 3.8.7rc1 (Jun 26, 2026)](https://github.com/m-bain/whisperX/releases/tag/3.8.7rc1)
5. [Release v3.8.6 (May 25, 2026)](https://github.com/m-bain/whisperX/releases/tag/v3.8.6)
6. [Release v3.8.5 (Apr 1, 2026)](https://github.com/m-bain/whisperX/releases/tag/v3.8.5)
7. [Devtoolwatch Board, the week of Oct 25–31, 2026](https://index.devtoolwatch.com/)
