Privacy Policy
Oats is built so that most of this policy is about things we cannot see. Here is exactly what leaves your device, what does not, and who touches it when it does.
Last updated 31 August 2026
Oats is made by OpenSoftLabs LLC, a Wyoming limited liability company ("OpenSoftLabs", "we", "us"). This policy covers the Oats desktop app for macOS and Windows, the Oats mobile app for iOS and Android, and the website at oatsnote.com. It is the controller-facing document for GDPR and the notice at collection for the CCPA/CPRA.
Contact for anything in this document, including data-subject requests: opensoftlabs2026@gmail.com.
The short version
| Surface | Where your audio is transcribed | Where your notes live | Account required |
|---|---|---|---|
| Desktop (macOS, Windows) | On your machine, always | On your machine, always | No |
| Mobile (iOS, Android) | Deepgram, in the cloud | On your phone | Yes |
| oatsnote.com | — | — | No |
We never receive your recordings, your transcripts or your notes on any surface. We have no database of your meetings, because there is nowhere for one to exist. Nothing you record is used to train any model of ours, and we do not sell or share personal information as those terms are defined by the CPRA.
The desktop app
What stays on your machine
- Audio. Microphone and system audio are mixed and written to disk locally. No copy is uploaded.
- Transcription. Speech-to-text runs on your machine with local Whisper or Parakeet models. The audio never crosses the network to reach a transcriber.
- Transcripts, notes and summaries. Stored in a local database in your user application-support directory.
- API keys. If you configure a language-model provider, the key is stored locally and sent only to that provider.
What leaves your machine
Product analytics (on by default, one switch to turn off). Fresh installs of the desktop app send anonymous usage events to PostHog. The identifier is a random string generated on your machine; it is not derived from your name, email, hardware serial or IP-based fingerprint, and it is never joined to any other identity because we hold no other identity for you.
Events carry only: the event name (for example session_started, meeting_started, transcription_completed), a timestamp, the app version, and coarse device information — platform, OS version and CPU architecture. Meeting titles, participant names, transcript text, summary text, file names and file paths are stripped before an event is sent, and there is no autocapture, no session replay and no screen recording. Turn analytics off in Settings → Privacy; the toggle takes effect immediately and no further events are sent. Analytics data is retained for 12 months.
Update checks. The app asks our release host whether a newer version exists. That request necessarily reveals your IP address, the current version and your platform, the same as any software updater. We do not build profiles from it.
Model downloads. Downloading a transcription model fetches a file from the model host. Same disclosure: IP address and the file requested.
Language-model providers you choose. Summaries are off by default until you pick a provider. Choose Ollama and generation runs on your machine and nothing leaves it. Choose Anthropic, OpenAI, Google, Groq or OpenRouter and the transcript you are summarising is sent to that company under your own API key and their terms. We are not in the middle of that request, we cannot see it, and we cannot delete it for you — ask them.
The mobile app
Phones cannot run a usable real-time transcriber, so the mobile app is honest about being partly a cloud product. Here is the whole of it.
Your account
The app starts anonymous and works without a sign-in. If you sign in with Google or Apple, Firebase Authentication (Google LLC) issues a user ID and stores the email address and display name the provider gives us. Sign in with Apple's private-relay address works fine and is the more private option. We keep a single record per user in Firestore holding: user ID, plan entitlement, and usage counters (notes created, minutes transcribed) for quota enforcement. That record contains no note content.
Recording and transcription
Audio is streamed from your phone to Deepgram (Deepgram, Inc., United States) over an encrypted WebSocket for real-time transcription with the Nova-3 model. Our server never receives the audio — it only mints a short-lived, user-tagged key that your phone uses to talk to Deepgram directly, and reconciles minute counts afterwards from Deepgram's usage API. Deepgram's handling of the audio it receives, including any retention or model-improvement use, is governed by Deepgram's privacy policy and our agreement with them. If sending audio to a third party is unacceptable for your work, use the desktop app, where transcription is local.
Notes
Transcripts and notes are written to a SQLite database on your phone. They are not synced to us and there is no server-side copy. Deleting a note deletes it; Settings → Storage → Delete everything removes all of them at once. Uninstalling the app removes the database with it.
Turning a transcript into a note
Two paths, and you pick:
- Transcript only. No model, no network beyond transcription. This is the default.
- Your own key. Add an Anthropic, OpenAI, Google, Groq or OpenRouter key and the transcript goes to that company under your key. The key is held in the phone's keychain (iOS Keychain / Android Keystore) and is never transmitted to us. The app asks for explicit consent, naming the recipient company, before the first transcript is sent to any provider.
- Our rewrite service. Some editing actions call our Cloud Run API, which forwards the text you are editing to Google Vertex AI (Gemini) and streams the result back. The text passes through our server in memory to reach Vertex AI; we do not write it to a database or log it. Google's processing is governed by the Google Cloud terms, under which Vertex AI does not use customer prompts to train its models.
Permissions the mobile app asks for
- Microphone — required to record. Used only while a recording is running.
- Notifications (optional) — to tell you a recording is still going.
The app does not request contacts, calendar, photos, precise location or the advertising identifier, and contains no advertising or third-party tracking SDK.
The website
oatsnote.com uses PostHog for page analytics, proxied through our own domain. On your first visit a banner asks; analytics only starts if you accept. We collect page views, referrer, coarse device and browser type, and a country-level location derived from your IP. We do not store your full IP address, run advertising pixels, or sell traffic data. The site sets no cookies for advertising purposes.
Who processes data for us
| Processor | What it handles | Which app |
|---|---|---|
| PostHog, Inc. (US) | Anonymous usage events | Desktop, website |
| Google LLC — Firebase Auth, Firestore, Cloud Run, Vertex AI | Sign-in, entitlement and usage counters, API hosting, note rewriting | Mobile |
| Deepgram, Inc. (US) | Speech-to-text on streamed audio | Mobile |
| Vercel Inc. (US) | Website hosting and request logs | Website |
| Cloudflare, Inc. (US) | Serving app downloads and model files | Desktop |
| Apple Inc. / Google LLC | App distribution and, in future, subscription billing | Mobile |
Language-model providers you configure with your own key are not our processors. You are their customer directly, and their terms govern that data.
International transfers
Our processors are United States companies and data reaches servers in the United States. Where the GDPR or UK GDPR applies, transfers rely on the European Commission's Standard Contractual Clauses as incorporated into each processor's data-processing agreement. The desktop app avoids the question for your actual content: with analytics off and a local model selected, nothing about your meetings is transferred anywhere.
Legal bases (GDPR)
- Contract — running your account, transcribing what you record, enforcing plan quotas.
- Consent — website analytics, and sending a transcript to a language-model provider. Withdrawable at any time.
- Legitimate interests — desktop product analytics and crash diagnostics, to keep the app working. Balanced against you by making the data anonymous and giving you a one-switch opt-out.
Retention
- Recordings, transcripts, notes: as long as you keep them on your device. We hold none of them, so we cannot delete them for you — you can, in one action, from the app.
- Analytics events: 12 months, then deleted.
- Account and usage records: for the life of the account, plus 30 days after deletion.
- Web server logs: per Vercel's default retention, up to 30 days.
Your rights
If you are in the EEA, UK or Switzerland you have the rights to access, rectification, erasure, restriction, portability and objection, and the right to complain to your supervisory authority. If you are a California resident you have the rights to know, delete, correct and opt out of sale or sharing — we do not sell or share personal information, so there is nothing to opt out of, and we will not discriminate against you for exercising any right.
In practice most of these you exercise yourself, because the data is on your device. For anything held by us — your account record and analytics — email opensoftlabs2026@gmail.com and we will respond within 30 days. Deleting your account from Settings in the mobile app removes the account record and its usage counters.
Children
Oats is not directed to children under 13 (or under 16 in the EEA), and we do not knowingly collect their data. If you believe a child has created an account, email us and we will delete it.
Security
All network traffic is TLS-encrypted. API keys are stored in the operating system's keychain on mobile and in the app's local store on desktop; on-device data is protected by your device's own encryption and file permissions. The desktop app is open source under the MIT licence, so every claim on this page about what it does and does not send can be checked against the code rather than taken on trust.
Changes
Material changes are announced in release notes and in the app, and the date at the top of this page changes. Past versions are visible in the public repository's history.
Contact
OpenSoftLabs LLC, Wyoming, United States — opensoftlabs2026@gmail.com.