Privacy Policy
Last updated: 22 July 2026
Vozen is a text-to-speech (TTS) bot for Discord. This page explains exactly what data the official Vozen service (vozen.org) collects, why, the legal basis for it, how long we keep it, and the rights you have under the EU General Data Protection Regulation (GDPR) and similar laws. In plain language: Vozen keeps the settings it needs to work, and nothing else. It does not keep a log of your messages, sets no cookies, runs no trackers, and never asks you to type your Discord email, phone number, or password. With your Discord OAuth permission, instant activation can read the verified email on your Discord account once, as explained below.
1. Who we are & how to contact us
The official Vozen instance at vozen.org is operated by an independent developer, who is the data controller for the data described here. Vozen is open source — the full code is public on GitHub — and is not affiliated with Discord Inc.
To ask a question, exercise any of your rights, or report a concern, contact us on our
support server
(discord.gg/4kYw2WUbNN). This is the fastest way to reach the operator.
2. What we store
Everything below is keyed to your Discord user ID and/or server ID (the numeric identifiers Discord already shares with every bot). We never store your real name — only the display name you already show in the server, and only at the moment it is spoken.
- Your preferences — your chosen voice and engine, speaking speed, up to 25 favourite and 10 recent voice model IDs, an optional voice effect, personal abbreviations, translation language, and a phonetic nickname.
- Server settings — set by server admins: the TTS channel, auto-read, default voice, limits, language, greetings, a blocklist, pronunciation overrides, queue roles, and optional per-channel profiles editable in the dashboard.
- Opt-out list — if you ask Vozen not to read your messages, we store that choice.
- Fun stats — minigame scores (points and wins) and "top speaker" counts (how many of your messages were read aloud, plus daily streaks). These power the
/topspeakersand/gameleaderboards. - Aggregate TTS usage — the
talk_usagetable keeps counters by server, user, detected/selected language, and resolved TTS engine. It stores counts only, never message text. These aggregates let the private operator console show a top talker's dominant language and engine. They are deleted for that user by/privacy eraseand for that server by the server-data purge. - Birthday — only the month and day you optionally set, never the year. Used so Vozen can wish you a happy birthday in the voice channel.
- Optional Vozen notices — Top.gg reward and support-server cards are off by default and can be enabled by an admin with
/config vote-reminders active:true. They alternate in the configured setup channel: at most one card in any rolling 24 hours, and each kind at most once per 48 hours, so both can never appear on the same day. A server ID, timestamp, and last-card kind persist this rotation across restarts; every card explains how to disable it. When you vote, top.gg separately sends your Discord user ID in a signed webhook. An eligible account receives 48 hours of Plus once ever. The raw ID is kept only while that entitlement is active and is then deleted. A separate keyed one-way HMAC marker records that the account used its lifetime reward without storing the raw ID. - Premium status & entitlements — whether a server or user has Premium, when it expires, and the source of the entitlement; for server passes, which servers you activated a licence on.
- Stripe billing records — for a Stripe subscription, Vozen stores the Discord user ID, Stripe customer/subscription identifiers, plan, seat count, payment state and current paid-through date. Vozen does not store card data, payment credentials, shipping addresses or the customer email received by Stripe.
3. Why we store it (legal bases)
- To provide the service you asked for (GDPR Art. 6(1)(b)/(f)) — your voice/engine/speed preferences, server settings, opt-out choice, pronunciation overrides, and existing entitlement status.
- Your consent (Art. 6(1)(a)) — your optional birthday and voice transcription (see §6). You can withdraw consent at any time; it does not affect processing already done.
- Our legitimate interests (Art. 6(1)(f)) — keeping the bot working and fair: rate limits, the blocklist, anti-spam, operational/security logs, the non-reversible vote-redemption marker needed to enforce the one-account lifetime limit, and the minigame and "top speaker" leaderboards. You can object at any time (see §12).
4. What we do NOT store
- We do not keep a history or log of your chat messages. Text is turned into speech on the fly and then discarded.
- We do not store, cache, or log the verified Discord email used for instant activation or the transient hash computed from it. Both exist only in memory for that activation request and are then discarded.
- To speed up repeated phrases, recently synthesized audio may be cached on the server. It is keyed by a content hash rather than your user ID, rotates out under a bounded cache policy, and can still reveal the spoken content to someone with server-file access.
- Outside of a transcription session you consented to, the bot stays deafened and does not listen to or store voice-channel audio.
- We do not keep web access logs that tie your IP address to your activity. Our API (
api.vozen.org) uses your IP only momentarily, in memory, for rate-limiting and security — it is never written to our logs. (This website is served by GitHub Pages, whose standard host logs are outside our control; see §9.) - Stripe may process billing details and payment-method information as an independent payment processor. Vozen receives only the identifiers and subscription state needed to provide the digital service.
5. Private translation and audio tools
/translate text and the Translate message action send only the text you
explicitly select and the target locale to the configured translation provider. They do
not send Discord IDs, history, attachments, or surrounding messages. Personal and server
usage is limited by rolling 30-day character caps; translated text is not stored by Vozen.
/tts-file returns a short audio file privately without joining a call. The
Transcribe voice message action accepts only supported Discord-hosted audio, enforces
HTTPS host, size, decoded-duration and timeout limits, disables redirects, processes it
locally, and deletes its temporary files after the attempt. These reviewed actions can be
used through Discord's User App contexts and never inspect server configuration from a DM.
6. Voice transcription (Premium, consent-first)
/transcribe turns the speech in a voice channel into text messages. It is
strictly consent-first: only people who tap an on-screen Allow button are
transcribed, and the bot announces when it starts and stops. Audio is processed
on our own server; each short temporary file is deleted immediately after
it is turned into text — the audio is never stored or sent to any external service, and
never used to train AI. Note that the text the bot posts is a normal Discord message and
stays in the channel like any other; /transcribe revoke stops future
transcription but does not delete messages already posted (delete those in Discord).
7. Signing in on vozen.org
When you log in with Discord to view your account or the server dashboard, we use Discord OAuth2 and request your basic profile (identify) and, for the dashboard, your server list (guilds). No payment email or checkout credential is requested. Basic profile and server-list data may be cached in memory for at most ~60 seconds and are not written to our database. Your access token stays in your browser and is sent only to Vozen's own API over HTTPS.
8. Cookies & local storage
vozen.org sets no cookies and runs no analytics or trackers. Fonts are
served from our own server, so loading the site sends nothing to third-party font or
analytics providers. The site uses your browser's storage only for strictly necessary
functions: your Discord access token (sessionStorage, cleared when you log
out or close the tab), a one-shot activation intent containing no email (also
sessionStorage, removed on use and expiring after five minutes), and your
chosen interface language (localStorage). Because these are strictly
necessary to provide what you asked for, no consent banner is required.
9. Who we share data with
We do not sell your data or share it with data brokers or ad networks. We use a small number of providers to run the service:
- Speech providers — local Piper voices do not send text to a third party. If a Google voice is selected or enabled by the operator, the text to be spoken is sent to Google to generate audio (never your user ID or message history), subject to Google's Privacy Policy.
- Discord — the platform the bot runs on and the OAuth provider; all Discord processing is subject to Discord's Privacy Policy.
- top.gg — we publish the bot's server count. If you vote, top.gg sends your Discord user ID to our signed webhook so Vozen can apply the advertised one-time 48-hour Plus reward; no message content is sent.
- Operator admin console — the operator has a private console (gated by the operator's own Discord login — only the owner's account may enter) to manage Premium and to see aggregate usage per server: the server's name and icon, how many messages Vozen read there, top talkers, and each global top talker's dominant language and TTS engine from
talk_usage. These are counters, never message content. User-scopedtalk_statsandtalk_usageare removed by/privacy erase; server-scoped rows are removed by the server-data purge. - GitHub Pages — hosts this website; like any web host it processes standard request logs (including IP addresses).
- Hetzner — hosts the bot's server and database.
10. Where your data is processed (international transfers)
- The bot's database and processing run on a server in Germany (EU) (Hetzner) — no international transfer.
- This website is hosted by GitHub Pages, whose infrastructure may process requests outside the EEA. Transfers rely on an applicable adequacy decision where available and otherwise on appropriate safeguards such as Standard Contractual Clauses.
- Google voices: text read with a Google voice may be processed outside the EEA. Transfers rely on the provider's applicable transfer mechanism, such as an adequacy framework where certified or Standard Contractual Clauses.
11. How long we keep it
- Your personal settings and stats — kept until you remove them (with the relevant command or
/privacy erase). - Vote reward — the raw Discord ID and reward timestamp are deleted after 48 hours or by
/privacy erase. The non-reversible HMAC redemption marker is kept while the promotion operates solely to prevent another claim; erasure does not make the account eligible again. - Server data — automatically deleted 30 days after Vozen is removed from a server, unless it is re-invited within that window.
- Audio cache — rotates automatically (about 500 files per engine, oldest first); not tied to you.
- HD-voice usage counter — auto-purged after about 3 months.
- Premium entitlement records — kept while needed for an active entitlement and afterwards only for entitlement history, fraud prevention, disputes, and legal obligations; deleted or anonymized when no longer necessary.
- Website login — your token lives only in your browser session; basic identity data may use a ~60-second server-side cache. The activation email and transient hash are never cached and are discarded as soon as that request finishes.
12. Your rights
Under the GDPR you have the following rights over your data. To exercise any of them, use the bot commands below or ask on the support server.
- Access — ask what data is tied to your ID.
- Rectification — most of your data is settings you can change yourself with the bot's commands.
- Erasure —
/privacy erasedeletes your erasable personal settings, preferences, consent, scores,talk_stats,talk_usage, and an active free vote entitlement across all servers. It does not make the account eligible for the lifetime vote reward again: the non-reversible anti-abuse HMAC marker remains while that promotion operates. It also does not silently revoke paid rights or destroy minimum financial and activation records retained for accounting, fraud prevention, disputes, and legal obligations. Individual commands remove single items (/voice reset,/voice nicknamewith no name,/voice optin,/config reset, and so on). - Restriction & objection — stop being read aloud with
/voice optout, or ask us to restrict processing. - Portability — request a copy of your data.
- Withdraw consent — e.g.
/transcribe revokeor removing your birthday — at any time, without affecting past processing. - Complaint — you can lodge a complaint with your local EU/EEA data protection authority. The operator's authority is Portugal's CNPD (cnpd.pt).
An active entitlement and the minimum purchase records needed for accounting, fraud prevention, disputes, or law may be retained despite an erasure request. They are restricted to those purposes and deleted or anonymized when no longer necessary.
Where a US state privacy law applies, residents may also request access, correction, deletion, or a portable copy and may appeal a refusal through the support server. Vozen does not sell personal data, share it for cross-context behavioural advertising, run targeted advertising, or discriminate against anyone for exercising a privacy right. An authorised agent may submit a request where local law permits, subject to verification.
13. Automated decisions
Vozen does not make automated decisions that produce legal or similarly significant effects about you, and does not profile you.
14. Children
Vozen is not directed at children. You must be at least 13 years old (or the higher minimum age required by the laws of your country) to use Discord and, by extension, Vozen. We do not knowingly collect data from anyone under that age. If we learn that an underage child supplied personal data, we will stop the relevant processing and delete it unless retention is legally required. A parent or guardian can contact us through the support server.
15. Changes
We may update this policy as Vozen evolves. The "last updated" date above reflects the current version.
Questions? Join the support server. · Terms of Service