🎙️

Dictate in VS Code on Mac

3-minute setup · no extensions · audio stays on your Mac

TL;DR: The fastest way to dictate in VS Code on Mac is a free global dictation app like MetaWhisp: install it, hold Right Option (⌥), talk, release — your words land in the active editor tab. VS Code also ships a built-in Voice: Start Dictation command, but it's basic and routes audio through the Web Speech API. A system-wide tool gives you better accuracy, works offline, and stays out of your way.
Offline voice-to-text pipeline for VS Code on Mac showing global hotkey and local Whisper processing
VS Code is a fantastic editor, and for most of us it's where most of the workday happens. Typing comments, writing PR descriptions, hammering prompts into Copilot Chat — that's a lot of words, and a lot of micro-decisions about phrasing that quietly drain focus. Voice cuts that drain. The catch is that "dictation in VS Code" usually means juggling extensions, fighting whatever model is in fashion, or settling for the built-in voice, which is a step behind what your phone can do. Below is what actually works on a Mac in 2026, why I lean on an external tool over the built-in option, and how to wire it up in three minutes.

Why dictation is different in a code editor

Code editors are picky environments. You're not writing prose — you're managing cursor positions, dismissing auto-complete popups, jumping between tabs, pasting into chat panels. Most consumer voice tools assume the document is a Google Doc, and they get confused fast when the "document" is actually a comment block, a string literal, or a Copilot prompt. The things that matter for dictating in VS Code: - **Cursor awareness.** Text must land wherever the cursor is — top of file, inside a function, in the integrated terminal, in the chat sidebar. A system-wide hotkey is the only way to get this consistently. - **No extensions to babysit.** A "VS Code dictation extension" usually means another dependency, another account, another thing that breaks on the next VS Code update. An external tool bypasses the editor entirely. - **No weird character conversions.** "Open paren" needs to become `(`, not the word "open paren". A few tools do this well; most don't. - **Privacy.** Some devs are writing proprietary code. Audio going to Google's servers every time they say "fix the race condition in the webhook handler" is a non-starter. - **Offline.** Apple's built-in dictation needs internet for the more accurate mode. On a plane or a coffee shop with bad Wi-Fi, that's a problem.

Dictation in a code editor is fundamentally different from dictation in a word processor, and the failure modes are specific to the editor environment. The cursor jumps when you delete a word. Auto-complete popups steal focus mid-sentence. Multiple tabs mean multiple possible targets, and a misclick can send your dictation to the wrong file. The integrated terminal expects shell commands, not prose, and a single misheard word can become a destructive rm or git push. A consumer voice tool trained on email and Google Docs will mis-hear git push as get push, capitalize things mid-sentence, or insert period as a literal word. The right tool for the job is one that respects the active cursor, respects the active app, and doesn't try to be smart about formatting. That's why a system-wide hotkey that types into the focused window beats an editor-specific extension for most developers — it works the same way in VS Code, the terminal, the browser, and the chat panel, with zero context-switching.

Which is the best way to dictate in VS Code on Mac?

You basically have three options in 2026: 1. **VS Code's built-in voice typing.** Free, no install, but uses the Web Speech API through Chromium and is fairly basic. 2. **A VS Code speech extension.** Things like Microsoft's *VS Code Speech* extension or community forks. More featureful than the built-in, but you're married to the extension's update cycle. 3. **A system-wide dictation app** (like MetaWhisp) that sends text into the focused window. Works in VS Code, in the terminal, in your browser, in your chat app — anywhere your cursor happens to be.

The simplest answer for most developers: install MetaWhisp, hold Right Option, talk. Your words go into whatever window has focus — VS Code, the terminal, the Copilot Chat sidebar, the integrated browser, even the file rename dialog. Local mode is free and unlimited, audio never leaves the Mac, and the same hotkey works in every other app on your system without per-app setup or per-workspace enablement. The Whisper large-v3-turbo model runs on the Apple Neural Engine, so it's fast even on an M1 Air, and it handles code-adjacent vocabulary (camelCase, snake_case, common framework names) better than the built-in option. If you only dictate inside the editor for short bursts and don't care about offline operation, the built-in Voice: Start Dictation command is fine; for daily driver use across multiple apps, a system-wide tool wins on consistency, speed, and privacy.

Comparison of three methods to add voice typing to VS Code on Mac including built-in, extension, and external app

How does VS Code's built-in voice typing work?

VS Code ships a built-in voice command called Voice: Start Dictation (and Voice: Stop Dictation) that you can trigger from the Command Palette. It's documented in the official VS Code voice guide. The honest version: - **Engine:** It uses the Web Speech API under the hood, which on macOS leans on Apple's dictation pipeline. That means audio can leave your Mac for the more accurate mode. - **Setup:** Open the Command Palette (⇧⌘P), type "Voice: Start Dictation", press Enter. Or assign a keybinding in Keyboard Shortcuts. - **Languages:** Whatever the underlying system supports — on macOS, that's the same set as Apple Dictation. - **Stop:** Press Escape, or use the "Voice: Stop Dictation" command. It's fine for a quick comment. It is not great if you want consistent punctuation, custom vocabulary, or a single button that behaves the same way in every app. That gap is what pushes most developers to option 3.

Yes — VS Code has a built-in voice command called Voice: Start Dictation. Open the Command Palette with ⇧⌘P, type the command, and press Enter. It uses the Web Speech API, which on macOS relies on Apple's dictation engine and routes audio through Apple's servers for the more accurate mode. It works, but it's basic compared to a dedicated tool: no offline mode by default, no consistent punctuation control, no way to customize the hotkey per app, and no way to use the same hotkey in your terminal or browser. The feature is documented at code.visualstudio.com/docs/editor/voice if you want the full list of commands and limitations. Voice commands like "next paragraph" and "new line" are supported but limited. For short, occasional comments it's fine; for sustained dictation sessions, you'll outgrow it within a week and start looking for a system-wide alternative.

Should I use a VS Code speech extension instead?

If you want more control inside the editor, you can install a voice extension. The well-known one is Microsoft's **VS Code Speech** extension; there are also community alternatives. These add commands like voice.start to the palette and let you configure hotkeys and sometimes literal punctuation. Pros: - Native commands inside the Command Palette. - Some let you speak punctuation literally ("open paren" → `(`). - Works in any text file type VS Code opens. Cons: - Another extension to update, audit, and troubleshoot. - Some send audio to cloud STT APIs you can't always swap out. - You may have to enable per-workspace. If you live entirely inside VS Code and don't dictate in your browser, terminal, or chat tools, an extension is reasonable. Most developers — me included — dictate in too many places to live with that.

Method 3: A system-wide dictation app (the one I use)

A global dictation app doesn't care what window is focused. You press a hotkey, it captures your voice, it pastes the transcript into whatever has the cursor. In VS Code, that means it just works — in a comment, in a file, in the terminal panel, in the Copilot Chat sidebar. MetaWhisp is what I built for exactly this. It's a free macOS app that runs OpenAI's Whisper locally through WhisperKit on the Apple Neural Engine, with a single global hotkey (default Right Option ⌥). Why I built it that way: - **No account.** Install, run, dictate. Local mode is free and unlimited. - **Audio never leaves the Mac.** The Whisper model runs on-device. Your code comments aren't being shipped to a third party. - **One hotkey everywhere.** Same hotkey in VS Code, Chrome, Slack, BBEdit, anywhere. - **Free unlimited local mode.** No monthly minutes cap, no trial, no upsell on the core feature. - **Optional Pro.** If you want cloud accuracy on tough audio, or AI text polish via processing modes, Pro is $30/year or $7.77/month. Local mode stays free forever.
Founder's note: I run on an M1 Air with 8 GB of RAM. I have MetaWhisp set to launch at login with Right Option as the hotkey. I dictate 90% of my comments, PR descriptions, and prompts into Copilot Chat. The remaining 10% is actual code, where typing is faster than speaking.

How to set up MetaWhisp for VS Code on Mac in 3 minutes

You need a Mac running macOS 14 Sonoma or later on an Apple Silicon chip (M1, M2, M3, M4, or later). Intel is not supported because the model runs on the Neural Engine, which is Apple-only. **Step 1: Download and install.** Grab MetaWhisp from the download page — free, no signup. Open the .dmg, drag the app into Applications, launch it. macOS will ask for accessibility permission so the app can paste text into the focused window — click Allow. **Step 2: Download the Whisper model.** First launch triggers a one-time download of the Whisper large-v3-turbo model (~950 MB). It runs locally on the Neural Engine and never connects to a server during the download. The progress bar tells you when it's ready. **Step 3: Confirm your hotkey.** Default is **Right Option (⌥)**. Hold it, talk, release. To change it, open the app's settings — anything goes from F-keys to Caps Lock to a chord like Right Option + R. The global hotkey docs walk through it. **Step 4: Test it in VS Code.** Open VS Code, place your cursor in any file, hold Right Option and say: "remember to refactor this loop on Monday." Release. The text lands where the cursor was. Done.
Four-step setup diagram for MetaWhisp global dictation app on Mac with VS Code

To dictate in VS Code with MetaWhisp: download it from metawhisp.com/download, open the .dmg, and launch it. Grant accessibility permission when macOS prompts you, wait for the ~950 MB Whisper model to load, then hold Right Option and talk. Whatever you say gets transcribed locally on the Apple Neural Engine and pasted at your cursor in under a second. The same hotkey works in the VS Code editor, the integrated terminal, the Copilot Chat sidebar, the source control input, and every other app on your Mac — no per-app setup, no per-workspace toggle, no extension to keep updated. Local mode is free and unlimited, with no account, no monthly cap, and no audio leaving your machine. The first transcription is the slowest because the model warms up; subsequent ones feel realtime on M1 Pro or later hardware.

How is this different from VS Code's built-in voice?

FeatureVS Code built-inMetaWhisp local
EngineWeb Speech API / Apple DictationWhisper large-v3-turbo on ANE
Account neededNoNo
Internet requiredYes (for full accuracy)No
CostFreeFree (local mode)
Audio leaves MacYes (Apple servers)No
Punctuation accuracyDecentGood, configurable
Works in terminalLimitedYes
Works in Copilot ChatLimitedYes
LanguagesApple-supported set99 with auto-detect
Custom vocabularyNoPro feature
The big delta is offline + private. If you dictate comments about a customer system, an internal API, or a security-sensitive codebase, the audio going to Apple or Google every time is a real consideration. The general Mac dictation guide covers the privacy angle in more detail.

How do I dictate code comments in VS Code?

Code comments are where dictation pays for itself fastest. You think faster than you type when you can talk, and a good comment block reads better when it's natural language. The trick is to teach yourself a few voice-to-symbol replacements: - "open paren" → `(` - "close paren" → `)` - "open curly" → `{` - "equals" → `=` - "arrow" → `=>` - "colon colon" → `::` A typical multi-line comment workflow looks like this: 1. Type `//` and hit Enter to start the block. 2. Cursor is on line 2. Hold ⌥ and dictate: "this function handles user login, returns a token, throws on invalid credentials." 3. Release. Edit a couple of words. Move on. The transcript lands at high accuracy on clear English in my own testing, so editing is usually a quick pass, not a full re-type. If you dictate a lot of code, Pro's Structured processing modes can strip filler words, fix casing, and reformat dictated code blocks.
Pro tip: If you have to write a long function comment, dictate it in two passes: first the summary sentence, then a second pass for the edge cases. Splitting it up reduces mid-thought filler words and gives you cleaner output to edit.

Can I dictate Copilot Chat prompts?

VS Code's Copilot Chat sidebar is a normal text area. Your cursor is there, you press a hotkey, you talk — the prompt goes in. For prompts longer than a sentence this is a huge quality-of-life win, because long prompts are where you tend to typo, drop words, and lose your train of thought. A worked example: 1. Click into the Copilot Chat input box. 2. Hold Right Option and say: "given this React component, refactor it to use the new server actions API, and explain the security tradeoffs of using form actions versus client side fetch." 3. Release. The prompt appears, you hit Enter, Copilot does its thing. Same workflow in Cursor, in the integrated terminal, in a pull request description on GitHub.com, in Slack — anywhere with a text field.
Voice to text workflow for VS Code Copilot Chat prompts using MetaWhisp global hotkey on Mac

Why isn't my VS Code dictation working?

A handful of things go wrong on day one. Here are the fixes I've hit personally and watched other people hit. **"The hotkey fires but nothing pastes."** macOS is blocking the paste. Go to System Settings → Privacy & Security → Accessibility and make sure MetaWhisp is on the list. Toggle it off and back on if it was already enabled — that fixes a lot of stale-permission issues. **"It's slow on my M1."** The first transcription is the slowest because the model has to warm up. After that it's typically faster than realtime on an M1 Pro or later. If it's slow on a base M1, switch the language in settings to your actual language instead of auto-detect — that saves a few hundred milliseconds. **"It keeps inserting 'period new line' when I want to keep talking."** The hotkey is the boundary. If you want a longer dictation, switch to "press to start, press to stop" mode in settings. **"VS Code keeps stealing focus and text goes to the wrong tab."** This is usually a macOS focus issue, not a MetaWhisp issue. In System Settings → Desktop & Dock, turn off "Focus follows mouse" if it's on, and make sure VS Code is the active window before you press the hotkey. **"I need to dictate a different language in the same session."** MetaWhisp supports 99 languages with auto-detect. If you want a fixed language for a session, set it in settings. The Pro plan adds translation.

How to choose for yourself

If you only dictate occasionally, the built-in VS Code voice is a fine starting point. If you dictate every day and care about privacy, offline operation, or accuracy on technical vocabulary, a system-wide tool like MetaWhisp is worth the three minutes. The free local mode covers what most developers need; the Pro plan exists for cloud accuracy on tough audio, AI text polish, and translation. Either way, the upgrade in flow state is real. Once you can talk to your editor, you stop optimizing keystrokes and start thinking about the actual problem.

FAQ

How do I enable voice typing in VS Code on Mac?

Open the Command Palette with ⇧⌘P, type "Voice: Start Dictation", and press Enter. VS Code will start capturing your voice and inserting text at the cursor. To stop, press Escape or use the "Voice: Stop Dictation" command. You can also assign a custom keybinding in Keyboard Shortcuts. The feature is documented at code.visualstudio.com/docs/editor/voice.

Does VS Code have built-in dictation?

Yes. VS Code has built-in voice commands documented at code.visualstudio.com/docs/editor/voice. It uses the Web Speech API under the hood, which on macOS leans on Apple's dictation engine. It's basic but functional for short dictation sessions and works without installing anything.

How do I dictate code comments in VS Code?

Place your cursor where the comment should go, trigger your dictation tool, and talk naturally. A tool like MetaWhisp will paste a formatted transcript with punctuation at the cursor. Type // first to start a comment line, dictate, then edit. For block comments, type /*, hit Enter, dictate the body, and close with */.

Is there a free way to dictate in VS Code on Mac?

Yes. VS Code's built-in voice is free, and so is MetaWhisp's local mode. Both have no monthly cap on basic local dictation. Apple Dictation is also free and built into macOS, but it's not a hotkey-driven flow and is less precise in code editors. None of these free options require an account or signup.

Can I use voice to write Copilot prompts?

Yes. Click into the Copilot Chat input box in VS Code's sidebar, trigger your dictation hotkey, and talk. The text lands in the prompt field the same way it would in any other text area. Long prompts are where voice has the biggest quality-of-life impact — multi-sentence prompts land accurately in one pass instead of getting mangled by typing.

How do I dictate in VS Code's integrated terminal?

Click into the integrated terminal panel so the cursor is on the command line, then trigger dictation as usual. The transcript will be inserted as a shell command. Be careful — a misheard word can become a destructive command. Read the line before you hit Enter, especially for anything that touches rm, git, or kubectl.

What is the best dictation app for VS Code on Mac?

It depends on what you mean by best. For pure editor use, an extension like VS Code Speech is decent. For system-wide use across the editor, terminal, and chat, a global app like MetaWhisp is more consistent because the same hotkey works everywhere. The Apple built-in option is free but not designed for hotkey-driven developer workflows.

How do I stop VS Code from auto-punctuating my dictation?

VS Code's built-in voice inherits punctuation behavior from the underlying speech engine. If you want full control, use a tool that lets you speak punctuation literally ("open paren" → () and turn off automatic punctuation. MetaWhisp's Pro processing modes include a "verbatim" mode that preserves exactly what you said.

Can I dictate code snippets in VS Code?

You can dictate code, but you have to speak it carefully. Punctuation words like "open paren" need to map to symbols, and whitespace has to be intentional. Most developers dictate comments and prose, then type or paste actual code. The MetaWhisp processing modes can be tuned to preserve formatting for code-like input if you dictate code often.