CyberSkill
CyberSkill Practice

Free practice

Privacy Policy

Version 1.4 · Effective 2026-08-11

Short version: optional email/PIN for your progress, analytics only if you accept, rights requests to info@cyberskill.world.

Data we collect

CategoryPurposeStorage
Email (optional)Save and retrieve progress; newsletter if opted inSupabase
PIN hash (optional)Authenticate progress retrieval — stored securely as a hash (never plain text) so your history survives this deviceSupabase
Nickname (optional)Leaderboard display; saved with your progress identitySupabase
Exam sittings and scoresGrade practice, show historySupabase / local device
Brain sessions and clearsVerify Brain play for Book and Crane awards; store session proofSupabase
Books and Crane eventsTimed-mock economy and public leaderboard rankSupabase
Leaderboard entriesPublic rankings of timed mocks and Brain activitySupabase
Roadmap board posts and commentsPublic title, body, nickname, and route; optional email for follow-up is stored but not shown publiclySupabase
Newsletter opt-inProduct updates you requestedSupabase / email provider
Operational telemetryReliability and abuse preventionHosting / logs
Analytics (optional)Aggregate product usage — only if you acceptAnalytics provider

Sub-processors

Two of these receive data on every visit: the database and the host. The rest only receive anything when the named condition holds. Where a row says a service is not currently in use, no request reaches it at all, because the code that would call it does not run without configuration.

ProcessorRoleRegion notes
SupabaseDatabase and auth storageUS/EU (project config)
VercelHosting and edge network. Vercel Speed Insights is a separate page-performance beacon and loads only if you accept analytics.US / global edge
Analytics providersAggregate product and traffic analytics. A provider script loads only when you accept analytics and that provider is configured for this deployment. The providers the site can load are PostHog, GA4 (gtag.js), Plausible, and Umami; an unconfigured provider is never contacted.Per provider (US / EU cloud)
Transactional email provider (Resend)Holds your address as a contact in our broadcast audience when you opt in to the newsletter, and delivers lifecycle messages. Address and template metadata only; no open or click tracking pixels. The adapter also supports Postmark; only the provider named in the deployment configuration receives anything.US / EU (provider region)
Cloudflare TurnstileAnti-spam check on the newsletter form. When you submit an email address, the challenge token and your IP address are sent to Cloudflare for verification. In use since 2026-08-07.Global edge
AI tutor providerWould process optional tutor follow-up question text, with item stems and pre-generated explanations in the model context and no email or account identifier attached. Not currently in use - the tutor is switched off and no provider endpoint is configured.Configured per deployment
Telemetry collectorWould receive traces, metrics, and log records for reliability work. Not currently in use - no collector endpoint is configured, so telemetry stays inside the deployment.Configured per deployment
Buy Me a CoffeeOptional support (bananas and memberships). Receives the payment details you provide on their platform; CyberSkill never stores card numbers. Webhooks may include supporter email so we can grant Supporter on matching Practice accounts.Global (Buy Me a Coffee)

Team seats and visibility

When an organization buys Practice seats (sales-led; not self-serve checkout), a team admin can invite members by email. Accepting an invite joins you to that team for the contract term and grants premium practice access through the same access path as individual Supporters.

  • What admins see by default: seat occupancy, pending invites, member emails for active seats, and aggregate team progress only (how many members have practiced, how many timed mocks were completed, readiness band distribution when available). Admins do not see per-member item-level answers or individual scores unless you opt in.
  • Member opt-in (default off): on the Team page you can allow your admin to see your own completed mock count, best score and last practice date alongside your seat on the member list. That is the whole of it: no per-question answers, no review history, nothing finer. You can turn it off at any time; the default is off.
  • Invited emails: invite records store the invited address and a hashed token until the invite is accepted or expires (typically 14 days). Expired, unaccepted invites are purged and are not kept for marketing.
  • What does not change: team membership does not add employer branding to your practice UI, and admins cannot force study plans. The purchase is access, not control of how you study.

Team admins and members manage seats at /team. Questions about a workplace seat: contact your team admin, or info@cyberskill.world.

Retention

Progress and leaderboard data are retained while your account remains active or until you request deletion. Logs are retained for operational periods then deleted or aggregated. Consent choices persist for up to 12 months.

Legal frameworks

Depending on where you are, the following may apply: Vietnam Personal Data Protection Law and Decree 356/2025; GDPR for EU visitors; CCPA/CPRA for California visitors. Listing these frameworks does not imply that every corporate filing (for example cross-border transfer assessments) is complete — some legal assessments are handled at the company level.

Your rights

To access, correct, or delete personal data we hold about you, contact info@cyberskill.world from the address the data is filed under. Because an email address is the only identifier most accounts have, we will ask you to confirm control of that address before we export or erase anything. We aim to answer within 30 days.

Erasure removes your identity row, sittings and answers, entitlements and their history, review and study-plan state, gamification records, Brain sessions, Roadmap board posts filed under your address, and newsletter records. Two things survive on purpose: an audit note that a request was serviced, which records a one-way hash of the address rather than the address itself, and any team whose administrator you were, so the other members do not lose their seats. Copies held by the payment platform are governed by that platform.

You can reject analytics via the cookie banner or by enabling Global Privacy Control in your browser.