TL;DR: You can dictate and send messages on a Mac without touching a single key. With Infina's hands-free mode on, sit back a couple of feet from your Mac and say "type running ten minutes late, order without me" to compose the message, say "send" to press Enter, then say "open Slack" and answer the next thread the same way. No other dictation app completes that compose, send, and switch-apps loop hands-free in plain English. Infina is $99 once as of July 2026, with a 7-day no-questions refund.

What it takes to dictate and send messages on a Mac

Most dictation tools solve half the job. They turn speech into text in a message box, and then hand you back to the keyboard to actually send it.

That last keystroke matters more than it sounds. A message is a two-step action: compose, then send. If sending still needs your hands, you never really left the keyboard.

So a full voice messaging workflow on a Mac needs three abilities:

  • Dictate into any chat app: Messages, Slack, WhatsApp Web, Discord, Telegram, whatever is focused.
  • Send by voice: press Enter without pressing Enter.
  • Switch conversations by voice: move between apps to answer the next person.

Infina does all three. Here is each piece, starting with the simplest.

Step 1: Push-to-talk dictation into any chat app

The everyday gesture is push-to-talk:

  1. Click into the message field in Messages, Slack, WhatsApp Web, or any chat app.
  2. Hold Option (⌥) and speak your message.
  3. Release Option. The text lands at your cursor.
  4. Press Enter to send (or say "send" in hands-free mode, covered below).

Because Infina types at the OS level into whatever field is focused, there is nothing app-specific to install or configure. The gesture is identical in a native app like Messages, an Electron app like Slack, and a browser tab running WhatsApp Web.

We have dedicated walkthroughs for the two most-searched cases: voice typing for iMessage and voice typing for WhatsApp Web.

Transcription runs entirely on your Mac by default (Apple Silicon, on-device model on the Neural Engine). Your audio never leaves the device, and it works offline, which matters when your messages are private by definition.

If you are brand new to Mac dictation in general, start with how to dictate on Mac for the broader setup.

Step 2: The hands-free loop, compose and send without touching anything

Push-to-talk already beats typing for messages. Hands-free mode removes the keyboard entirely.

Double-tap Cmd (⌘) to toggle hands-free mode on. From then on, from a couple of feet away:

  1. Say a sentence that starts with "type", then your message: "type sounds good, see you at seven." Infina types it into the focused field.
  2. Say "send". Infina presses Enter, and in Messages that sends the message.
  3. Say "open Slack" (or "open Messages", or any app). Infina switches apps, and you repeat the loop in the next conversation.

That is the whole mechanic. There is no special phrase to memorize; a sentence starting with "type" is itself the trigger.

This is the part no other dictation app does. Plenty of tools transcribe well, but they stop at putting text in the box. The keystroke to send, and the Cmd-Tab to reach the next app, stay on your hands. Infina completes the whole loop in plain English.

Two honest notes. Hands-free is our newest surface, labeled experimental, and it ships off by default; you turn it on with the double-tap when you want it. It is also happiest in a reasonably quiet room, and push-to-talk always works as the fallback.

Step 3: Know what Enter does in your app

"Send" presses Enter. What Enter does is up to the app, so know your app before you trust the loop blind:

  • Messages: Enter sends. The loop works exactly as described.
  • Some apps and settings: Enter inserts a newline instead, and sending needs a modifier key or a click. Several chat apps also let you flip this behavior in their settings.

The practical rule: send yourself one test message per app. Thirty seconds of testing tells you whether "send" fires the message or starts a new paragraph in that app.

If Enter adds a newline in your app of choice, check that app's settings for a "press Enter to send" toggle, or keep that app on push-to-talk and finish with a manual Enter.

The free option, and where it stops

macOS has built-in dictation, and for occasional use it is genuinely fine. Enable it in System Settings, trigger it from the keyboard, and it types into Messages like any text field.

Its limits for messaging are the workflow, not the words. It is keyboard-triggered per dictation, it does not press Enter for you, and it does not switch apps. You are still parked at the Mac for every message.

That is the honest dividing line. If you send a few messages a day, use the free tool. If you talk to people (and AI tools) all day and want to answer from across the room while lunch is in front of you, the hands-free loop is the difference, and one $99 purchase covers it.

When dictation into a chat app misbehaves

Common failure modes are almost never the chat app itself: microphone permission not granted, the wrong input device selected, or macOS input volume sitting near zero.

We keep a full checklist in Mac dictation not working. Run through it once and the same fixes apply to Messages, Slack, and everything else.

Raw text, and when you want polish

Base Infina outputs raw transcription with fast on-device cleanup. For chat, raw is usually right: messages are conversational, and your friends do not grade your commas.

If you dictate a lot of client-facing or formal messages, the optional cloud add-on ($10/month, 7-day free trial, cancel anytime) adds sharper cloud transcription and LLM-polished punctuation and grammar, plus more languages beyond the English-only base model. That is the same polish subscription apps charge $15/month forever for; here it is an add-on to an app you own.

Pricing details for both live on the pricing page.

FAQ

Can I send an iMessage entirely by voice on a Mac? Yes. With Infina's hands-free mode on, say "type" followed by your message, then say "send". Enter sends in Messages, so the message goes out without you touching the keyboard. "Open Messages" gets you into the app by voice too.

Does this work in Slack and WhatsApp Web? Yes for dictation: Infina types into whatever field is focused, native app or browser tab. For sending, "send" presses Enter, and what Enter does depends on the app and its settings. Send one test message per app to confirm.

Do I need to say a special phrase before dictating a message? No. In hands-free mode, a sentence that starts with "type" is itself the trigger. Say "type on my way now" and Infina types "on my way now". Push-to-talk needs no phrases at all: hold Option, speak, release.

Is my voice sent to the cloud when I dictate messages? Not by default. Infina transcribes your speech entirely on your Mac, works offline, and privacy mode is on by default so nothing is stored server-side. Cloud processing exists only as an optional paid add-on.

Is hands-free messaging reliable enough for daily use? Hands-free mode is labeled experimental and ships off by default, and it works best in a reasonably quiet room. Push-to-talk (hold Option) is the always-reliable path, and many users run push-to-talk at the desk and hands-free away from it.

What does Infina cost? $99 one-time as of July 2026, no subscription, with a 7-day no-questions money-back guarantee. The optional cloud add-on for polished output and more languages is $10/month with its own 7-day free trial.

The bottom line

Dictating a message was solved years ago. Sending it, and moving to the next conversation, without your hands was not.

On a Mac, the full workflow is: hold Option to dictate anywhere, or double-tap Cmd and run the loop by voice: "type" your message, "send" it, "open" the next app. Just know what Enter does in each app, which one test message settles.

Free built-in dictation is fine for the occasional reply. For everyone who lives in Messages, Slack, and AI chat windows all day, Infina is the only tool that finishes the job hands-free. $99 once as of July 2026, risk-free for 7 days.