Ottex
Mac, iOS
You want dictated emails to follow your saved writing instructions.
You need voice dictation on a Windows computer.
Three tools. Different strengths. Find your fit.
Each tool takes a different approach. Here’s a quick side-by-side to help you choose based on your workflow, platforms, and goals.
Mac, iOS
You want dictated emails to follow your saved writing instructions.
You need voice dictation on a Windows computer.
Mac
You want free offline dictation shaped by your instructions.
You need meeting recording in a stable release.
Mac, Windows, iOS, Android
You want bot-free meeting summaries guided by your own notes.
You need voice dictation that works across your apps.
FluidVoice is free; Granola Business costs $14/seat/mo, with free notes limited to 30-day history. Ottex Pro costs $14/mo; app access with local models or BYOK is free, while provider API charges are separate.
| Feature | |||
|---|---|---|---|
| Free tier | YesSource: ottex.ai — checked Oct 2026Forever free with local models and BYOK providers. | PartialSource: fluidvoice.org/download — checked Oct 2026no trial, word limit or paid tier | PartialSource: docs.granola.ai/help-center — checked Oct 2026No daily limit; Last 30 days only in the app |
| Subscription | $14/moSource: ottex.ai — checked Oct 2026$14/mo — unlimited dictation and meeting intelligence, all hosted models included. | NoNo subscription plan | $14/moSource: docs.granola.ai/help-center — checked Oct 2026Pricing is per active workspace member, with monthly billing only. |
| One-time payment | Not applicableSource: ottex.ai — checked Oct 2026Application is free | Not applicableSource: fluidvoice.org/download — checked Oct 2026Application is free | Not applicableSource: docs.granola.ai/help-center — checked Oct 2026Application is free |
| Bring your own keyPay the model provider, not the middleman | YesSource: ottex.ai — checked Oct 2026OpenRouter, Google AI, OpenAI, Anthropic, Mistral, and compatible providers. | YesSource: fluidvoice.org/docs — checked Oct 2026Optional cloud cleanup uses the user's API key and separately billed provider account. | NoSource: docs.granola.ai/help-center — checked Oct 2026Granola does not support bringing your own AI models. |
| Education discount | NoSource: ottex.ai — checked Oct 2026Same pricing for everyone. | No public claim | YesSource: granola.ai/students — checked Oct 2026Accepted currently enrolled students at accredited universities in the US, UK, and Canada receive Business for $0 for 12 months; no percentage discount or recurring monthly or annual student price is published. |
Granola supports Mac, Windows, iOS and Android; FluidVoice supports Mac with a Windows testing prerelease, while meetings require the Mac beta. Ottex supports Mac and iOS.
| Feature | |||
|---|---|---|---|
| Platforms | Mac, iOSSource: ottex.ai — checked Oct 2026 | MacSource: fluidvoice.org/download — checked Oct 2026Some platforms in beta/waitlist | Mac, Windows, iOS, AndroidSource: docs.granola.ai/help-center — checked Oct 2026 |
| Native app footprintLight on memory, instant to invoke | YesSource: ottex.ai — checked Oct 2026Native Swift app, ~50MB RAM. | PartialSource: raw.githubusercontent.com/altic-dev — checked Oct 2026The macOS application uses SwiftUI and AppKit; the Windows implementation was not verified. | NoSource: granola.ai/jobs — checked Oct 2026The desktop application uses Electron with OS integrations; mobile implementation frameworks remain unverified. |
FluidVoice records locally in its Mac beta; Granola offers a camera recording watermark and meeting-chat recording notices after setup. Ottex records with an experimental, opt-in Mac camera recording watermark.
| Feature | |||
|---|---|---|---|
| Meeting recordingThe call is captured at all | YesSource: ottex.ai — checked Oct 2026With speaker separation. | PartialSource: github.com/altic-dev — checked Oct 2026FluidMeet records meetings locally in macOS v1.6.10-beta.7. | PartialSource: docs.granola.ai/help-center — checked Oct 2026Live audio is captured for transcription, but playable audio and video recordings are not retained. |
| Bot-free captureNo "recording bot" joins your call | YesSource: ottex.ai — checked Oct 2026System-audio capture, no bot joins the call. | PartialSource: raw.githubusercontent.com/altic-dev — checked Oct 2026The macOS beta captures meeting-application audio and microphone audio directly on the computer. | YesSource: granola.ai/security — checked Oct 2026The app captures device audio without adding a participant bot. |
| Camera recording watermarkShow recording in your camera video | PartialExperimental macOS virtual camera adds an Ottex icon to video; install/enable the extension, select it and turn video on. Guide covers Meet in Chrome and Zoom desktop; effects may obscure it. | No public claim | PartialSource: docs.granola.ai/help-center — checked Oct 2026All plans can install and select a virtual camera on macOS 14+ or Windows 11; Enterprise enforcement requires chat notices and may require workspace activation by support. |
| Participant noticesRecording notices in chat or calendar | No public claim | No public claim | PartialSource: docs.granola.ai/help-center — checked Oct 2026Desktop chat notices support Meet through a Chromium extension and Zoom or Teams through app setup; Enterprise admins can enforce them, while calendar-invite notices remain unverified. |
| Speaker separation | YesSource: ottex.ai — checked Oct 2026 | PartialSource: github.com/altic-dev — checked Oct 2026FluidMeet includes speaker labels in the macOS beta; automatic identification of participants by real name is unverified. | PartialSource: docs.granola.ai/help-center — checked Oct 2026Configured desktop speaker tags identify participants in Meet, Zoom, and Teams; mobile transcripts use speaker labels. |
| Calendar detection | YesSource: ottex.ai — checked Oct 2026Calendar-based meeting detection. | PartialSource: raw.githubusercontent.com/altic-dev — checked Oct 2026The macOS beta optionally detects Zoom, Teams, Webex, and supported browser meetings, then offers user-started recording. | YesSource: docs.granola.ai/help-center — checked Oct 2026Calendar reminders and microphone-use detection prompt the user to start notes. |
| Cross-meeting search | YesSource: ottex.ai — checked Oct 2026 | PartialSource: github.com/altic-dev — checked Oct 2026The macOS beta's Global Search includes transcripts across the application. | YesSource: docs.granola.ai/help-center — checked Oct 2026Chat queries multiple meetings, with Basic limited to the accessible 30-day history. |
| Shared team memory | PartialSource: ottex.ai — checked Oct 2026Public share links, not a full team workspace. | No public claim | YesSource: docs.granola.ai/help-center — checked Oct 2026Folder-level Chat queries shared meeting-note collections. |
FluidVoice summarizes locally in its Mac beta; Granola and Ottex use meeting templates to structure transcript information and offer reusable prompts for transcript chat. Ottex also drafts structured CRM updates and tickets.
| Feature | |||
|---|---|---|---|
| Meeting template libraryTurn a transcript into a structured document | YesSource: ottex.ai — checked Oct 2026Choose a ready-made document template to extract relevant information from a meeting transcript into a structured document, such as a product review or client-call report. | No public claim | PartialSource: docs.granola.ai/help-center — checked Oct 2026Desktop users select built-in meeting-type templates that generate or regenerate enhanced notes in the chosen structure. |
| Transcript chat prompt libraryReady-made prompts for AI chat about meetings | YesSource: ottex.ai — checked Oct 2026Use ready-made reusable prompts in AI chat to ask questions, analyze discussions and extract information from meeting transcripts. | No public claim | YesSource: docs.granola.ai/help-center — checked Oct 2026The Recipes menu and Discover tab provide reusable Granola and community prompts that run over individual or multiple meetings. |
| Decisions, owners, action itemsLeave the meeting with next steps clear | YesSource: ottex.ai — checked Oct 2026Decisions with owners extracted. | PartialSource: raw.githubusercontent.com/altic-dev — checked Oct 2026The macOS beta offers a Key decisions output, while assignment of decision owners is unverified. | YesSource: docs.granola.ai/help-center — checked Oct 2026Chat extracts action items from meeting notes and transcripts. |
| Follow-up email draftedThe outcome is sent, not summarized | YesSource: ottex.ai — checked Oct 2026Drafted from templates or your own. | No public claim | PartialSource: docs.granola.ai/help-center — checked Oct 2026Automatic drafts require a paid plan or trial, connected Gmail, an external guest, and no more than 10 attendees. |
| CRM update / ticket draft | YesSource: ottex.ai — checked Oct 2026Structured for the target app. | No public claim | No public claim |
| Your rough notes steer the result | YesSource: ottex.ai — checked Oct 2026Rough notes and instructions steer the result. | No public claim | YesSource: docs.granola.ai/help-center — checked Oct 2026Typed raw notes guide generated notes alongside the transcript and calendar context. |
FluidVoice and Ottex apply saved writing rules and custom dictionaries to dictation; Ottex also formats paragraphs and lists automatically and inserts saved text via voice triggers. Granola cannot dictate into other apps.
| Feature | |||
|---|---|---|---|
| Engines | Cloud: Whisper, Gemini 3 Flash, Voxtral. Local: Whisper, Parakeet v3.Source: ottex.ai — checked Oct 2026Hosted routing, BYOK, or fully local. | Nemotron Speech 3.5, Nemotron 3.5 Multilingual, Parakeet Flash Beta, Parakeet TDT v3, Parakeet TDT v2, Cohere Transcribe, Apple Speech, WhisperSource: fluidvoice.org/models — checked Oct 2026The macOS model lineup varies by hardware and operating-system compatibility. | No public claim |
| Local / on-device optionAudio never leaves the machine | YesSource: ottex.ai — checked Oct 2026Whisper and Parakeet v3 run fully on-device. | YesSource: fluidvoice.org — checked Oct 2026Local recognition and local cleanup work offline after their required assets are installed. | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
| Model selection per task | YesSource: ottex.ai — checked Oct 2026Choose the model per task and per provider. | YesSource: fluidvoice.org/models — checked Oct 2026Users can download and switch speech models in the application. | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
| Languages & mixed speechWork that crosses languages mid-sentence | YesSource: ottex.ai — checked Oct 2026100+ languages · Mid-sentence language switching. | PartialSource: fluidvoice.org/docs — checked Oct 202699+ languages · Mid-sentence language switching can produce errors and requires testing with the selected model. | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
| Automatic formatting | YesSource: ottex.ai/docs — checked Oct 2026Dictation automatically fixes punctuation, groups ideas into paragraphs and formats enumerations as lists. Formatting toggles and profile rules customize output. | PartialSource: raw.githubusercontent.com/altic-dev — checked Oct 2026Optional AI cleanup fixes punctuation and capitalization, while spoken directives create line breaks and list items. | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
| Custom dictionary | YesSource: ottex.ai/docs — checked Oct 2026Add or delete names and specialist terms with preferred spellings; entries provide recognition context during transcription. | YesSource: fluidvoice.org/features — checked Oct 2026Custom Dictionary accepts preferred spellings for names and jargon, with JSON import and export. | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
| Voice snippetsSay a saved phrase to insert a link or text | YesSource: ottex.ai/docs — checked Oct 2026Save a voice trigger and expansion text; saying the trigger while dictating inserts the saved URL or text in place. | No public claim | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
| Custom voice instructionsFree-form rules applied after dictation | YesSource: ottex.ai — checked Oct 2026Saved profile instructions automatically process dictation before insertion; rules can include writing examples, personal phrasing and email signatures. | YesSource: fluidvoice.org/docs — checked Oct 2026Saved user-written prompts automatically process dictation before insertion when AI cleanup is enabled. | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
| Tone presetsChoose a predefined writing style | YesSelect built-in Messaging or Email profiles for casual or professional dictation; assigning apps or websites enables automatic profile activation. | No public claim | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
| Text transforms / AI ShortcutsApply an AI action to existing text | YesSource: ottex.ai/docs — checked Oct 2026Select or copy existing text, open Omnibar and run an AI Shortcut to rewrite, translate, summarize or apply a custom prompt; the result is copied/pasted. | PartialSource: fluidvoice.org/features — checked Oct 2026Write Mode replaces selected text using spoken rewrite instructions in Accessibility-compatible fields, with AI-provider compatibility restrictions. | PartialSource: docs.granola.ai/help-center — checked Oct 2026Desktop Chat rewrites, expands, corrects, or translates selected sections of Granola meeting notes. |
| Per-app output rules | YesSource: ottex.ai — checked Oct 2026Per-app output rules: exact in AI chats, polished in email. | YesSource: fluidvoice.org/docs — checked Oct 2026User-authored per-app instructions are selected automatically for the focused application. | NoSource: docs.granola.ai/help-center — checked Oct 2026System-wide dictation is not supported. |
Choose FluidVoice for free offline dictation with saved writing rules, or Granola for meeting summaries guided by your notes and searchable shared folders. Choose Ottex for dictation plus meeting-derived follow-ups, structured CRM updates and tickets.
FluidVoice is free with no trial or word limit; Granola Basic has no daily limit but provides only 30 days of history in the app. Ottex offers free app access with local models or BYOK; any provider API charges are separate.
FluidVoice costs $0; Granola offers free Basic, while Business costs $14/seat/mo, totaling $168 per seat for 12 monthly payments, with no annual price listed. Ottex Pro costs $14/mo or $168/yr; local models and BYOK provide free app access, excluding provider API charges.
For keeping dictation on-device, choose FluidVoice with installed local recognition and cleanup models; Ottex also runs Whisper and Parakeet v3 locally. Granola has no local-processing option and does not retain playable recordings; BYOK paths in FluidVoice and Ottex use your chosen API provider.
Switch to Granola if shared, searchable meeting notes guided by your typed notes matter more than dictation. Stay with FluidVoice for free offline dictation with saved writing rules; choose Ottex if you need dictation and meeting-derived CRM updates or tickets.
Granola supports Windows and Android; FluidVoice has an official 64-bit Windows prerelease for testing and no listed Android app. Ottex supports Mac and iOS, with no Windows or Android app.
Neither does: FluidVoice captures meeting audio locally in its Mac beta, Granola captures device audio without a bot, and Ottex records system audio without a bot. Capturing without a bot does not establish participant consent.