You, and your privacy.
Effective 18 May 2023. Last updated 13 October 2026.
This policy explains what personal data we process when you use sirius.menu, the Rayfield interface library (including Rayfield Gen2), the Sirius script, the key gate at gate.sirius.menu and keys.sirius.menu, and Starlight, our Discord verification bot (verify.sirius.menu) and moderation bot. It is written to meet Article 13 of the UK GDPR.
The short version
- Rayfield and Sirius send usage analytics that include a pseudonymous identifier derived from your Roblox user ID. It is not anonymous. You can switch it off in Rayfield’s settings. Sirius has no in-app switch; email us to object.
- Our scripts fetch code and data from GitHub, Roblox, ScriptBlox, Sentivel and our own servers. Each of those sees your IP address when they do.
-
The verification bot keeps your Discord ID and name, and only keeps a Discord access token
if you opt in to be restored to a replacement server. Use
/forgetto delete it. - The moderation bot keeps message text for 48 hours, and the text of edited or deleted messages in its logs for 90 days.
- We do not sell personal data and we do not use it for advertising.
Who is responsible
The controller is Sirius.
Contact us about anything in this policy at support@sirius.menu. We have not appointed a Data Protection Officer, because we are not required to; the address above reaches the person responsible for data protection.
What we collect, and why
Visiting sirius.menu
- What: your IP address, browser user agent and the page requested, which every web request carries. The site’s server logs record request details for a 1 % sample of requests to the loader and status endpoints.
- Why: to deliver the site and the script loaders, and to diagnose faults.
- Legal basis: legitimate interests in running a working, secure site.
- Cookies and storage: sirius.menu itself sets no cookies and uses no local
storage, analytics or advertising trackers. Our hosting provider, Cloudflare, may run
automated bot-detection on our pages, which can set strictly necessary security cookies
(such as
__cf_bm) to tell people from bots.
Rayfield and Sirius usage analytics
When a script built with Rayfield creates its window, or Sirius starts, the script sends an analytics event to our collector (rayfield-collect, run on Cloudflare). An event contains:
- A pseudonymous identifier: a SHA-256 hash of your Roblox user ID, which our server hashes again with a secret key that changes every calendar month before storing it. This lets us count users within a month without storing your user ID. Because the key changes, the same person has a different identifier each month, and identifiers cannot be linked across months. It is still personal data: the first hash can be recomputed by anyone who knows your user ID, and we hold the key to the second. It is pseudonymous, not anonymous, which is why Rayfield’s setting is labelled “Usage Analytics (pseudonymous)”.
- The place ID and universe (experience) ID of the game you are in.
- Your executor’s name and version.
- Your platform (computer, mobile or console) and your Roblox locale setting.
- The script’s name, version and ID, the interface build, its theme, and flags for its settings (key system, configuration saving, secure mode, custom assets, mobile layout).
- The Discord invite code the script advertises, if it has one.
- If you are later kicked or banned from that game while the script is running: whether it was a kick or a ban, and the numeric error code Roblox gave. We do not keep the text of the kick message. Network drops and server shutdowns are not reported.
- Your country and continent, which Cloudflare derives from your IP address. Your IP address itself is not stored with the event. It is held briefly in memory to rate-limit the collector, and then discarded.
How often:
- Rayfield sends one event each time a Rayfield window is created, and one more if you are kicked afterwards, only while Usage Analytics is switched on.
- Sirius sends analytics on roughly one launch in ten, chosen at random.
Turning it off:
- Rayfield: the “Usage Analytics (pseudonymous)” toggle in
Rayfield’s Settings tab is on by default. Switch it off and
Rayfield neither downloads its analytics module nor sends any further events; the choice
is saved on your device. Script developers can turn off all of
Rayfield’s own requests, analytics included, by setting
getgenv().DISABLE_RAYFIELD_REQUESTS = truebefore loading Rayfield. - Sirius: Sirius has no in-app analytics switch. You can object to its analytics by emailing support@sirius.menu (see Your rights).
Why: to understand which executors, platforms and versions our software runs on, to find what breaks it, and to show script developers how their scripts are used. Legal basis: legitimate interests. We keep the identifier pseudonymous, never collect your user ID or username, and give Rayfield users a switch to stop it.
Developers who use the Sirius Developer Platform can see aggregated analytics for their own scripts. They do not see your identifier.
Requests our scripts make to other services
To work, our scripts make network requests from your device. Each request reveals your IP address, and usually your executor’s user agent, to the service receiving it. Those services handle that data under their own privacy policies.
- GitHub (raw.githubusercontent.com, owned by Microsoft): Rayfield and Sirius download their own code and modules from GitHub on every run. Rayfield downloads its analytics module only while Usage Analytics is switched on. Rayfield Gen2 downloads some resources from it too.
- Sentivel (sentivel.com, hosted on Vercel): about one Rayfield run in 200 sends a heartbeat so we know Rayfield is loading for people. It carries no data about you beyond the request itself. Scripts that set their own Sentivel heartbeat ping it while their window is open; that is the developer’s monitor, not ours.
- ScriptBlox (scriptblox.com): when you use Sirius’s script search, your search terms are sent to ScriptBlox.
- Roblox: Sirius asks Roblox’s APIs for public server lists (for server hopping) and loads avatar thumbnails. Rayfield Gen2 loads assets and avatar thumbnails from Roblox, and by default loads assets through RoProxy (assetdelivery.roproxy.com), a third-party proxy we do not operate.
- Our servers: Sirius loads images from cdn.sirius.menu, and the list of Discord boosters from sync-api.sirius.menu (see below). The loaders at sirius.menu serve the scripts themselves.
Scripts built with Rayfield by other developers may make their own requests, such as fetching keys from a URL the developer chose. Those developers are responsible for them.
Discord booster badges in Sirius
Sirius shows a badge next to players who boost our Discord server. To do that, it downloads a list from sync-api.sirius.menu that maps a hash of each booster’s Roblox user ID to when they started boosting and their chosen badge colour and icon. Every Sirius user downloads this list. If you are a booster, a Sirius user who knows your Roblox user ID can therefore see that you boost and since when.
Discord webhook logging in Sirius
Sirius has an optional logging feature that you switch on and point at a Discord webhook you choose. When enabled, Sirius sends chat messages from other players in your server, and players joining and leaving, with their display names and avatar links, to that webhook. This data never comes to us; it goes straight from your device to Discord. If you use this feature, you are the controller of what it collects about other players, and are responsible for having a lawful reason to collect it and for telling them.
Data kept on your device
Rayfield saves your settings and script configurations, and the gate’s loader caches
your key, as files in your executor’s workspace folder. This stays on your device and
is not sent to us. Delete the Rayfield or SiriusGateway folder to
remove it.
The key gate (gate.sirius.menu and keys.sirius.menu)
Script developers can require a key before their script runs, and send players through our gate to get one. The gate collects:
- Your IP address, to rate-limit how many sessions and keys one connection can request. On gate.sirius.menu it is used as a short-lived rate-limit counter that expires after about a minute. On keys.sirius.menu we only store a keyed hash of it (an HMAC under a secret only the gate holds), used to check that the person finishing a gate is the one who started it.
- A hash of your Roblox user ID, the same pseudonymous value described under analytics, which the script’s loader sends so that a key is bound to your Roblox account and cannot simply be shared.
- Progress through the gate: on gate.sirius.menu, kept in your
browser’s local storage and cleared when you finish or after ten minutes; on
keys.sirius.menu, in a strictly necessary cookie (
sirius_gate) that lasts at most 24 hours. - Counts of gates started and completed, by script and ad provider, so developers can see how their gate performs. These are not linked to you.
Depending on the developer’s settings, the gate sends you to an advertising network’s checkpoint pages: Linkvertise, Lootlabs or work.ink. Those pages are operated by those companies, which collect data (including through cookies and ads) under their own privacy policies, not this one.
Legal basis: legitimate interests in preventing abuse, and in providing the key system the script’s developer has chosen.
Starlight verification (verify.sirius.menu)
To verify in our Discord server, you authorise Starlight through Discord with the
identify permission. We keep:
- Your Discord user ID, username and display name.
- When you verified, and whether the verified role was granted.
We do not keep your avatar, email address, connected accounts or IP address. Your account’s age is read from your Discord ID; if a minimum account age is configured, newer accounts are refused.
Restore (opt in): separately, you can choose to let us add you back to a
replacement server if ours is ever lost. Only if you opt in, we store a Discord access token
and refresh token with the guilds.join permission, encrypted at rest. They are
used for one thing: adding you to our replacement Discord server. Deleting your data revokes
the token at Discord.
Bot checks: verification may include a Cloudflare Turnstile challenge. When it does, Cloudflare receives your IP address and browser signals to decide whether you are a person. Verification also sets short-lived, strictly necessary cookies to tie the steps of the flow together.
Legal basis: legitimate interests in keeping our server free of bots and raids for verification; your consent for Restore, which you can withdraw at any time.
Deleting it: use /forget in the server, or email us. Your record
is also deleted seven days after you leave or are banned from the server, and after twelve
months without activity.
Starlight moderation
To moderate our Discord server, the moderation bot processes:
- The content of messages sent in the server, held in a buffer for 48 hours so that deleted and edited messages can be reviewed.
- A moderation log of events: who did what, where and when (for example, which message was deleted, by whom, and on whose authority). The text of edited and deleted messages, and of messages blocked by automated moderation, is removed from this log after 90 days. The rest of the record, and moderation cases such as warnings, timeouts and bans, are kept as the server’s record of how it was moderated; they are not deleted automatically.
-
Support tickets you open, and their transcripts (the messages in the ticket, saved when it
is closed). These are not deleted automatically: they are kept until we delete the ticket,
or until you use
/forget, which removes the subject and details of tickets you opened and what you wrote in any ticket.
Automated moderation may block messages that match our rules; a moderator can review any
action. Legal basis: legitimate interests in keeping the community safe and
enforcing its rules. /forget also deletes your buffered messages and removes what
you wrote from the moderation log and from ticket transcripts. The record that an action
happened, and by whom, stays.
Developer accounts
If you are a script developer with an account on the Sirius Developer Platform (developer.sirius.menu), that platform’s own privacy policy, at developer.sirius.menu/privacy, explains what it collects about you.
When you contact us
If you email us or open a support ticket, we use what you send to answer you. Legal basis: legitimate interests in responding to you.
Who receives your data
We use these providers to run our services. They process data on our behalf:
- Cloudflare (United States, with servers worldwide): hosting for this site, the loaders, the analytics collector, the gate and the verification service; databases, analytics storage, logs and Turnstile.
- GitHub (Microsoft, United States): hosts and serves our script code.
- Discord (United States): the platform our bots run on, and the sign-in for verification.
- Fly.io (servers in London): hosts the moderation bot.
- Vercel (United States): hosts Sentivel, our status and heartbeat monitor.
- Neon (AWS London region): database for keys.sirius.menu.
These organisations receive data directly from your device when you use our software, and are responsible for it themselves: Roblox, ScriptBlox, RoProxy, GitHub (for the requests your script makes to it), and the ad networks Linkvertise, Lootlabs and work.ink.
We may also disclose data where the law requires it, or to protect our users or services from fraud or abuse. We do not sell personal data.
International transfers
Several of the providers above are based in, or process data in, the United States and other countries outside the UK and EEA. Where a provider processes data outside the UK or EEA, the transfer relies on that provider’s data processing terms incorporating the UK International Data Transfer Addendum and the EU Standard Contractual Clauses, or on the UK–US Data Bridge where the provider is certified under it. You can ask us for a copy of the relevant safeguards.
How long we keep it
| Data | Kept for |
|---|---|
| Sampled server logs for sirius.menu | Up to 7 days (Cloudflare Workers Logs) |
| Analytics events (Rayfield, Sirius, gate) | Up to about 3 months, Cloudflare Analytics Engine’s fixed retention |
| Aggregated analytics statistics (counts, with no identifier) | Not linked to you; we keep no per-user analytics records |
| IP addresses used for rate limiting (collector, gate.sirius.menu) | Seconds to about a minute |
| Gate sessions on gate.sirius.menu | 10 minutes |
| Gate sessions and hashed addresses on keys.sirius.menu | 7 days after the session expires |
| Keys bound to your hashed Roblox ID | Until the script’s developer deletes the key, its project or their account |
| Verification record and Restore tokens |
Until you use /forget; 7 days after you leave or are banned; or 12 months
without activity
|
| Message content in the moderation buffer | 48 hours |
| Text of edited, deleted and blocked messages in moderation logs | 90 days |
| Moderation log metadata, cases and ticket transcripts |
Not deleted automatically; /forget removes what you wrote from ticket
transcripts
|
| Deleted records in our Cloudflare D1 databases | Up to 30 days in D1 Time Travel (point-in-time recovery) |
Your rights
Under UK data protection law you have the right to:
- Access the personal data we hold about you.
- Rectify data that is inaccurate or incomplete.
- Erase your data.
- Restrict how we use it.
- Port data you gave us, in a machine-readable format.
- Object to processing based on legitimate interests, including analytics. We will stop unless we have compelling grounds that override yours.
- Withdraw consent where we rely on it (Restore), at any time, without affecting what we did before.
Email support@sirius.menu or open a ticket on Discord. Because analytics are pseudonymous, we may ask for your Roblox user ID so that we can find the records linked to it. We reply within one month.
Providing data to us is not a legal requirement. Without the data each feature needs, that feature will not work: you cannot be verified without authorising with Discord, or get a key without passing the gate. Analytics can be switched off in Rayfield without losing anything.
We do not make decisions about you based solely on automated processing that have legal or similarly significant effects. Automated checks (Turnstile, the account-age minimum for verification, rate limits and automated message moderation) only decide whether an action goes ahead, and you can ask a person to review the outcome.
Children
Roblox is used by many children, so we expect some people using our software to be young. Discord requires its users to be at least 13, and so do our Discord services. Our other services are not directed at children under 13, and we do not knowingly collect personal data from them; Roblox itself permits younger players, so we cannot rule out that a child under 13 runs a script that uses Rayfield or Sirius.
With the UK Age Appropriate Design Code in mind, we keep what we collect to what each feature needs, do not ask for Roblox user IDs or usernames for analytics, do not profile people for advertising, and do not sell data. Rayfield’s analytics are on by default; anyone can switch them off in Rayfield’s Settings tab, and the identifier they use changes every month. If you are a parent or guardian and think your child has given us personal data, email support@sirius.menu and we will delete it.
Security
We protect data with access controls, encryption in transit, encryption at rest for Discord tokens, and keyed hashing for identifiers and addresses. No system is completely secure, so we cannot guarantee absolute protection.
Complaints
If you are unhappy with how we handle your data, please contact us first. You also have the right to complain to the Information Commissioner’s Office, the UK supervisory authority, at ico.org.uk or on 0303 123 1113.
Changes to this policy
We will update this policy when what we collect changes, and change the date at the top. The current version is always the one on this page.