Privacy Policy

Last Updated: October 25, 2026

Quick answers about your privacy

These answers summarize the most important privacy points in plain language. The detailed policy and provider tables below explain the same topics in more depth.

Can OpenMates employees read my private chats?

Private chats are not routinely reviewed by OpenMates employees, and we do not provide a normal admin screen for browsing private chat content. However, OpenMates is not a strict end-to-end encrypted or zero-knowledge system: relevant content can be processed temporarily in server memory when you ask for an AI response or use a feature that needs server processing.

How are my chats protected?

Your saved chat history is encrypted on your device before it is stored or synced. OpenMates does not provide staff with a normal admin tool to browse private chats, and decrypted chat content is not intended to be written to databases, backups, logs, or traces. When you ask for an AI response or use a server-powered feature, OpenMates may temporarily process the relevant decrypted content in server memory so the request can work. This means hosted OpenMates is privacy-protective, but not a strict zero-knowledge or device-only system.

What is the recent AI context cache?

To make follow-up responses fast, OpenMates may keep a short-lived, server-readable AI context cache for recent chats, currently designed around the last 3 chats. This cache is encrypted with server-side Vault encryption, but OpenMates servers can decrypt it while processing your request. If the cache is missing, the server may ask your active client to resend the needed decrypted context and cache it temporarily again.

Where are my chats stored, and how are they protected?

Saved chats, artifact history, settings, and memories are stored as ciphertext. PostgreSQL holds their records; these records are encrypted for authorized clients. Uploaded files and recordings are kept separately as encrypted objects in S3. A separate short-lived AI context cache is encrypted with server-side Vault keys and can be read by OpenMates servers while processing your request. A pending assistant response sealed to a client public key for offline recovery remains available until an authorized client verifies and confirms its normal client-encrypted save, or the related chat or account is deleted. Large sealed responses may be stored in regional S3 object storage. Expiry of a retry lease or the AI working cache alone does not remove the pending sealed copy. The server cannot rebuild missing readable AI context from client-encrypted history without an authorized client.

Do third-party providers receive my content?

Yes, when you choose a model or use a provider-powered feature, the content needed for that request may be sent to the provider. Eligible typed chat messages use client-side placeholder substitution for recognized personal details and secrets. Anything not detected may be sent as typed, and the protection does not cover voice recordings, raw transcripts, uploaded files, reference images, calendar content, or structured skill inputs unless a feature explicitly says otherwise.

What happens when I record audio?

Audio travels over TLS through the OpenMates backend hosted by Hetzner and is sent to Mistral for transcription. Realtime audio is streamed; uploaded recordings are encrypted by our upload service before durable storage and decrypted only in server memory for transcription. The raw transcript is then sent to Google Gemini, or Inception Mercury when that correction route is enabled, to correct obvious transcription errors and create a title. Audio and raw transcripts do not receive the placeholder substitution used for eligible typed chat messages. OpenMates stores recordings and transcripts as encrypted account content, but Mistral, Google, or Inception may retain API request data under their own policies.

What happens during a voice call?

During a voice call, microphone audio travels over TLS through OpenMates to Mistral Voxtral for realtime transcription. Raw microphone audio does not receive personal-data placeholder substitution. Completed user transcripts and submitted text enter the normal OpenMates encrypted chat pipeline, including eligible text privacy protections, automatic AI routing, skills and permissions. ElevenLabs v4 Turbo receives speakable assistant reply text and curated voice settings to generate spoken replies; it does not receive microphone audio on this path. User and rich assistant messages are encrypted before durable synchronization or storage. Generated call audio is streamed transiently and is not saved as an OpenMates audio asset; voice calls do not save a microphone recording. OpenMates does not durably retain plaintext call audio or transcripts. Mistral, ElevenLabs and the AI providers selected by normal routing may retain API request data under their own policies.

Are my chats used to train AI models?

OpenMates does not use your private chats to train OpenMates-owned AI models. For third-party providers, the answer depends on the provider. Most audited chat-model providers state that they do not train on API customer data, or only train if the customer opts in. Some image or 3D generation providers have broader or limited-use policies. The provider-by-provider training table below lists the status, source document, and last verification date.

Does placeholder protection make sensitive data safe to send?

No. Placeholder protection reduces risk, but it is not a guarantee. It works best for recognized personal data, saved privacy-profile values, and common secret patterns. It may miss typos, unusual formats, context-only sensitive information, other people's personal data, or sensitive topics that are not technically identifiable as personal data.

What data appears in logs or diagnostics?

OpenMates is designed so chat content is not written to logs or traces. Application logs and telemetry include redaction and filtering for authentication headers, cookies, tokens, passwords, emails, IP addresses, and chat content. Browser stability logs are sanitized, use temporary session identifiers, and can be disabled in privacy settings.

What happens when I delete my account or chats?

Deletion of a chat or account removes its current records under that deletion’s authority and schedules removal of unshared regional S3 objects. Encrypted regional copies can remain while verified physical deletion completes. Earlier database revision and activity records can still retain account-profile details or encrypted chat and artifact snapshots after the current records are deleted. Those historical records are separate from content-free deletion markers and currently have no automatic expiry. Account-key destruction makes only content protected solely by that key unreadable. Content retained by another authorized owner or Team, financial records, and provider-held data can also remain as described below.

What does open source mean for my privacy?

Open source means the OpenMates software code is public and can be inspected by others. It does not mean your private data is public. Your chats, account data, settings, memories, uploads, and billing data are not published on GitHub. The code is public; your personal data is not.

Is OpenMates suitable for sensitive topics?

OpenMates is privacy-conscious, but it is not a zero-knowledge or device-only system. It is reasonable for everyday private AI use when you avoid unnecessary personal details. For highly sensitive legal, medical, financial, business-confidential, or safety-critical topics, be careful about what you enter and which model or provider you use.

What if I have the highest privacy requirements?

If you have very high privacy requirements, consider the self-hosting edition of OpenMates with local or offline AI models instead of third-party AI providers. This gives you more control over infrastructure, model choice, logs, backups, and provider exposure. It requires technical experience, ongoing maintenance, secure server administration, and enough hardware for useful local AI inference. Self-hosting does not automatically make everything private: you still need to secure the server, backups, secrets, network access, logs, and any external providers you enable.

Overview

Structured chat data is encrypted on your device before sync. Uploads and recordings instead travel over TLS and are encrypted by our service before durable storage. AI requests can require transient in-memory decryption, and a separate short-lived Vault-encrypted AI cache can be read by OpenMates servers. Account deletion removes content under that account's authority and destroys its account encryption keys; content retained by another authorized owner or Team can remain available.

OpenMates (https://openmates.org) serves as both our informational website and web application. All visitors access OpenMates through Vercel. When you sign up and use our AI features, your data is also processed by our backend services (hosted on Hetzner) and various AI providers as described below.

How we protect your data

Below are the privacy promises we make to every user. Each one is backed by code in our open-source repository and verified by automated tests. When the enforcing code changes, a registry-linked check reminds us to rerun those tests before release.

Structured chat data is encrypted before sync

Structured chat data, settings, and memories are encrypted in your browser with AES-256-GCM before sync, and the server stores ciphertext on disk, in caches, and in backups. Uploaded files and recordings instead travel to our backend over TLS and are encrypted by the upload service before durable storage. This is not end-to-end encryption; server-side tasks decrypt relevant content transiently in memory when needed to provide a requested feature.

Email addresses encrypted at rest

Your email address is stored only as ciphertext. The server decrypts it transiently in memory during login, billing, and notification delivery, and never writes plaintext to disk or logs.

No third-party tracking cookies or analytics

We do not use Google Analytics, Plausible, PostHog, Mixpanel, Amplitude, Segment, or any other third-party analytics platform. Our telemetry is server-side, cookie-free, and contains no individually stored identifiers. A pre-edit check in our repository blocks the introduction of analytics SDKs.

Recognized personal data is replaced in eligible typed chat

Before an eligible typed chat message is sent to an AI provider, your browser detects supported categories of personal data and secrets and replaces recognized values with placeholders. The substitution map is encrypted with your chat key. Detection can miss data, and this protection does not cover voice audio, raw transcripts, uploaded files, reference images, connected-account content, or structured skill inputs unless a feature explicitly says otherwise.

Telemetry stripped of sensitive data

Our internal tracing pipeline (OpenTelemetry) strips authentication headers, cookies, and database statements from every span, and pseudonymises your user ID with a salt that rotates every 24 hours. Regular users never have their raw identifiers in telemetry.

Deleted accounts are cryptographically erased

On account deletion, OpenMates destroys the account-controlled encryption keys. Residual ciphertext protected only by those keys becomes unreadable. Shared content retained by another authorized owner or Team, and records held under separate legal authority, can remain.

Passwords stored as Argon2 hashes

We store password and backup-code verifiers as Argon2 hashes. Plaintext passwords are never persisted to disk, never written to logs, and never recoverable — even by us.

No card numbers ever touch our servers

Payments flow directly from your browser to Stripe. We store only provider tokens and customer identifiers. We never see, receive, or persist full card numbers, security codes, or bank account details.

Logs are scrubbed of sensitive data

Every log line passes through a redaction filter that strips email addresses, IP addresses, bearer tokens, and password values. Compliance logs preserve pseudonymous user IDs but remove all other personal data.

Defense against prompt injection

Two layers protect your conversations from malicious content in web pages, files, and URLs you reference. Invisible Unicode characters are stripped first, then a dedicated safety model detects semantic injection attempts and blocks or replaces high-risk content before it reaches your assistant.

Your conversations are not used to train AI models

All AI chat providers we use (Anthropic, OpenAI, Mistral, Google Gemini, Google Vertex AI, Together AI, Groq, Cerebras, and OpenRouter) have explicit no-training clauses in their terms — your conversations are never used to fine-tune, evaluate, or otherwise train AI models. For image generation, Recraft has a training opt-out which we have activated. fal.ai (used for draft image generation) may use anonymized, aggregated derivatives of prompts for model improvement under their standard API terms; no full opt-out is available outside an enterprise contract. A per-provider audit with verbatim policy quotes and verification dates is published in our open-source repository.

The web app never loads external images or scripts

Every external image, favicon, or preview shown in the app is fetched through our own preview.openmates.org proxy — the originating website never sees your IP address. The only third-party script the web app loads is the Stripe payment SDK needed to process a purchase, and only when you explicitly open the payment flow. There is no ad network, tag manager, CDN font loader, or third-party analytics library.

The command-line tool never asks for your password

The OpenMates CLI never prompts you for your email, password, 2FA code, or any other login credential. Authentication uses a browser-based pair-auth handshake: the CLI shows a QR code and URL, you approve the session in your logged-in web browser, and you type a short 6-character binding PIN back into the CLI to confirm. Your credentials never pass through the terminal.

Every claim on this page is independently auditable

OpenMates is open source. Every promise above is backed by code you can read, tests you can run, and architecture documents you can audit in our public repository. Our privacy-promises registry links each claim to the exact files that enforce it.

AI Provider Model Training Disclosure

The following table shows, for each AI provider we use, whether they claim to use API request data for model training. We verify these policies periodically by reading each provider's terms of service and privacy policy. The 'Last checked' column shows when we last reviewed the policy.

Provider Uses data for training? Details Last checked
Baseten No Baseten Terms and Conditions, section 6.3 October 25, 2026
AWS Bedrock (EU region, primary Claude path) No AWS Bedrock FAQ + AWS Service Terms §50.12 April 16, 2026
Anthropic (US, fallback Claude path) No Anthropic Commercial Terms of Service, Section B April 16, 2026
OpenAI (US) No OpenAI Services Agreement (applies to API, ChatGPT Business, ChatGPT Enterprise) April 16, 2026
Inception Mercury (US) No (opted out) Inception Terms of Use, Licenses (effective 2025-09-01) October 20, 2026
TypeSafe Jev (US) No TypeSafe Privacy Policy October 19, 2026
Mistral (EU direct) No Mistral AI Privacy Policy April 16, 2026
Google Gemini (US) No Gemini API Additional Terms of Service (effective 2026-03-23) April 16, 2026
Google Vertex AI Model-as-a-Service (US) No Google Cloud Service Specific Terms, §18 — Training Restriction April 16, 2026
Together AI (US) No Together AI Privacy Policy §1/2.2 (updated 2025-12-17) April 16, 2026
Groq (US, content sanitization) No Groq Services Agreement §4.2 (effective 2025-10-15) April 16, 2026
Cerebras (US, via OpenRouter) No Cerebras ToS, Data Usage and Privacy section (effective 2024-08-27, updated 2025-05-07) April 16, 2026
OpenRouter (US, routing aggregator) No OpenRouter Terms of Service §5.1 (updated 2026-04-02) April 16, 2026
FAL (Flux models) Anonymized derivatives may be used fal.ai Terms of Service §6.3 (updated 2026-03-03) April 16, 2026
Recraft (vector and raster image generation) No (opted out) Recraft Privacy Policy, Artificial Intelligence Features section (modified 2026-03-12) April 16, 2026
Hi3D (3D model generation) Anonymized derivatives may be used Hi3D Terms of Use, User Content and License Grant July 11, 2026

5. Data Categories We Collect and Process

We collect and process the following categories of data to operate and secure our services:

  • Account: Email address, username/display name, profile image, locale, and security settings (e.g., 2FA enabled). Email and username are encrypted with your key before storage. We also keep a separate server-side Vault-encrypted copy of your verified email address for mandatory account lifecycle notices, such as account verification, security alerts, and deletion reminders. Passwords are stored as salted hashes.
  • Usage: Server logs, event timestamps, feature usage, error logs, and device recognition identifiers (hashed). IP addresses may be temporarily processed for security, rate limiting, and anonymous free-usage budget checks. Anonymous free usage uses a first-party random local identifier and sends only a server-side HMAC-hashed form for per-identity abuse limits.
  • Content: Chat messages, prompts, attachments, reminders, voice recordings and transcripts, calendar content, and uploaded images or videos needed to provide the service. Structured chat fields are generally encrypted in the browser before sync. Uploads and recordings travel to our backend over TLS and are encrypted before durable object storage; they are not necessarily client-side encrypted before transmission. Anonymous free-usage chats stay on the user's device until signup and are uploaded only if promoted into account sync.
  • Connected accounts: If you connect an external account, we process the provider, granted scopes, encrypted credential material, and the data needed for each authorized action. For Google Calendar this can include calendar names, time zones, event titles, descriptions, locations, dates, attendee email addresses, and provider event IDs.
  • Payments: Payment method tokens, transaction IDs, billing address and VAT information as required for invoicing (processed primarily by Stripe). We do not store full card numbers.
  • Newsletter: If you choose to subscribe to our newsletter, we store your email address in encrypted form. Newsletter subscription is optional and separate from account creation — creating an account does not automatically subscribe you to the newsletter. If you are an OpenMates customer (i.e. you have completed a purchase), we may additionally send you occasional product announcements and service updates about OpenMates' own similar services under the existing-customer exception (§7 Abs. 3 UWG / ePrivacy Directive Art. 13(2)). You can object to this at any time in Settings → Newsletter or via the one-click unsubscribe link in any such email, without affecting your account.

When each provider is used

Most of the providers below are only reached when you use a specific feature — for example, image generation providers are only used when you invoke an image skill. The groups below tell you exactly which providers are involved for each feature, so you can opt in or out of data sharing by choosing which features to use.

Always active (used for every user)

These providers are used for every user, regardless of which features you use. Using OpenMates at all means your data passes through them.

Vercel (frontend hosting)

We use Vercel to host the static frontend of our website and web app. Vercel receives page requests and serves static assets.

Provider privacy or legal information: https://vercel.com/legal/privacy-policy

Hetzner

We host backend services, databases, caches, S3-compatible object storage, backups, and our self-hosted OpenObserve platform on Hetzner infrastructure in the EU. Hetzner processes TLS-encrypted service traffic and stores ciphertext. Uploads and recordings also pass through its infrastructure before our upload service encrypts them for durable storage. Encryption reduces what Hetzner can read at rest but does not remove Hetzner's role as an infrastructure processor.

Provider privacy or legal information: https://www.hetzner.com/legal/privacy-policy

Brevo (transactional email)

We use Brevo to send transactional email — account verification, password reset links, payment receipts, and credit notes — and, if you opt in, the OpenMates newsletter. If you are an existing OpenMates customer (i.e. you have completed a purchase), we may also send you occasional product announcements and service updates about OpenMates' own similar services under the existing-customer exception (§7 Abs. 3 UWG / ePrivacy Directive Art. 13(2)); you can object in Settings → Newsletter or via the one-click unsubscribe link in any such email. Brevo sees recipient email addresses and the content of the emails we send you.

Provider privacy or legal information: https://www.brevo.com/legal/privacypolicy

IP-API (IP geolocation)

We use IP-API to resolve IP addresses to approximate geolocation for abuse prevention, rate limiting, and regional compliance. The resolved country and city are used transiently and are not stored against your account.

Provider privacy or legal information: https://members.ip-api.com/privacy-policy

Sightengine (image and video moderation)

Every image and video you upload is scanned by Sightengine for safety moderation before it is stored. Sightengine sees the image or video content.

Provider privacy or legal information: https://sightengine.com/policies/privacy

api.video (product video hosting)

We use api.video (EU company, France) to host and stream product demo and feature walkthrough videos shown on our website and web app. When you watch a video, your IP address and basic viewing data are processed by api.video. No user account identifiers are shared.

Provider privacy or legal information: https://api.video/privacy-policy/

Payment providers (only when you purchase credits)

These providers are only used when you purchase credits, subscribe to monthly auto top-up, or receive a refund. If you never make a purchase, none of your data is shared with them.

Stripe (primary payment processor)

Stripe processes one-time credit purchases and monthly auto top-up subscriptions. We send Stripe your email address, a tokenized payment method (we never see your card number), billing address and VAT information when required for invoicing, and transaction metadata.

Provider privacy or legal information: https://stripe.com/privacy

3.13 Revolut Business (SEPA Bank Transfer)

We use Revolut Bank UAB (Lithuania, EU) as our receiving bank for SEPA bank transfers. When you choose to pay via bank transfer, we display our Revolut IBAN to you. Revolut notifies us via a cryptographically signed webhook when a transfer arrives. We do not send your personal data to Revolut — only the transaction reference, amount, and Revolut's own transaction ID are processed.

Provider privacy or legal information: https://www.revolut.com/en-LT/legal/privacy/

AI model providers (only when you use a model that routes through them)

OpenMates routes requests to these providers according to the model or provider-powered feature you use. Eligible typed chat messages use client-side placeholder substitution. Recordings, raw transcripts, uploaded files, reference images, connected-account content, and structured skill inputs are not covered unless a feature explicitly says otherwise. Selectable models show their provider in AI settings.

Mistral AI

Mistral receives the current speakable assistant-message segment and curated voice settings when you choose Speak, or enable spoken responses outside voice calls. It processes eligible chat messages when normal routing selects a Mistral model and processes realtime or uploaded voice audio for transcription, including microphone audio during voice calls. Voice audio can contain personal or sensitive information and does not receive typed-message placeholder substitution. Completed call transcripts enter the ordinary encrypted chat pipeline with its applicable text privacy protections; call answers use the normal AI routing and skills. Mistral states that ordinary API inputs and outputs may be retained for 30 rolling days for abuse monitoring unless zero-data retention is activated; OpenMates does not promise zero-data retention for this path.

Provider privacy or legal information: https://legal.mistral.ai/terms/privacy-policy/

AWS Bedrock (EU region, primary Claude path)

AWS Bedrock hosts Anthropic Claude models in its Frankfurt EU region. This is the primary path for Claude requests. AWS receives your chat messages with PII placeholders already substituted client-side.

Provider privacy or legal information: https://aws.amazon.com/privacy/

Anthropic (US, fallback Claude path)

Anthropic's direct API is used as a fallback path for Claude models when AWS Bedrock is unreachable. Anthropic is based in the US and receives your chat messages with PII placeholders already substituted client-side.

Provider privacy or legal information: https://www.anthropic.com/legal/privacy

OpenAI

OpenAI processes eligible chat messages when you select a GPT-family model. It also receives image prompts, generation settings, and any reference images when you select GPT Image for generation or editing. Reference images are not covered by typed-message placeholder substitution.

Provider privacy or legal information: https://openai.com/policies/privacy-policy

OpenRouter (US, routing aggregator)

OpenRouter routes requests to several third-party models, including Cerebras-hosted models. It sees chat messages with PII placeholders substituted client-side and forwards them to the model host. If direct TypeSafe credentials are unavailable, or direct authentication, transport, or transient service failures occur, OpenRouter may also route text-only TypeSafe Jev decisions using the same minimized decision inputs described below. For caller-requested ai.decide text decisions, this includes the supplied state, instructions, and criteria. Image decisions do not fall back to OpenRouter.

Provider privacy or legal information: https://openrouter.ai/privacy

TypeSafe Jev (US)

OpenMates primarily sends bounded decision requests directly to TypeSafe Jev on US-hosted services. Jev receives bounded recent chat context and candidate metadata to make internal routing, model-tier, skill, focus-mode, language, and safety decisions. It also checks external text for prompt injection. For optional search relevance ranking, it receives the stated relevance criteria, search parameters, and minimized candidate data from supported public searches. For optional shopping visual matching, only when reference images are provided, TypeSafe receives up to three authorized user-uploaded or assistant-generated reference images and bounded public product photos. These images are resized to a maximum dimension of 336 pixels and converted to JPEG with metadata removed; visible image content can still contain personal data. These internal decision requests omit OpenMates user identifiers. Jev returns typed decisions rather than generated chat text. When you call ai.decide, TypeSafe receives the state, instructions, criteria, and any inline PNG/JPEG image content you supply; include only what the decision needs. Raw API inputs and image bytes are not protected by typed-message placeholder substitution. OpenMates creates no saved chat, embed, or stored upload for these inline decisions, but transient OpenMates processing does not guarantee zero retention by TypeSafe. OpenRouter is used only as a fallback for text-only requests when direct credentials are unavailable, or direct authentication, transport, or transient service failures occur; it receives the same minimized decision inputs and forwards them to TypeSafe Jev. Image requests use direct TypeSafe only and never fall back to OpenRouter.

Provider privacy or legal information: https://typesafe.ai/legal/privacy-policy

TypeSafe states that it does not train or fine-tune models on submitted input. Its processing terms describe retention according to processing purposes and applicable law, without a fixed maximum retention period. Zero data retention is offered separately to enterprise customers; OpenMates does not guarantee zero data retention on the standard TypeSafe route. A no-training commitment does not imply immediate deletion.

Inception Mercury (US)

Inception receives text and context for selected Mercury model requests, and raw voice transcripts plus a language hint when its correction and title-generation route is enabled. Audio is not sent to Inception. Raw transcripts do not receive typed-message placeholder substitution and may contain sensitive data. Its terms permit training on submissions unless the API Platform account opts out; the account owner confirmed on 2026-10-20 that this is OFF for the OpenMates API account. Training may apply if reenabled. Retention has no fixed public maximum; zero retention is not guaranteed.

Provider privacy or legal information: https://www.inceptionlabs.ai/docs/privacy-policy

Baseten

Baseten receives model input, authorized chat context, tool definitions and results, and supported images when a request uses its inference service. Related sub-chats share an opaque cache-affinity identifier. Its terms prohibit training on customer content. Synchronous Model APIs document zero input/output retention with transient prefix caching. Shared endpoint regions may change; this is not a fixed regional processing guarantee.

Provider privacy or legal information: https://www.baseten.co/privacy-policy/

Cerebras (US, via OpenRouter)

Cerebras hosts some of the high-speed models routed through OpenRouter. Only used when you select a Cerebras-hosted model.

Provider privacy or legal information: https://www.cerebras.ai/privacy-policy

Google Gemini

Google's Gemini API processes eligible chat messages when normal routing selects a Gemini model, including ordinary text turns submitted from voice calls. On the Gemini correction route for audio recordings, Gemini corrects raw Mistral voice transcripts and creates titles, and may process prompts, reference images, screenshots, or generated code for image generation or editing, Veo video generation, and screenshot-to-HTML conversion. Raw recording transcripts do not receive typed-message placeholder substitution. Google's paid Gemini API terms say prompts and outputs are not used to improve its products, while its current abuse-monitoring documentation states that logged prompts, context, and outputs may be retained for 55 days.

Provider privacy or legal information: https://ai.google.dev/gemini-api/terms

Google Vertex AI Model-as-a-Service (US)

Google Vertex AI Model-as-a-Service hosts third-party open models (such as DeepSeek) on Google infrastructure via an OpenAI-compatible endpoint. This is a separate service from Google Gemini: the model weights are third-party, but the inference runs on Google's servers. Only used when you select a MaaS-hosted model.

Provider privacy or legal information: https://cloud.google.com/terms/cloud-privacy-notice

Together AI (US)

Together AI hosts third-party models such as Kimi K2.6 on an OpenAI-compatible endpoint. Only used when you select a Together-hosted model. Together receives your chat messages with PII placeholders already substituted client-side.

Provider privacy or legal information: https://www.together.ai/privacy

Groq (US, content sanitization)

Groq is used server-side to sanitize external content (search results and scraped web pages) before it is included in AI responses. For audio.speak, Groq also receives the requested speech text without OpenMates user identifiers to approve or reject the request before ElevenLabs is called. Groq never learns which user requested each piece of content or speech sample.

Provider privacy or legal information: https://groq.com/privacy-policy

Alibaba Cloud (Qwen models)

Alibaba Cloud hosts Qwen-family models. Alibaba receives your chat messages with PII placeholders already substituted client-side only when you select an Alibaba-hosted model.

Provider privacy or legal information: https://www.alibabacloud.com/help/en/legal/latest/alibaba-cloud-international-website-privacy-policy

DeepSeek (reasoning models)

DeepSeek provides DeepSeek-family reasoning models. DeepSeek receives your chat messages with PII placeholders already substituted client-side only when you select a DeepSeek model.

Provider privacy or legal information: https://cdn.deepseek.com/policies/en-US/deepseek-privacy-policy.html

Moonshot AI / Kimi (language models)

Moonshot AI provides Kimi-family models. Moonshot receives your chat messages with PII placeholders already substituted client-side only when you select a Moonshot-hosted Kimi model.

Provider privacy or legal information: https://platform.kimi.ai/docs/agreement/userprivacy

Z.ai (GLM models)

Z.ai provides GLM-family models. Z.ai receives your chat messages with PII placeholders already substituted client-side only when you select a Z.ai model.

Provider privacy or legal information: https://docs.z.ai/legal-agreement/privacy-policy

Image generation and editing (only when you use an image skill)

These providers are only used when you invoke an image generation or editing skill. If you never use the images app, none of your data is shared with them.

FAL (Flux models)

FAL hosts Flux image generation models used by the images.generate_draft skill. FAL receives your image generation prompts and, when editing, the source images you supply.

Provider privacy or legal information: https://fal.ai/legal/privacy-policy

Recraft (vector and raster image generation)

Recraft powers the images.generate and images.vectorize skills, producing vector and raster images and converting bitmaps to SVG. Recraft receives your prompts, style preferences, and — when vectorizing — your source images.

Provider privacy or legal information: https://www.recraft.ai/privacy

Black Forest Labs (FLUX image models)

Black Forest Labs powers draft image generation via FLUX models. BFL receives your image generation prompts and, when editing, the source images you provide.

Provider privacy or legal information: https://blackforestlabs.ai/privacy-policy/

Audio generation and speech (only when you use an audio generation skill)

These providers are used for audio generation or text-to-speech skills and for spoken assistant replies during voice calls. If you use none of these features, none of your data is shared with them.

ElevenLabs (sound effects and text-to-speech)

ElevenLabs powers audio.generate sound effects and audio.speak text-to-speech. ElevenLabs receives your sound-effect prompts or requested speech text, chosen OpenMates voice preset, accent, style, speed, output format, duration, and generation settings only when you invoke those skills. audio.speak text is checked by the Groq safeguard first; rejected requests are not sent to ElevenLabs and are not charged generation credits. During voice calls, ElevenLabs v4 Turbo also receives speakable assistant reply text and curated voice settings to generate speech. Microphone audio goes to Mistral for transcription, not ElevenLabs. Generated call audio is streamed transiently and is not saved as an OpenMates audio asset. ElevenLabs may retain API request data under its own policies.

Provider privacy or legal information: https://elevenlabs.io/privacy-policy

3D model search and generation

These providers are used only when you search the public 3D model catalog or invoke a 3D model generation skill.

Hi3D (3D model generation)

Hi3D receives reference images you supply or images generated from your text prompt, plus generation settings. Its Terms license Inputs and Outputs for AI model improvement and training. Hi3D publishes no exact API retention period or per-task deletion endpoint; its policy provides account and personal-data deletion rights. OpenMates requires your confirmation before first use.

Provider privacy or legal information: https://docs.hi3d.ai/en/api/resources/privacy-policy

Music generation (only when you use a music skill)

These providers are only used when you invoke a music generation skill. If you never use the music app, none of your data is shared with them.

Google Vertex AI (Lyria music generation)

Google Vertex AI hosts the Lyria models used by the music.generate skill. Google receives your music generation prompts, optional lyrics, style preferences, and generation settings only when you ask OpenMates to generate music or background music.

Provider privacy or legal information: https://cloud.google.com/terms/cloud-privacy-notice

Code and developer tools (only when you use code skills)

These providers are only used when you invoke a code app skill, such as searching public repositories, running code in an isolated sandbox, creating a generated application that auto-starts a short screenshot preview, or explicitly starting a generated application live preview. If you never use the code app, none of your data is shared with them.

GitHub (public repository search)

GitHub powers the code app's repository search skill. GitHub receives public repository search queries without an OpenMates user identifier.

Provider privacy or legal information: https://docs.github.com/en/site-policy/privacy-policies/github-general-privacy-statement

Context7 (programming documentation lookup)

Context7 powers the code app's documentation lookup skill. Context7 receives library names and documentation questions without an OpenMates user identifier.

Provider privacy or legal information: https://upstash.com/trust/privacy.pdf

E2B (isolated code sandbox)

E2B runs selected code embeds, generated application previews, and Remotion video renders inside isolated sandboxes. E2B receives the code or generated application/Remotion files and assets needed to run or render the result, runtime inputs, preview/render logs, and execution output needed to display the sandbox result. This sharing happens when you explicitly run code, create a generated application that auto-starts a short screenshot preview, start/resume an application live preview, or when a Remotion video render auto-starts after the assistant closes an explicit remotion code fence.

Provider privacy or legal information: https://e2b.dev/privacy

Web, search, and content retrieval (only when you use a web or search skill)

These providers are used only when you use web, media, icon, or domain search and reading skills. They may receive your query, requested URL, or domain name, but no OpenMates user identifier.

Brave Search (web, videos, news)

Brave Search powers the web, videos, and news search skills. Brave sees the text of your search queries and your country and language preferences for localized results, but no user identifier.

Provider privacy or legal information: https://brave.com/privacy/

Iconify (public SVG icon search)

Iconify powers the design.search_icons skill. Iconify sees icon search queries and the icon collection/name needed to fetch SVG previews, but no OpenMates user identifier. OpenMates fetches Iconify data server-side and clients do not call Iconify directly.

Provider privacy or legal information: https://iconify.design/privacy/

Google Maps Platform (places search)

Google Maps powers the places search skill. Google sees the text of your place queries and an approximate location for localized results, but no user identifier.

Provider privacy or legal information: https://privacy.google.com/

Geoapify (OpenStreetMap place enrichment)

Geoapify is used by the Maps search skill to enrich Google Places results with OpenStreetMap-backed amenity details such as air conditioning, internet access, wheelchair access, toilets, outdoor seating, diet, and payment hints when available. Geoapify receives only the place query or matching data needed for enrichment, such as approximate coordinates, category/filter parameters, and Geoapify place IDs, without OpenMates user identifiers.

Provider privacy or legal information: https://www.geoapify.com/privacy-policy/

Wikimedia Foundation (Wikipedia)

Wikimedia is contacted only after you explicitly activate Wiki search. It receives the article query and language, and later the canonical title selected for summary retrieval. Requests are sent by the OpenMates server without your OpenMates user identifier, chat ID, or client IP address.

Provider privacy or legal information: https://foundation.wikimedia.org/wiki/Policy:Privacy_policy

YouTube (video metadata)

To retrieve public video and channel metadata, OpenMates sends video and channel identifiers to the official YouTube Data API. YouTube receives these identifiers and our server’s network information, without an OpenMates user identifier.

Provider privacy or legal information: https://www.youtube.com/howyoutubeworks/privacy/

media.ccc.de (video captions)

When you request a media.ccc.de transcript, OpenMates retrieves published captions from media.ccc.de and its subtitle CDN mirrors. These services receive the public talk slug, selected caption file URL and our server's network information, without your OpenMates identifier, chat text, cookies or client IP address.

Provider privacy or legal information: https://media.ccc.de/about.html#privacy

Travel (only when you use a travel skill)

These providers are only used when you invoke a travel skill — flight search, hotel search, or flight tracking. If you never use the travel app, none of your data is shared with them.

Flightradar24 (flight tracking)

Flightradar24 provides real flight track data when you ask about a specific flight number. It receives IATA flight numbers and departure dates without a user identifier.

Provider privacy or legal information: https://www.flightradar24.com/terms-and-conditions

Events (only when you use the events skill)

These providers are only used when you invoke the events search skill. The specific set of providers called depends on the city and event type you search for.

Connected services

These providers are used only after you connect an external account and authorize access. OpenMates requests the scopes needed for the action and stores durable credential material encrypted.

Google Calendar

After you connect Google Calendar, OpenMates exchanges the OAuth authorization code and stores refresh or access tokens encrypted. Authorized actions may access calendar IDs, names, time zones, event IDs, titles, descriptions, locations, dates, and attendee email addresses. OpenMates reads, creates, updates, or deletes only within the scopes and action you authorize.

Provider privacy or legal information: https://policies.google.com/privacy

Public business data

These providers are used when you request company financial information or trademark searches.

SEC EDGAR

The SEC receives the explicit company name, ticker, or CIK and the filing or period fields needed for a public-company lookup. Requests are sent server-side without an OpenMates user identifier.

Provider privacy or legal information: https://www.sec.gov/about/privacy-information

Weather services

A named place is first geocoded by Open-Meteo. Germany forecasts then use Bright Sky's DWD-derived data; forecasts elsewhere use Open-Meteo. These services receive location and forecast parameters without an OpenMates user identifier.

Open-Meteo

Open-Meteo receives a place name and language for geocoding, and coordinates, date range, time zone, and requested weather fields for global forecasts outside the Germany-specific path. Requests exclude OpenMates user identifiers. Open-Meteo states that API logs may contain coordinates and are deleted after 90 days.

Provider privacy or legal information: https://open-meteo.com/en/terms

Bright Sky

Bright Sky receives coordinates, date range, time zone, radar radius, and requested weather fields for Germany forecasts and rain radar using public DWD-derived data. Requests exclude OpenMates user identifiers. Bright Sky does not publish a standalone privacy notice, so the link points to its official service documentation.

Provider privacy or legal information: https://brightsky.dev/docs/

Nutrition (only when you use the recipe search skill)

These providers are only used when you invoke the nutrition recipe search skill. They receive recipe search queries and selected dietary filters without a user identifier.

Edamam

Edamam's Recipe Search API is queried when you search for recipes. Edamam receives the recipe query and selected dietary or nutrition filters without a user identifier.

Provider privacy or legal information: https://www.edamam.com/privacy/

Mail (only when you use mail skills)

This provider is only used when you connect or invoke mail skills against a connected mailbox. If you never use the mail app, none of your data is shared with it.

Proton Mail Bridge (local mail connector)

When you run the Proton Mail Bridge connector, OpenMates sends mail requests to your local CLI process, which talks to Proton Bridge on your device. Proton receives the mailbox data needed to serve those Bridge requests. Your Proton Bridge IMAP/SMTP credentials stay local and are not sent to OpenMates servers. Outgoing message content is sent only if you explicitly start the connector with write access and send mail.

Provider privacy or legal information: https://proton.me/legal/privacy

Job search services

JobTech receives selected job keywords, named location, remote preference, publication window and result count for Swedish vacancy search.

JobTech JobSearch

JobTech receives selected job keywords, named location, remote preference, publication window and result count for Swedish vacancy search.

Provider privacy or legal information: https://arbetsformedlingen.se/om-webbplatsen/juridisk-information/sa-behandlar-vi-dina-personuppgifter

Community and developer channels (only if you choose to use them)

These providers are only involved if you choose to join our community or developer channels. You can use OpenMates without ever touching them.

Discord (community server)

If you join the OpenMates community Discord server, Discord will see anything you post on its platform, plus your Discord username and whatever data Discord itself collects per its own privacy policy. We have no control over what Discord does with that data.

Provider privacy or legal information: https://discord.com/privacy

OpenMates administrators with Discord server admin rights can read all messages posted in the OpenMates Discord server. Do not share sensitive information on Discord.

Social media (only when you use social media skills)

These providers are only used when you invoke the social media app's get-posts or search skills. They receive public profile, page, or search queries without an OpenMates user identifier.

Bluesky (public posts and profile feeds)

Bluesky is queried when you fetch or search public Bluesky posts. Bluesky receives handles and search queries without an OpenMates user identifier.

Provider privacy or legal information: https://bsky.social/about/support/privacy-policy

Mastodon (public profile posts)

Mastodon is queried when you fetch public Mastodon profile posts. The relevant Mastodon server receives profile identifiers or public profile URLs without an OpenMates user identifier.

Provider privacy or legal information: https://joinmastodon.org/privacy-policy

4. Security Measures

We implement various security measures to protect your account and data in the web application:

Device Fingerprinting

To enhance account security, prevent fraudulent access, and distinguish between new and recognized devices during login and session validation, we collect User-Agent strings (browser, OS, device type information) and IP addresses (used temporarily to derive approximate geo-location like country/city, then discarded from the device record).

A unique, stable hash is generated based on a combination of the collected signals. This hash is the only value stored in the device record. Browser/OS type and derived country code may be used transiently for risk assessment and notifications but are not stored with the device record. Raw IP addresses are NOT stored as part of the device record itself.

For security monitoring and abuse prevention, IP addresses associated with failed login attempts (invalid password or 2FA code) may be logged with limited retention. In addition, certain security/compliance events (e.g., successful backup-code logins) may be logged with IP for audit purposes. IP addresses are also used for rate limiting login attempts.

6. Data Retention

  • Account data: Retained until account deletion and completion of related legal obligations.
  • Usage and logs: Operational logs retained up to 12 months; IPs tied to failed logins up to 30 days for security.
  • Device fingerprints: Retained until account deletion or manual removal from account settings (when available).
  • Current personal chat and artifact records remain until you delete them or close your account, except eligible personal files may be removed under the unpaid-storage warning and expiry safeguards below where that feature is enabled. A pending assistant response sealed to a client public key remains available until an authorized client verifies and confirms its normal client-encrypted save, or the related chat or account is deleted. Retry-lease or AI working-cache expiry alone does not remove that pending copy, and unpaid-storage expiry protects the sole remaining offline recovery copy. Another authorized owner or Team can retain shared content. Earlier database revision and activity records can remain after current records are deleted, as described separately below.
  • Where unpaid personal-storage expiry is enabled, an unpaid storage episode may lead to removal of the affected personal files only after four weekly warning emails confirmed as delivered by our email provider, at least 7 days apart. Removal cannot occur before the advertised expiry date, 28 days after the first delivered warning, or 7 days after the fourth delivered warning, whichever is latest. We check payment again immediately before removal. The affected files are fixed for that warned episode. We select complete personal file units from that set, oldest first, removing only enough to bring eligible usage within the free allowance. Team or shared files, active files, the sole remaining offline recovery copy, files whose ownership or removal safety is uncertain, and files covered by later paid storage periods are protected. If no safe set of complete eligible units can bring usage within the allowance, we remove nothing and waive nothing. Only after we verify the affected files have been removed and eligible usage is at or below the free allowance do we waive the unpaid storage invoices included in that warning episode. Their status becomes waived_on_expiry, not paid; this waiver makes no credit debit. Later debt that was not included in the warnings and paid storage periods are unaffected. Logical removal creates content-free regional deletion markers and queues physical object deletion only after the last retained references have been removed; it does not promise immediate physical erasure. Backup and historical-record retention remain as described in our Privacy Policy. Where unpaid Team-storage expiry is enabled, we notify the current Team owner and admins. Each of the four weekly warning rounds counts only after our email provider confirms delivery to every required recipient. The same minimum warning intervals and expiry dates apply. We select complete, specifically warned Team file units, oldest first, removing only enough to restore that Team's separate free allowance. Active work, sole recovery copies, required references outside the selected units, uncertain ownership or removal safety, and later-paid data remain protected. We recheck the Team wallet, current membership, notice delivery, usage and references before removal. If no safe set can restore the allowance, we remove and waive nothing. Only verified removal restoring the allowance can waive that Team's warned unpaid episode; later debt and paid periods remain unaffected.
  • Deletion markers: To prevent delayed synchronization from restoring deleted data, OpenMates retains content-free markers containing identifiers, owner or Team references, and deletion times. These markers contain no deleted content and currently do not expire automatically, so they may remain after chat content or an account is deleted.
  • Historical database revision and activity records: Earlier revision and activity history may retain earlier account-profile fields or encrypted chat and artifact snapshots after deletion of the current records. There is currently no enforced automatic expiry for that historical history. It is not a content-free deletion marker.
  • Payments, invoices and financial audit records: The current storage configuration retains these for up to 10 years. German retention duties depend on the record type: generally eight years for invoices and accounting vouchers, and ten years for accounting books and annual accounts, with the statutory period starting at the end of the relevant calendar year. Legal holds or ongoing tax proceedings can extend required retention.
  • Compliance logs: Security and accountability records do not currently have an enforced automatic two-year expiry for historical database revision and activity records. Financial transaction records are configured for up to ten years, subject to the record-specific legal duties and holds described below.
  • Observability traces: up to 30 days; user IDs in traces use a hash that rotates every 24 hours, so older traces cannot be joined to a specific user
  • User data backups: 60 days via S3 lifecycle; backups contain only ciphertext encrypted with your own key

What survives account deletion — and why

When you delete your account, we destroy its account-controlled encryption keys and remove current records under that deletion’s authority. Shared content retained by another authorized owner or Team, historical database revision and activity records, and some records held under separate legal authority or outside our immediate control can remain:

Financial records and financial compliance logs (up to 10 years)

Invoices, credit notes and financial audit entries can remain after account deletion. The current storage configuration uses up to ten years; statutory German periods vary by record type, generally eight years for invoices and accounting vouchers and ten years for accounting books and annual accounts. Financial records can contain billing identity details, transaction metadata, invoice numbers and user identifiers. They are separate from chat content. GDPR Article 17(3)(b) applies where retention is required by law.

Audit compliance logs (2 years)

Authentication and data-access audit logs can contain timestamps, user identifiers, event types and status. No enforced automatic two-year expiry for historical database revision and activity records is currently in place. That history can contain prior record snapshots and is described separately below; financial retention follows the applicable record-specific rules.

Historical database revisions and activity

Historical database revision and activity records created before a chat or account is deleted can retain earlier account-profile fields or encrypted chat and artifact snapshots. Deleting the current records does not automatically purge or irreversibly neutralize those rows. They currently have no enforced automatic expiry and are distinct from the 60-day encrypted-backup lifecycle, content-free deletion markers, and dedicated financial or security logs.

Your own encrypted data backups (60 days)

Ciphertext backups of your own data exports live in S3 for 60 days via a lifecycle rule, so you can retrieve an export if your device is lost. Because we destroyed your encryption key when you deleted your account, we cannot decrypt these backups either — they are effectively inert ciphertext until they expire.

Logs retained by third-party AI providers

AI providers retain request logs under their own policies, independently of OpenMates, and we cannot delete data from their systems. Retention is provider-specific; for example, Mistral states 30 rolling days for ordinary API input and output unless zero-data retention is active, while Google's current Gemini abuse-monitoring documentation states 55 days for logged prompts, context, and outputs. Eligible typed chat uses client-side placeholder substitution, which reduces exposure but may miss data and does not cover voice audio, raw transcripts, uploaded or reference files, connected-account content, or structured skill inputs unless a feature explicitly says otherwise.

Internal observability traces (up to 30 days)

OpenTelemetry spans from our internal tracing pipeline are retained for up to 30 days for operational debugging. User IDs in traces use a hash that rotates every 24 hours, so traces older than one day cannot be joined back to a specific user. Chat content is never included in traces.

7. Legal Basis for Processing (GDPR)

  • Contract: Processing necessary to perform our contract with you or to take steps at your request prior to entering into a contract (e.g., account creation, delivering web app features).
  • Consent: Processing based on your consent, where applicable (e.g., optional communications, certain analytics or marketing where used). You can withdraw consent at any time.
  • Legitimate interests: Processing necessary for our legitimate interests, such as service security, fraud prevention, abuse detection, and improving the service, provided these interests are not overridden by your rights and interests.
  • Direct marketing to existing customers: For existing OpenMates customers (users who have completed a purchase), we may rely on Art. 6(1)(f) GDPR (legitimate interests) in combination with §7 Abs. 3 UWG and ePrivacy Directive Art. 13(2) to send occasional product announcements, service updates, and marketing about OpenMates' own similar services. Each such email includes a clearly visible one-click unsubscribe link, and you can also manage these preferences at any time in Settings → Newsletter. You can object to this processing at any time without giving reasons (Art. 21 GDPR).
  • Legal obligation: Processing necessary to comply with legal obligations (e.g., tax and accounting requirements for invoices and transaction records).

8. Your Privacy Rights

Depending on your jurisdiction, you may have certain rights over your personal data. The following summarizes key rights under GDPR and CCPA/CPRA and how to exercise them:

GDPR (EU/EEA)

  • Right of access
  • Right to rectification
  • Right to erasure ('right to be forgotten')
  • Right to data portability
  • Right to withdraw consent

The following rights are available on request (please contact us by email at contact@openmates.org and we will handle them manually):

  • Right to restriction of processing
  • Right to object

To exercise your GDPR rights, contact us at contact@openmates.org or via the Imprint. We may need to verify your identity before fulfilling your request.

CCPA/CPRA (California)

  • Right to know/access
  • Right to delete
  • Right to correct
  • Right to opt-out of sale or sharing
  • Right to non-discrimination

California residents can exercise CCPA/CPRA rights by contacting us at contact@openmates.org. We do not sell personal information.

10. Contact Information

For questions about data protection:

Email: contact@openmates.org

Postal address: See Legal Notice (Imprint) for the current registered address.

Controller: OpenMates (see Imprint for legal representative details).