1Scope and contact
This policy explains how Element ("we", "us" or the "Bot") handles personal data when Element is used in a Discord server, when you use elementbot.app and its dashboard, when you interact with the support community, or when a membership is connected to the Bot.
Element is operated from the United Kingdom. We decide how the personal data this policy covers is used (we are the controller).
For privacy questions or requests, contact the Element team in the support server. You can download a copy of your data yourself on Your data.
2Information we process
Discord identifiers and server configuration
User, server, channel, role and message IDs; command settings; permissions; prefixes; feature configuration; and other identifiers needed to connect information to the right Discord server.
Feature content
Content or settings supplied for tickets, giveaways, role panels, embeds, tags, automated responses, triggers, stickies, starboards, donation tracking, staff applications, bingo, imposter and Card Clash games, and other enabled features.
Message and member events
Some enabled features have to process message content, message metadata, reactions, member activity, roles, or presence and status. This includes Snipe, AFK, tickets, starboard, message triggers, Status role, Spotify features that read members' activity, donation tracking and the security tools.
Usage records
When you use prefix commands, slash commands, buttons, select menus or forms, Element records the time, the interaction type, the command or feature name, the server ID, channel ID and user ID, which part of the service handled it, how long it took and whether it succeeded. Records also include an error or block reason where there is one, such as a blacklist, maintenance or an expired menu. Usage records do not contain message content or the options typed into commands.
Translations and votes
When you translate a message, Element logs the language, the length and which service was used, but not the text. When you vote for Element on top.gg, top.gg tells us your Discord user ID and the vote time, which decide whether you get better translations. Both are kept 1 year.
Product analytics
To learn which features help servers, Element keeps five kinds of record:
- how many times each automatic feature acted in a server, and whether it worked, each hour (kept 35 days) and each day (kept long term);
- when Element joined or left a server, with that server's member count at the time;
- how many servers have each feature set up and turned on each day;
- the day each server first set up each feature; and
- a daily note per server of its member count, how many features it has set up, whether it is Premium or a partner, and how many other servers' saved messages use its custom emoji, kept 2 years.
These are counts and yes-or-no notes per server and feature only. They hold no user IDs, channel IDs or message content, so none of them can be traced to you.
Support, membership and operational information
We may process support messages, bug reports, subscription tier and entitlement status, timestamps, errors, diagnostics, and security or abuse signals. Purchases, subscriptions and memberships go through Discord in-app purchases, Patreon, or checkout on our website. They handle payment details; Element never receives your full card details.
Website purchases
If you buy on elementbot.app, you pay on Stripe's checkout page. The seller of record is Sold through Link, LLC (Onelink), a Stripe company. You give your payment details, email address and billing details to Stripe and Onelink, not to us.
Onelink then shares the order with us: your name and email address, your billing country and address, any tax ID you entered, limited payment details such as the card type and last four digits, what you bought, the price and dates, and whether the subscription is active. We link the purchase to your Discord user ID and use these details to give you the plan, handle support and refunds, and keep the business records UK law requires.
Stripe and Onelink also use your purchase data for their own purposes, such as processing the payment, preventing fraud, collecting tax and meeting legal duties. For that they may act as independent controllers under the Onelink privacy policy, not this one. You can ask Onelink to delete that data through its privacy centre. Doing so cancels any subscription bought through it.
Error monitoring and service logs
Error reports can include stack traces, the Bot version, Discord user, server and channel IDs, and the command or feature involved. Message content is removed before reports are sent to Sentry. Errors may also be posted to a private developer channel on Discord for the Element team. Logs on our own server can include Discord IDs, command names and error details.
The website and dashboard
Signing in to elementbot.app uses Discord with three permissions: identify (your Discord user ID, username and avatar), email (your email address) and guilds (the servers you are in and your permissions there). Your email is only used to identify you for privacy and data requests and for account security. It is never shown publicly or used for marketing.
Discord access and refresh tokens are stored encrypted with AES-256-GCM and only used to fetch your server list. Only people with Manage Server permission in a server (or its owner) can view or change that server's settings on the dashboard.
The website sets one essential cookie to keep you signed in. It uses no analytics or advertising cookies. Your light or dark theme choice is saved in your own browser and never sent to us.
Website requests
When you visit elementbot.app, Cloudflare and our server process standard request information such as your IP address, browser details, the page requested and the time, to deliver the site, keep it secure and diagnose faults.
Some pages show profile pictures, including example ones in the home page tour. Your browser loads these directly from Discord's image service (cdn.discordapp.com), and one comes from Lanyard (api.lanyard.rest), so those services receive the request, including your IP address, under their own privacy policies.
The home page tour can play tracks in Spotify's own player. Nothing from Spotify loads until you press play; once you do, Spotify receives your request (including your IP address) and may set its own cookies, under Spotify's privacy policy.
3Where information comes from
- Discord, when the Bot receives commands, interactions and enabled server events, or when you sign in to the website;
- server owners and administrators who configure Element;
- members who use commands or submit content to a feature;
- Discord and Patreon, when they confirm plan entitlements;
- top.gg, when you vote for Element there;
- Stripe and Onelink, when you buy on our website; and
- our own systems, when they create service, error and security logs.
4Why we use information
- to provide commands and the server features administrators turn on;
- to remember configuration and deliver information to the right server, channel, role or member;
- to run membership entitlements and feature limits, and to handle website purchases, refunds and the records they need;
- to keep Element reliable, diagnose faults and provide support;
- to detect spam, abuse and exploits, protect users and infrastructure, and enforce the Terms;
- to let Element's developers look at one server's settings and feature counts, to understand how features are used and to give support;
- to monitor reliability and performance and produce aggregate statistics from usage records and product analytics, such as the most used features and how many servers use each one; and
- to comply with legal obligations and valid legal requests.
5Legal bases
Where the UK GDPR or EU GDPR applies, we rely on one or more of these bases: performing the service you ask for; legitimate interests in operating, securing, supporting and improving Element; compliance with legal obligations; and consent where an optional activity needs it.
Usage records and product analytics are processed on the basis of our legitimate interests in security, abuse prevention, running the service and improving it, including reliability, performance and aggregate statistics.
We weigh those interests against the rights of the people affected. Server managers should only turn on features that suit their community and explain how their server uses them to members.
7How long information is kept
How long something is kept depends on the feature. When data is no longer needed it is deleted or anonymised.
| Information | Kept for |
|---|---|
| Raw usage recordsThen only daily totals per command and server remain, with no user or channel IDs. | 90 days |
| Product analyticsCounts per day, server and feature only. They never contain user IDs. | Long term |
| Hourly product analyticsCounts per hour, server and feature only. | 35 days |
| Daily server notesMember count, features set up, Premium or partner, and emoji use by other servers. No user IDs. | 2 years |
| Snipe history24 hours on premium servers, up to 50 messages per channel (125 on premium). | 1 hour |
| Messages that ping an AFK member | 30 days |
| Giveaway entriesAfter the giveaway ends. Giveaway action history is kept 30 to 90 days after the end. | 90 days |
| Text of direct messages Element sendsAfter it is sent or given up on. Delivery details are cleared after 30 days. | 7 days |
| Translation recordsThe language, length and which service was used. No message text. | 1 year |
| top.gg votesYour user ID and vote time. | 1 year |
| Staff application draftsSubmitted applications follow the server's retention setting. | 30 days |
| Server logs | 14 days |
| Error reports in Sentry | About 30 days |
| Performance metricsCounts and timings per command and feature, with no user or server IDs. | 30 days |
| Encrypted database backups | 7 days |
| Your server list on the website | 1 hour |
| Website sign-in sessionOr until you sign out. | 30 days |
| Website purchase recordsAfter the purchase, for tax and accounting. | 7 years |
| Configuration and feature recordsFor as long as the server uses the feature or Element. | While in use |
| BlacklistsActive and expired. A deletion request never removes them. | Always |
| Record that you deleted your dataYour user ID, the time and which kinds of data were removed. No content. | Long term |
Some information is held briefly in fast in-memory storage on our server to run features, such as cooldowns and the list of servers Element is in. Per-user activity counters that watch for spam last seconds to minutes.
Removing Element from a server does not always erase every record straight away. Copies may remain for a while in restricted backups, or where they must be kept for security, disputes, fraud prevention or the law.
8Your choices and rights
Server managers can turn features off, change configuration, limit Element's permissions and remove Element. Where a command has its own delete or reset option, you can use it directly. You can stop Element saving your messages when you ping AFK members, and choose which direct messages Element sends you.
Getting a copy. Signed in to elementbot.app, you can download the data Element holds about you as a JSON file on Your data, once a day. It covers every record in Element's database that names you, and the servers those records belong to, with other people's IDs left out.
Deleting your data. Signed in, you can ask for your data to be deleted on Your data, once a day. You have 14 days to change your mind. After that it can't be undone, and your data is deleted. Until then Element works as normal, and you can cancel on the same page. It is always done within 30 days of your request. It removes your settings, AFK history, giveaway entries (including in giveaways still running), stars, Spotify tracking, translation records, top.gg votes, queued direct messages and the staff applications you submitted, then deletes your elementbot.app account, which signs you out. Usage records are anonymised: your user ID and the channel ID are removed while the server, feature and time stay, so totals remain accurate without linking back to you. Your ID is also removed from giveaways you donated, starboard posts and security permissions you granted.
Some records stay, and the page lists them with the reason before you confirm. Blacklists always stay, active or expired: they prevent abuse, and a deletion request can never remove them. Records that belong to a server also stay, such as tickets, donations its staff logged, payouts, who won a giveaway, moderation and security settings, sticky roles (servers use them to give back roles such as a mute when you rejoin, and each server's own retention removes them), and tags or other content you created there (delete those first if you want them gone). Premium and purchase records stay for billing. Your privacy choices stay too: direct messages you turned off stay off, and if you chose not to have your pings to AFK members saved, they still aren't.
A deletion is done once, not a block: anything you do after it runs is stored as normal. We keep a record of each request, with your user ID, when you asked, when it ran or was cancelled and which kinds of data were removed, and nothing else.
Other requests. For correction, restriction, objection or other requests, contact the support server with your Discord user ID and, if it is about one server, that server's ID, so we can verify and find it. These requests are subject to your rights under applicable law.
These rights depend on where you live and may have lawful exceptions, including the rights and privacy of other people. UK users can learn more from the Information Commissioner's Office and may complain to the ICO if a concern isn't resolved. Users elsewhere can contact their local data protection authority.
9Automated actions
Element carries out actions that server managers choose, such as giving roles, replying to messages or applying moderation tools. We do not use personal data to make decisions intended to have legal or similarly significant effects. Server administrators should review consequential automated actions and give members a way to raise mistakes.
Short-lived per-user activity counters alert the Element team to unusual volumes over seconds to minutes; the alerts take no action by themselves. Separately, if you trigger errors repeatedly in a short time, Element blocks you from using the Bot for up to 7 days as an anti-abuse measure. You can appeal in the support server.
10Security and international processing
We use reasonable technical and organisational safeguards, including access controls and protected service credentials, to reduce the risk of unauthorised access, change, loss or disclosure. Access to our database and cache uses separate credentials for each service with the least access it needs. No online system can be guaranteed completely secure.
Element's servers are hosted by OVHcloud in Virginia, USA. Sentry stores error data in its EU region (Germany). Cloudflare chooses where encrypted backups in R2 are stored. These arrangements, and the use of Discord, Patreon, Stripe, Onelink, DDA and the feature providers above, may mean processing outside the UK, the European Economic Area or your own country. Where required, we rely on lawful transfer mechanisms or the safeguards those providers offer.
11Young users
Element relies on Discord, including for website sign-in. You must meet the minimum age Discord and the law in your country require. Element is not intended to collect information from anyone who is not allowed to use Discord.
12Policy updates
We may update this policy when Element, its providers or the law change. The effective date above changes with each update, and material changes may also be announced in the support server or another reasonable channel. Questions and requests go to the support server.