Welcome to BloxMulti. This Privacy Policy explains how we handle your data when you use the BloxMulti desktop application ("the App") and our website.
1. Information We Collect
BloxMulti is designed as a standalone, local Windows desktop application. We prioritize your privacy and collect minimal data.
- Local Data: The App stores your saved Roblox account session cookies (encrypted via Windows DPAPI), window layouts, saved servers, session presets (account selections and game/server destinations), and settings locally on your device. These account-management files are not uploaded to BloxMulti's database. If you enable Cloud Sync, an encrypted backup is stored in your Google Drive as described below.
- Telemetry and Analytics: We do not track keystrokes or sell behavioral telemetry. If you opt in to a public profile, the App tracks game and playtime information as described below.
2. Account Authentication & Premium
To access Premium features and account synchronization, BloxMulti allows you to sign in using Google or Discord. When authenticating, we only collect the minimum information required to manage your account and subscription:
- Email Address: Used as your unique account identifier to link and verify your Premium license.
- Basic Profile Information: Such as your display name and avatar URL, provided securely during OAuth authentication.
Sign-in credentials and basic profile details are stored in the App's local browser storage to keep you signed in. Session credentials are exchanged with the authentication services as needed. This storage is separate from the DPAPI protection used for saved Roblox session cookies.
We use this information for licensing and authentication and, if you opt in, to provide your public profile as described below. We never sell your personal information to third parties.
2A. Optional Public Profiles & Game Activity
Public profiles and game-activity sharing are optional and off by default. To enable them, sign in and turn on Share game activity on my profile in the App. A profile record is created when you first enable sharing. Signing in by itself does not create a profile record, although account authentication and other features continue to handle their own data as described in this policy.
- Profile information: We store your account ID, public username, display name, bio, and social handles you choose to add. Initial names may come from your sign-in provider. Your profile can also display the profile picture URL supplied by that provider; the feature does not require you to upload an image to BloxMulti.
- Activity information: When sharing is enabled and the App is running, it sends Supabase periodic heartbeats containing the running game and place identifiers, the longest-running current game's identifier and elapsed time, a random app-session ID, and a sequence number. The session ID is generated for the app session; it is not a hardware ID. Supabase records heartbeat times and uses its clock to calculate per-game playtime. The App keeps its current activity list in memory and does not save profile playtime counters in a local file. The current version attempts to remove the old profile activity counter file when it starts.
- What is public: Your profile page can show your username, display name, profile picture, bio, social links, current game, most-played games, and playtime totals. They are publicly accessible, including to anyone with the profile link, and may be copied or shared. The public profile response does not include your email address, account ID, or app-session ID. Profile viewers may connect to third-party services for profile images, game information, and images; those services receive the network requests needed to provide them.
- Stopping sharing: You can turn the setting off in the App. Once the change is saved, the App stops sending profile activity, active sessions are removed, and the profile page hides your details. The public profile API returns only a disabled status while sharing is off. Turning sharing off does not automatically erase your profile or saved playtime. If the change cannot be saved, the App pauses tracking locally and asks you to try again.
- Retention and deletion: A session stops appearing as active after about two minutes without a heartbeat. A cleanup task checks for expired sessions every two minutes, so their temporary records may remain until the next cleanup. Profile details and saved playtime totals remain until the profile or account is deleted; there is no automatic time limit for those records. To request deletion of profile data, contact us via the Support Page. Removing local data alone does not remove data stored in Supabase.
Playtime and current activity may be delayed or incomplete if the App closes, your device sleeps, the connection fails, or game information cannot be resolved. Time after the last successful heartbeat is not counted when a session expires. Other account and optional service data are handled separately from this profile feature.
3. Google Drive Synchronization
BloxMulti offers an optional Cloud Sync feature that utilizes your Google Drive to store application backups. To provide this service securely and with maximum privacy, we use the "appDataFolder" scope:
- Restricted Access: BloxMulti only has access to a hidden, application-specific folder on your Google Drive. We cannot see, read, or modify any other files or folders in your personal storage.
- Local Encryption: All data (including accounts and settings) is encrypted locally on your machine using AES-CBC-256 with PBKDF2 key derivation and your private password before upload. We cannot decrypt your backup.
- Direct Connection: Your data is transmitted directly between your device and Google's servers. At no point does your backup data pass through or reside unencrypted on our servers.
4. Notifications & Optional Feedback
The App can display announcements, polls, star ratings, and short forms. Taking part in a poll, rating, or form is optional and does not require signing in to a BloxMulti account.
- What is stored: When you submit a response, Supabase stores your selected answer, star rating, or form answers, the associated post, the submission time, and a hash of a random installation identifier. The identifier helps prevent duplicate responses to the same post. The feedback response record does not include an account ID, name, or email address unless you include identifying information in an answer.
- Local notification data: Your device stores the random installation identifier and which posts you have read. Read markers are not sent to BloxMulti as read receipts. Loaded content and unfinished answers are kept in memory rather than saved as notification history in browser storage.
- Purpose and access: BloxMulti's authorized administrators can review submitted feedback to understand user needs and improve the App. Aggregate poll totals and rating averages may be shown after you submit. Individual form answers are not made public through the App.
- Retention and deletion: A post's deadline stops participation and removes it from the active inbox; it does not automatically erase submitted responses. Responses remain stored until the post or those responses are deleted. Deleting a post also deletes all its associated responses.
Free-text answers may identify you even though no sign-in is required. Do not submit passwords, session tokens, payment details, or other sensitive information. Clearing the App's browser storage removes local notification identifiers and read markers, but does not delete responses already submitted; it can also allow another response from that installation.
To request deletion of feedback, contact us through our Support Page. Include enough information to help us locate the submission, such as the post title and approximate submission time. Because feedback is recorded using an installation identifier rather than an account, we may need additional information to identify your response. Do not send us your password or session tokens.
5. Third-Party Services & Libraries
- Supabase: Provides account authentication and database hosting for account, subscription, notification, feedback, and optional profile records.
- Google and Discord: Provide optional sign-in. Google Drive stores encrypted backups when you enable Cloud Sync. Links in announcements may also take you to third-party services, whose own privacy policies apply to your use of those services.
- Cloudflare: Hosts the website and provides a service that retrieves Roblox game names and images for public profiles. Profile viewers and the service make the network requests needed to display them.
- Stripe: Processes Premium payments. Payment information you provide during checkout is handled by Stripe under its own privacy policy.
- Roblox: BloxMulti interacts with the Roblox client to manage sessions and instances. BloxMulti is not affiliated with, maintained, authorized, endorsed, or sponsored by Roblox Corporation.
- Microsoft Edge WebView2: The App uses WebView2 for rendering its interface, which operates under Microsoft's diagnostic standards.
- nlohmann/json: The App utilizes this open-source C++ library for offline configuration parsing.
6. Data Security
Saved Roblox session cookies are protected locally using Windows Data Protection API (DPAPI). Optional Cloud Sync backups are encrypted before upload as described above. Account and subscription records, notification content, and submitted feedback are stored using Supabase, with access restricted to the functions and administrators that need it. Local read markers are not stored in that database.
7. Changes to This Policy
We may update this Privacy Policy from time to time as we add new features. We will notify users of any significant changes via updates to the application or our website.
8. Contact Us
If you have any questions or concerns about this Privacy Policy, please contact us via our Support Page or join our Discord Server.