Cozirom privacy policy
Last revised: 2026-10-31 (changes in section 9)
Effective date: 2026-10-15
Operator: 전요한, contact: bouz3337@gmail.com, support: https://discord.gg/Q5yyQab9AM
1. What the service is
Cozirom is a Discord bot that translates chat into the other person's language. It translates only the messages of people who turned translation on themselves, and it stops as soon as they turn it off.
2. What we store and for how long
| What | Why | How long |
|---|---|---|
| Per-server auto-translation settings (on or off, my language and their language, tone, whether to show your original under translations, the language codes of your last 10 messages, the voice, speed, pitch and resonance you chose for reading aloud in voice channels, and when an auto-translation pause ends). One set per user for DMs and servers without the bot | To translate only the messages of people who turned it on, in the languages and tone they chose | Deleted on request, when the bot leaves that server, or after 12 months without use (if there are only settings and no translations, 12 months from the last settings change) |
| The original text of translated messages | So the 🔎 button on a translated message can show the full original | 14 days (this is the copy the bot stores; the original shown in small text under a translation is covered in section 4) |
| Translation cache (translations of texts up to 200 characters, not linked to who sent them) | So the same sentence isn't translated twice | 30 days |
| Plan, monthly translation count, how many meaning explanations you used each month, alert setting, the day the free tone trial started | To count the limit and apply the plan | Deleted after 12 months without use |
| Alert levels sent this period, daily extra translations after the limit | So the same alert isn't sent twice and extras are counted | Cleared within 400 days after the period ends |
| Display-language code (the Discord language of the last command or button you used) | To send DM alerts in that language | Deleted after 12 months without use |
| The font you chose for putting translations on images | To draw the next image with the same font | Deleted after 12 months without use |
| Consent record for voice-channel reading (the voice provider named on the screen when you picked a voice, and the date) | To send only the messages of people who picked a voice themselves to that provider, and to stop sending if the provider changes until you pick again | Replaced when you pick again. Deleted on request or after 12 months without use |
| Your glossary (word pairs you add: the word in your messages and how to write it in translations; the "My name" line at the top: your Discord display name and how to spell it in other languages) | So translations write those words and your name the way you set | Until you delete them or ask for deletion. Deleted after 12 months without use. If you move to a smaller plan, extra words are kept but rest (not used in translations) |
| Translation room records (applies once rooms are offered): rooms (server, channel and thread IDs, the user ID of whoever opened it, whether it is a 1:1 room or a room for several people, the other language and room tone of a room for several people, when it was made), room members (user ID, whether they own the room, whether they were only invited or joined, their translation language and tone, when they were invited and when they joined), [Block invites] (the user IDs of who pressed it and of the room owner they blocked), records of leaving a room or declining an invite (the user IDs of the room owner and that person, and the time), how many rooms you opened and invites you sent that day, and the server's room settings (whether a server admin turned rooms on, and the channel rooms are made in). Translations of the messages of friends without a plan are counted in the room owner's monthly count with the room number | To translate only the messages of people who joined, in the language and tone set for them, to know who pays for each translation, and to keep the daily limits and invite blocks | Rooms until they are closed (closing deletes the room and member records; the conversation stays on Discord). Invites nobody joined: 7 days. Leave records: 1 day. Daily counts: until the end of that day. [Block invites]: until you ask for deletion. When the bot leaves a server, that server's room records and room settings are deleted. Deleted after 12 months without use. Counts with a room number follow the monthly count rule |
| Days on which you translated (one row per day) | To measure whether the service keeps being used | 90 days |
| Profile picture used on translated messages (your avatar with a gold ring, 256px) | To post translations under your own name and picture | 1 day in the operator's private storage channel. The copy Discord keeps on a translated message stays as long as that message exists |
Kept only in memory: when a text-in-image result is long and shown one image at a time, that result (the text read, its translation and the author's name) for 15 minutes so you can page through it. So you can redraw an image with another font, that image's attachment details and the text read and translated, for 15 minutes (15 more each time you pick a font). So that a font change redraws right away, the images [Put on image] was pressed for (the copy the bot opened and the picture with the text erased), where their text was found, its size and colour, and the text read and translated, for 15 minutes, up to the 4 most recent images across the whole bot. Until you press [Translate text], [Put on image] or [Transcribe and translate] on the right-click translation screen, or [Translate text], [Put on image] or [Put it on anyway] under a result (the same for results opened from the image icons in the channel), the image or voice message attachment details of that message (Discord links, and the length of a voice message) and its writer's name for 15 minutes, and, for daily limits, how many images or voice messages you had read that day that had no text, no speech or couldn't be translated, and how many images and how many seconds of voice messages you had read that day, until the end of that day (all removed at once if you delete your data). Recent messages in the same channel (text, display name, user ID, message ID) for 15 minutes, as conversation context (edited messages are replaced with the edited text and deleted ones are removed); gone when the bot restarts. Voice-channel reading (being tested) keeps the translations to read in a queue until they are read. For rate limiting, user IDs and request times for 1 minute. To send each kind of notice DM (a message that couldn't be translated, reaching the limit) at most once a day, user IDs and the reason for the notice until the end of that day (for notices that a channel's settings or the bot's permissions stop auto-translation there, with the channel ID, for 30 days). To tell whether a problem hit many people at once, the user IDs and times of messages that couldn't be translated; only the last 10 minutes are used, and older ones are removed the next time this happens or at the cleanup that runs every 12 hours. These notice records are removed as soon as you delete your data and are gone when the bot restarts. In translation rooms (applies once rooms are offered), so that a notice that a room is paused or that the friend share is used up is posted in the room at most once a day, the room number and the date until the end of that day; so that someone who hasn't joined a room is told only once, the room number and that person's user ID until the room is closed (no message text is recorded). The DM telling a room owner that the friend share is used up is recorded as one line with the "alert levels sent this period" in the table in section 2. These room notice records are also removed as soon as you delete your data (for a room owner, including those of the rooms deleted with it), removed for a room when it is closed, and gone when the bot restarts. The display names shown on the people screen (server ID, user ID, name) and the result of checking whether a room owner is still in the server (server ID, the owner's user ID) are also kept for 1 hour (no message text; removed as soon as you delete your data).
3. What is sent out for translation
Translation is done with the Claude API of Anthropic PBC (United States). Voice message transcription is done with the ElevenLabs API of Eleven Labs Inc. (United States). We send:
- Auto-translation: the message text, the writer's Discord display name (and username if different), and up to 6 recent messages from the same channel within the last 15 minutes written by users who turned auto-translation on (3 on the Free plan, 600 characters in total) with their display names. If the message contains words or names from your glossary, those entries (both cells) are sent too. The "My name" lines (display name and chosen spelling) of people who use the bot in that server are sent too, only when that name appears in the message.
- Translation rooms (applies once rooms are offered): in a private thread the bot made (a room), only the messages of people who pressed [Join] are sent. What is sent is the same as for auto-translation (the message text, the writer's name, recent messages from people who joined the same room within the last 15 minutes with their writers' names, and glossary entries; the number of context messages follows the plan of whoever pays for that translation). Messages are translated in the languages and tone set in the room, not by the writer's own auto-translation settings. The messages of people who haven't joined (people who were only invited, server admins who can see the room without joining, people pulled in by a mention) are not translated, not sent and not used as context, even if they turned auto-translation on (requests other people press, such as right-click translation, work as in "Requests from other people" below). Messages left as they are because the room is paused (the server turned rooms off, or the room owner left the server or changed plans) or because the room owner's friend share is used up are not sent either.
- Right-click translation and
/translate once: the message you picked (or typed), its writer's name, and the same-channel context before it (same rule as above). The glossary used is the writer's entries and name line (same rule as above, including the name line of the person who pressed). - Text in images: if you press [Translate text] on the right-click translation screen or on the image icons of a translated message, the images in that message (up to 4, copies shrunk to 1,568 px on the long side) are sent to read their text, then the text read and its writer's name are sent for translation. If you press [Put on image] on the right-click translation screen, on the image icons or under the text translation result, the bot finds where the text is, sends a small copy of the image together with the text areas cut out of it in one request to read the text, and translates it (for an image with a lot of text you see the cost first, and once you confirm, the cut-out text areas are sent as one sheet per 16 text blocks, up to 3; finding, erasing and drawing happen on the bot's computer, and the image with the translation is shown only to you). The bot doesn't store the images or the text read (what it briefly keeps in memory for redrawing is in section 2; translations follow the translation cache rule). Nothing is sent until you press it.
- Voice messages: if you press [Transcribe and translate] on the right-click translation screen, the audio file of that voice message (up to 3 minutes) is sent to ElevenLabs to be transcribed, then the transcript and its writer's name are sent to Anthropic for translation. The bot doesn't store the audio or the transcript (translations follow the translation cache rule). Nothing is sent until you press it.
- Meaning explanations: the text of the message you picked (for a message Cozirom translated and posted, the stored original you can see with the 🔎 button), its writer's name, and the same-channel context before it (same rule as above). The explanation is not stored and only you see it. How many you used each month is kept with your plan records (section 2).
- Voice-channel reading (a feature being tested): in the operator's private test server, only when a consenting adult tester has picked a voice themselves, that tester's translations are sent to the Gemini API of Google LLC (United States) to be read aloud in the voice they picked. The screen where you pick a voice names where it is sent. Nobody else's messages are sent. It reads only in age-restricted voice channels and sends only the messages of people on a paid plan (messages of people on the free plan are not sent). The text read and the audio are not stored.
- Under Anthropic's commercial terms, this data is not used to train models and is deleted within 30 days (up to 2 years if flagged for a usage-policy violation).
- Our ElevenLabs account is set so that the data we send is not used to train models. ElevenLabs may keep the audio and transcript it receives for the period set in its own privacy policy (we cannot shorten it).
Not sent by auto-translation: messages starting with //, messages with stickers or polls, messages over 1,500 characters, messages without letters. Text translated from the phrasebook or the cache is not sent for that translation (it may still be sent as context for a later message). Messages in age-restricted channels are not translated. The only exception is the chat of age-restricted voice channels where voice-channel reading can be used (section 7).
Requests from other people: anyone who can see your message in a channel can press right-click translation, meaning explanation, image text translation or voice message translation on it. The message (its first 1,500 characters if longer, its images, or the voice message audio) is then sent as described above, regardless of your translation settings. The // prefix applies only to auto-translation.
Cross-border transfer: items (list above), country (United States), recipient (Anthropic PBC, privacy@anthropic.com), purpose (translation, reading text in images, and meaning explanations), retention (30 days, with the exception above), how to refuse (turn translation off or don't turn it on; then nothing is sent. Requests pressed by other people work as described in "Requests from other people" above. Leave the second cell of your name line empty in the glossary tab and your chosen spelling isn't sent. In translation rooms (applies once rooms are offered), don't join, or leave the room, and what you write there isn't sent for translation).
Voice messages: item (the audio file of the voice message), country (United States), recipient (Eleven Labs Inc., dpo@elevenlabs.io), purpose (transcription), retention (the period set in ElevenLabs' privacy policy), how to refuse (don't press [Transcribe and translate]; then nothing is sent).
Voice-channel reading (being tested): item (the testers' translations), country (United States), recipient (Google LLC), purpose (making the voice), retention (the period set in Google's Gemini API terms), how to refuse (don't agree to the test or don't pick a voice; then nothing is sent).
Nothing is sent to third parties other than Anthropic, ElevenLabs (only when a voice message is transcribed) and Google (only testers' translations in the voice-channel reading test). Discord's own processing is covered by Discord's privacy policy.
4. What is public in the channel
- Translations are posted in the channel under the writer's name and picture. They are not removed by a deletion request; the writer can remove them at any time with message right-click → Apps → "Delete my translation". This works even if the bot's webhook has been deleted from the server: the bot then deletes its own message directly. To recognize the writer, the 🔎 button on a translated message carries the writer's Discord user ID. It isn't shown on screen, but it is part of the message data, so Discord apps and other bots that can read the channel can see it.
- By default, the original is posted in small text under each translation (only the beginning of long messages). It is part of the translated message, so anyone in the channel can see it as long as that message exists, regardless of the 14-day retention in section 2 or a deletion request. You can turn it off per server in settings (
/translate setup); it then applies to translations posted after that. As above, the writer can delete those translated messages at any time with "Delete my translation". - The 🔎 button on a translated message lets anyone in the channel see the full original and its writer for 14 days (shown only to the person who pressed it).
- With auto-translation on, a message with only images and no text is also posted again under the writer's name and picture (the images are not translated and stay as they are). Messages with images get image icons that anyone in the channel can press to see a translation of the text in the images (shown only to the person who pressed it, and counted against that person's translations).
- Translation rooms (applies once rooms are offered): a room is a private thread the bot makes under a chat channel. Besides the people invited and those who joined, server admins and people with the Manage Threads permission can see every room, under Discord's rules for private threads. Translations in a room are posted under the writer's name and picture as in channels, and in rooms the original is always shown with them (in small text under the translation when two people joined, or first with the translation below it when three or more joined). When someone who hasn't joined writes in a room for the first time, a notice with their name is posted once in the room saying that their messages aren't translated or sent.
5. Logs
Operating logs keep only user IDs, counts, and the type and location of errors. No conversation content. When a deletion is processed, the user ID and the number of deleted rows are logged.
6. Deleting your data
- In Discord, run
/translate delete-my-dataand press the confirm button within 10 minutes. It deletes everything in the table in section 2 except the translation cache, plus the profile picture and the recent messages and notice records in memory. If you use the bot again afterwards, new records start from then. - Translated messages posted in channels (including the original shown under them and the profile picture on them) are not deleted by a deletion request. The writer can delete them at any time with message right-click → Apps → "Delete my translation" (this works even if the bot's webhook was deleted; see section 4). The translation cache isn't linked to who sent the text, so it can't be picked out; it is deleted after 30 days.
- Translation rooms (applies once rooms are offered): deleting your data also deletes your room records (rooms you opened with their member records, your records in rooms you joined, the invites you blocked and the rooms you left). Records that others made about you (blocking your invites, leaving your rooms) stay, because they are that person's records. Rooms you opened become closed rooms (the bot leaves them), and their conversations stay on Discord. When a room owner closes a room with [Close room], the room and member records are deleted and the conversation stays. When you leave a room, your record in it is deleted, and a leave record is kept for a day so the same room owner can't invite you again in the meantime. If you press [Block invites], that room owner can no longer invite you; this record is kept until you ask for deletion.
- Or ask through support (https://discord.gg/Q5yyQab9AM) and the operator will delete it.
7. Content we don't translate
Sexually explicit content is not translated, under the translation model's usage policy. If the model declines, the original is left as is and nothing is counted. Translation is off in age-restricted channels, with one exception: the chat of age-restricted voice channels where voice-channel reading can be used is auto-translated so it can be read aloud. Sexually explicit content is not translated or read there either. Age-restricted text channels and their threads, and right-click, image and voice message translation in those voice channels, stay off.
8. Your rights, deletion and safety measures
- You can ask to see, correct or delete your information, or to stop its processing. Deletion works right away as described in section 6; other requests go to support (https://discord.gg/Q5yyQab9AM) or email (bouz3337@gmail.com). To stop processing, turn auto-translation off with
/translate off. - Legal basis: we process data to provide the translation feature you turned on yourself (performance of the service contract).
- Deletion: when a retention period ends or we receive a deletion request, the data is deleted from the database and overwritten so that it doesn't stay in the database file. Things kept only in memory are removed after the periods in section 2 and disappear when the bot stops.
- Safety measures: the database and the keys (API keys, bot token) are kept where only the operator can use them, and data is exchanged with outside services only over encrypted connections (HTTPS). Logs don't keep conversation content (section 5).
- Privacy officer: 전요한, bouz3337@gmail.com
9. Changes
When this policy changes, we announce it through the bot's help link and the support channel, note the date above the effective date, and list what changed below, by date.
- 2026-10-31: added translation rooms (applies once rooms are offered). Section 2 now has room records (rooms, room members, [Block invites], leave records, daily counts and the server's room settings) and the room notice records kept in memory; section 3 says that in rooms only the messages of people who pressed [Join] are sent and the messages of people who haven't joined are not; section 4 names who can see rooms (server admins and people with the Manage Threads permission) and how the original is shown there; section 6 covers deleting room records, and closing, leaving and [Block invites]. The recipient is still Anthropic. The same day's QA added to section 2 the display names and owner-presence checks kept in memory for rooms (1 hour), and to section 6 that records others made about you (blocks, leaving your rooms) stay.
- 2026-10-30: added to section 2 the time an auto-translation pause ends (per-server settings) and, to what is kept only in memory, the text-in-image result while you page through it (15 minutes). No new information is collected and no new recipient.
- 2026-10-20: added to section 2 the consent record for voice-channel reading (the voice provider named on the screen when you picked a voice, and the date). In section 3, the voice-channel reading test line now says that only the messages of testers who picked a voice themselves are sent, and that the screen where you pick a voice names where it is sent. There is no new recipient. Later that day, following the owner's decision (22:00), added to section 7 the one exception for age-restricted channels (the chat of age-restricted voice channels where voice-channel reading can be used is auto-translated so it can be read aloud), and to the voice-channel reading line in section 3 that it reads only in age-restricted voice channels and sends only the messages of people on a paid plan. There is no new recipient.
- 2026-10-20: added your glossary (word pairs you add and your name line) and how many meaning explanations you used to section 2, and to section 3 the glossary entries sent with translation requests (including the name lines of people who use the bot in the same server). Meaning explanations are no longer marked as being tested, and section 3 now says that for messages Cozirom translated, the stored original is sent. The recipient is still Anthropic.
- 2026-10-19: in section 3, the copies [Put on image] sends to read the text changed from a copy with numbered boxes to a small copy of the image plus the text areas cut out of it (sent in one request). It is the same kind of information made from the same image. No new kind of information is collected and there is no new recipient.
- 2026-10-18: added the revision date and this list. To what section 2 keeps only in memory, added [Translate text], [Put on image] and [Put it on anyway] (the button that puts translations on an image with a lot of text after you confirm) under results, and the images [Put on image] was pressed for (including the picture with the text erased) and where their text was found, kept for 15 minutes, up to the 4 most recent, so a font change redraws right away, and, for the per-person daily limits on images and voice messages, how many images and seconds of voice you had read that day, until the end of that day. To section 3, added that up to 3 copies with the numbered boxes split between them are then sent. No new kind of information is collected and there is no new recipient.
- 2026-10-17: added voice message transcription (the audio goes to ElevenLabs), requests from other people, the voice-channel reading test (only testers' translations go to Google) and its voice settings, section 8 (rights, deletion, safety measures, privacy officer), putting translations on images, the image icons on translated messages (they carry the writer's ID), posting again messages that have only images, the font you choose for images (section 2) and the data for redrawing in another font (memory, 15 minutes).
- 2026-10-16: added text in images (images are sent to Anthropic to read the text; the images and the text read are not stored).