Arc Flow Privacy Policy
Effective date: August 9, 2026
Arc Flow is a voice dictation app built and maintained by one person. This document explains, in plain language, exactly what happens to your voice and your text — what stays on your computer, what only ever goes to a service you chose and you control, and what (very little) ever reaches me.
If you only read one section, read this one.
The short version
- Arc Flow has no accounts, no sign-in, and no login. I don't know who you are.
- On-device mode (the default): your voice and text never leave your computer. Not to me, not to anyone.
- Cloud mode (optional, your choice): your audio/text goes directly from your computer to the AI provider you picked (OpenAI, Anthropic, Google, Groq, DeepSeek, or a custom endpoint), using your own API key. It does not pass through the Arc Flow servers on the way.
- I never see your dictated words, your notes, your dictionary, or your API keys — under any mode.
- Arc Flow sends small anonymous lifecycle events so installs, active installations, and completed app updates can be counted. You can turn this off in Settings > Privacy. These events never contain voice, dictated text, API keys, your name, or your email.
The rest of this document goes through each of these in detail.
1. On-device (local) mode — nothing leaves your computer
When you use Arc Flow with on-device speech-to-text (Whisper or Parakeet) and on-device text cleanup (the bundled local model or your own Ollama), the entire pipeline runs on your machine:
- Your microphone audio is captured, transcribed, cleaned up, and typed into your active window — all locally.
- The audio itself is never written to disk and never saved anywhere. Only the final cleaned-up text is kept, and only in your local history (see Section 4), which lives entirely on your own computer.
- No network request of any kind is made to process your dictation in this mode.
This is the default mode, and it is fully functional offline once your chosen model has been downloaded.
2. Cloud mode — data goes to the provider you chose, not to me
Arc Flow lets you optionally connect a cloud speech-to-text provider and/or a cloud text-cleanup provider, using your own account and your own API key. Today, that list is:
- Cloud speech-to-text: Deepgram, ElevenLabs, Mistral, OpenAI, Groq, or any custom OpenAI-compatible endpoint you configure.
- Cloud text cleanup / Command Mode: OpenAI, Anthropic, Google (Gemini), Groq, DeepSeek, or a custom OpenAI-compatible endpoint.
If you turn on cloud mode, your audio and/or transcript is sent directly from your device to that provider's servers — not through any server I operate. Your API key is sent along with it, exactly the way it would be if you called that provider's API yourself, because that is, functionally, what Arc Flow is doing on your behalf.
I do not see, store, log, or have any access to that data. It never touches the Arc Flow infrastructure. Once it leaves your device, what happens to it is governed entirely by that provider's own privacy policy and terms — not this one, and not something I control. I am not responsible for how a third-party AI provider handles data you choose to send it; that is the trade-off of choosing cloud mode over on-device mode, and it's why Arc Flow always shows you which mode is active.
If you'd rather nothing ever leaves your device, don't configure a cloud provider — on-device mode is the default and is a complete experience on its own.
3. Your API keys
If you add a cloud provider's API key, it is stored only in your operating system's own secure credential store (Windows Credential Manager). It is never written to Arc Flow's local database, never logged, and never sent anywhere except directly to the provider it belongs to, when you use that provider.
4. What's stored locally on your device
Your dictation history, personal dictionary, snippets, writing-style preferences, notes, and settings are stored in a local database on your own computer, encrypted at rest (SQLCipher, AES-256). The encryption key lives only in your operating system's credential store. I have no copy of this database, no access to it, and no way to read it remotely — it never leaves your computer at all.
You can clear your dictation history at any time from Settings → Privacy.
5. What Arc Flow's own servers actually do
Arc Flow talks to a small backend I operate (for checking updates and a few optional, user-initiated features). Here is the complete list of what that backend is used for — there is nothing beyond what's listed here:
| Feature | What's sent | Automatic, or only if you act? |
|---|---|---|
| Update check | The app version you're running | Automatic (a small periodic check, roughly hourly) |
| Release notes | Nothing personal — just fetches the notes for a version | Only when you open "what's new" |
| In-app notifications | Nothing personal — just the app version, to filter which notices apply | Automatic (periodic, cosmetic only) |
| Anonymous usage counts | A hashed random installation ID, app version, platform, and lifecycle event | On by default. Can be turned off in Settings > Privacy |
| Send Feedback / Report a Bug / Suggest a Feature | Whatever you type into that form, plus an optional email address if you choose to add one | Only when you press Send — never automatic |
| Crash reports | A local crash report you're shown before it's sent — app version, timestamp, and the code location/message of the crash. Never your audio or dictated text. | Off by default, and only sent when you press Send on a specific report |
None of this requires or creates an account. A random installation ID is created locally only for anonymous lifecycle counting. The server receives only its SHA-256 hash, not the local ID. It is not based on your hardware, Windows account, name, email, IP address, or advertising identifiers. There is no advertising tracking in the app.
Raw anonymous lifecycle events are retained for 90 days. Before deletion, they are converted into daily totals so long-term growth can be measured without keeping old per-installation events.
If any of these backend calls fail (for example, you're offline), Arc Flow simply treats it as "nothing new" — it never blocks or interferes with dictation, which works fully offline regardless.
6. What the app never collects, under any mode
- Your dictated audio or transcripts (unless you separately, explicitly paste something into a feedback/bug-report form yourself)
- Your personal dictionary, snippets, notes, or dictation history
- Your API keys
- Your name, email, or account information from inside the desktop app
- Location, contacts, browsing history, or anything from other apps
This section is about the app. An email given on the download page goes to a release-notes list and nothing else. It is never linked to your dictation, because your dictation never reaches me at all.
7. Website downloads and website analytics
The download form asks for a name and email address. After validation, that information is saved to a private Google Sheet so I can contact people about Arc Flow releases. A separate anonymous counter records that a Windows download was requested and which app version was offered. The email address is never joined to the app's anonymous installation identifier.
The website also uses Vercel Web Analytics to understand basic website traffic. This is separate from the Arc Flow desktop app and does not receive your dictated content.
8. Children's privacy
Arc Flow is not directed at children, does not knowingly collect information from children, and has no account system that could collect such information in the first place.
9. Changes to this policy
I may update this policy as Arc Flow's features change. Meaningful changes will be reflected here, in the project repository, with an updated effective date at the top of this document.
10. Not open-source
Arc Flow is free to use, but it is not open-source software — the source
code is not published or licensed for reuse. See LICENSE
in the repository root for the full terms.
11. Contact
Questions about this policy, or about your data, can be sent to helloarcflow@gmail.com.