Dictation

How Accurate Is Whisper for Code Comments and Commit Messages?

28 August 2026 4 min read

Whisper is genuinely good at the prose parts of a developer's day โ€” commit messages, code comments, PR descriptions, changelog entries โ€” because those are ordinary sentences. It's bad at the parts that aren't sentences: camelCaseIdentifiers, snake_case variables, and punctuation-heavy syntax like && or =>. The practical fix isn't a better model, it's a better split: dictate the English, type the code.

Why this split matters

A lot of a developer's typing isn't code at all. Commit messages, docstrings, code review comments, Jira tickets, Slack updates about what a function does โ€” that's all natural language, and it's a meaningful chunk of daily keystrokes. Typing it out character by character is where RSI and hand fatigue accumulate, not in writing if (x > 0).

There's also a context-switching cost that's easy to underrate. Stopping mid-flow to carefully type a three-sentence commit message pulls you out of the code you were just reasoning about. Speaking it while you're still looking at the diff keeps you in that headspace. And if you're dictating anything that touches proprietary code โ€” a comment describing a business rule, a commit message referencing an internal system name โ€” sending that audio to a cloud STT API means it's sitting on someone else's server, transcribed by infrastructure you don't control and can't audit.

Where Whisper is actually strong

For clear, unaccented speech, Whisper's mid-size models handle full sentences about as well as most commercial STT for everyday vocabulary. Practically, that means:

Commit messages. "Fix null pointer exception when the user session expires before the token refresh completes" transcribes cleanly, because every word is a real English word Whisper has seen millions of times.

Code comments explaining intent. "This retries three times with exponential backoff because the upstream API rate-limits aggressively" โ€” same story. Natural language, no invented tokens.

PR descriptions and changelog entries. Longer, more structured prose is actually easier for Whisper than short technical fragments, because it has more context to disambiguate homophones and awkward phrasing.

This is the workflow Voxtty is built around: press Alt+D, say the sentence, and it gets typed into whatever has focus โ€” the commit message editor, a comment block, a PR description field โ€” via faster-whisper running entirely on-device. Voice activity detection trims the silence at the start and end so you don't get a stray fragment, and an optional offline cleanup pass strips filler words like "um" and "so yeah" before the text lands. None of the audio leaves the machine; if you opt into the AI cleanup step, only the transcript text goes to the Claude API, never the audio itself.

Where it breaks down

Ask Whisper to transcribe getUserByIdAsync and you'll get "get user by id async" as four separate words, correctly spelled but with none of the camelCase boundaries or capitalization a real identifier needs. It has no way to know you wanted a single token โ€” it's a speech model, not a code model, and it has no concept of your codebase's naming conventions.

Symbols are worse. Saying "arrow function" doesn't reliably produce =>, and reading out a regex or a generic type signature character-by-character is slower and less reliable than just typing it. Whisper also struggles more with strong accents, heavy background noise, and dense technical jargon than with plain conversational speech โ€” this is a general limitation of on-device Whisper models, not something specific to code dictation, but it compounds when you're also asking it to guess at an unusual variable name.

The workaround is simple and doesn't require perfect transcription: dictate the comment or commit message as a full sentence, then type identifiers, symbols, and syntax the normal way. Don't try to dictate a whole line of code โ€” dictate the explanation of what the code does, and keep the keyboard for the code itself.

One thing to try today

Next time you write a commit message, dictate it instead of typing it โ€” just the message, not the diff. Try Voxtty free and see how close the first draft gets to what you'd have typed; if it's clean, extend the habit to comments and PR descriptions next.

Try Voxtty free

Local-first voice dictation for Linux. Press Alt+D, speak, and your words land in whatever app has focus โ€” nothing leaves your machine.

Try Voxtty free โ†’

Related Articles

Dictation
What Is Voice Activity Detection, and Why Dictation Needs It
Privacy
Is It Safe to Dictate Passwords Out Loud on Linux?
Productivity
Voice Dictation for RSI and Typing Fatigue
Comparisons
How Does Linux Voice Dictation Compare to Windows and macOS?
โ† Back to blog