To dictate into ChatGPT, install a system-wide dictation app such as Lazytype, click into the chat box, hold the left Ctrl key and speak. Release, and your prompt appears as editable text — in ChatGPT, Claude, Copilot or Gemini, web or desktop. Unlike ChatGPT's voice mode, you keep a text prompt you can review before sending.
Most of my prompts to Claude start as spoken Dutch. I build a dictation app for a living, so weigh that accordingly — but the habit came before the product. At some point I noticed that everything I typed into an AI chat box was language I would normally say out loud: here's the situation, here's what I need, here's the format. Prompts are speech pretending to be typing. Judging by the steady stream of Reddit threads asking for the "best dictation app for prompting ChatGPT", plenty of people have hit the same wall.
Why is dictating prompts faster than typing them?
Prompts sit in the conversational register. You are not composing prose; you are briefing a colleague. That kind of language leaves your mouth at 130–150 words per minute without effort, and leaves your fingers at maybe 40, with backspacing. We run through the honest speed math here, but the short version: the gap widens with every sentence of context you add, and context is most of a good prompt.
Raw speed matters less than what typing does to your behaviour, though. Detailed prompts get better answers — every prompting guide says so, and it's true — but three paragraphs of background is a chore to type. So most people skip it, get a mediocre answer, and burn the saved keystrokes on retries. Speaking flips the economics. When context costs almost nothing to produce, you actually provide it. In my own use, the quality of first answers improved before my typing speed even entered into it: I was simply telling the model things I used to leave out.
How do you dictate prompts into ChatGPT?
The workflow that fits prompting best is hold-to-talk: a system-wide hotkey that records while held and types the transcript wherever your cursor is. With Lazytype (version 1.8.2), it looks like this:
- Install the app. Get Lazytype from the Microsoft Store (Windows 10 or 11) or from lazytype.com for macOS 12+. The 14-day free trial starts without a credit card.
- Click into the chat box — chatgpt.com in any browser, or the ChatGPT desktop app. Dictation types wherever your cursor is, so there is nothing to configure per app.
- Hold the left Ctrl key and speak your prompt. A realtime preview bar shows your words as you speak.
- Release the key. Your prompt appears in the chat box as clean, punctuated, editable text. Read it over, tweak a word if you like, and press Enter.
The hotkey is modifier-safe: quick taps and combinations like Ctrl+C keep working exactly as normal, so the same key does double duty without conflicts. Transcription runs Whisper large-v3-turbo on Groq, so even a long prompt comes back in about a second.
Speak your prompts instead of typing them
Lazytype is free for 14 days, no credit card. Hold left Ctrl, speak, release — your prompt is in the box.
Download for WindowsIs ChatGPT's voice mode the same as dictation?
No, and the two get conflated constantly. Voice mode is a spoken conversation: you talk, ChatGPT talks back, like a phone call. OpenAI documents how it works in its voice mode FAQ on help.openai.com, and for brainstorming on a walk or hands-free questions it is genuinely good. But a conversation is not editable. If you misspoke halfway through, or forgot a constraint, your only move is to say more words and hope the model weighs them correctly.
Dictation is an input method. Your speech becomes a text prompt sitting in the chat box, and everything downstream is the normal text workflow: read it before sending, fix the one wrong word instead of restating everything, add a paragraph, paste a code block underneath, pick your model. And because the prompt exists as text, it is reusable. A prompt that worked in ChatGPT can be copied into Claude to compare answers, extended for the next run, or resent after an edit. Nothing you say in voice mode survives the conversation that way.
| ChatGPT voice mode | Dictating your prompt | |
|---|---|---|
| What happens | You talk, ChatGPT talks back | Your speech becomes text in the prompt box |
| Edit before sending | No | Yes |
| Works in | ChatGPT apps only | Every app with a text field |
| Best for | Hands-free Q&A, brainstorming | Real prompt work: context, constraints, follow-ups |
The ChatGPT apps also include their own microphone button for dictating text — but it only works inside ChatGPT. A system-wide hotkey gives you the same motion in Claude, Copilot, Gemini, your email, and your code editor, without learning a different mic button for each.
Does it work with Claude, Copilot and Gemini too?
Yes — this is the whole point of a system-wide hotkey. It does not integrate with ChatGPT; it types into whatever text field has focus, which means every AI interface works on day one:
- Claude — claude.ai in the browser and the Claude desktop apps (Anthropic's apps are documented on support.anthropic.com).
- Copilot — copilot.microsoft.com, the Copilot sidebar in Edge and Windows, and Copilot Chat inside VS Code.
- Gemini — gemini.google.com and the AI prompt fields in Gmail and Google Docs.
- Everything else — Perplexity, Notion AI, Cursor's chat panel, a Midjourney prompt in Discord. If you can click into it, you can dictate into it.
I keep Claude and ChatGPT open side by side all day — Claude for code and product work, ChatGPT for anything web-search-shaped — and a dictation workflow that only existed inside one of them would be useless to me. One held key, the same muscle memory, every model, including whichever one launches next quarter.
How do you dictate long prompts and follow-ups?
The prompt that sold me on my own product was a context dump: two minutes of talking through a bug — what the app does, what the stack trace said, what I had already ruled out. Typed, that would have been ten minutes, and I would have cut half of it. Long context-setting prompts are where dictation pays off most, and where the realtime preview bar matters. Dictating three paragraphs blind is nerve-wracking; watching the transcript appear as you speak is not. If a product name comes out wrong, you see it mid-sentence and rephrase before releasing the key. Say "scratch that" and the last dictation is deleted. An optional AI clean-up pass strips the "um, okay, so basically" before the text lands.
Follow-ups are the other half of prompting, and they fit hold-to-talk even better. Most of an AI session is short steering messages — "make it shorter", "now as a table", "same analysis for Q3". Each one is a two-second hold: key down, five words, release, Enter. No mic panel to open, no mode to enter and exit. Because the hotkey is modifier-safe, all your Ctrl shortcuts keep working between dictations.
Can you dictate code review comments into Copilot Chat?
Yes, and developers may be the group this workflow suits best. The wordy part of a code review was never the code — it is the explanation: what is wrong, why it matters, what you would change. That is conversational text, and dictating it into Copilot Chat in VS Code, a GitHub pull-request comment, or Claude's chat panel is much faster than typing it between builds.
Accuracy on jargon is the usual worry, and it is a fair one for built-in dictation tools. Whisper handles technical vocabulary far better, and Lazytype's context-aware tone detects when a code editor is active and preserves technical terms instead of "correcting" them into English words. The same flow covers commit messages, issue descriptions, and the Slack reply explaining the fix.
To be clear about the limits: I don't dictate code, and you shouldn't either. Identifiers, regexes, exact indentation — anything where a transcription engine has to guess at symbols is faster to type or paste. The pattern that works is dictating the prose around the code: hold the key for "this function handles retries but leaks the connection on timeout — refactor it to use the pool", then paste the snippet into the same message. The same goes for anything where exact formatting is the point, like a Markdown table or a precisely worded config example. Voice for the explanation, keyboard for the literal characters.
Can you speak Dutch and prompt in English?
Yes — this is what I meant about my prompts starting as spoken Dutch. I prompt in English because the models are at their best in it, but I think faster in Dutch, and translating in my head while speaking is exactly the kind of friction dictation is supposed to remove. Translation mode handles it: Lazytype transcribes what you say, then types it in your target language. Speak Dutch, and an English prompt lands in the ChatGPT box. With 100+ languages auto-detected, the same trick works from Spanish, German, Japanese or Polish.
Voice macros keep the two modes apart: plain dictation on one hotkey, translate-to-English on another. My own setup is Slack in Dutch on the first key and Claude in English on the second, and I never open a settings menu between them. For the full setup, see how to translate while you speak.
Which setup should you use for voice prompting?
Honest answer: it depends on how much you prompt. If you mostly want spoken answers a few times a week, ChatGPT's built-in voice mode is free and already on your phone. If you dictate the odd prompt in English, Windows' Win + H voice typing works in most AI web UIs at no cost — with the accuracy limits we cover in our Windows dictation guide. But if talking to AI is a core part of your working day, a hold-to-talk app pays for itself in the first week: Lazytype is €25 one-time with your own free Groq key, or €5/month for Pro with hosted transcription, on Windows 10/11 and macOS 12+. Either way you get 14 days to find out whether your prompts, like mine, were speech all along.
Try voice prompting for 14 days
All features, no credit card. Dictate into ChatGPT, Claude, Copilot and everything else on your PC.
Download for WindowsFounder of Lazytype. Bas is a Dutch developer who dictates most of what he types — in Dutch and English — and has shipped every Lazytype release since v1.0. More about Bas and Lazytype →