NINJATYPE / Privacy Policy

Privacy Policy

How NinjaType handles your information, browser storage, and privacy choices.

This policy explains how NinjaType handles information when you use its website, typing tests, lessons, races, Hacker Typer, and Web Stories. NinjaType is maintained by Vivek Gupta. For privacy questions or requests, email [email protected].

Information at a glance

  • You do not need an account. NinjaType does not require an email address or password to practise or join a race.
  • Practice data is stored in your browser. Settings, saved results, learning progress, and related statistics are kept locally. They do not automatically sync between devices.
  • Online multiplayer uses a server. Room details, participant information, race submissions, and chat are transmitted to run the shared experience.
  • Shared result cards are public by choice. A result link contains the display name and score summary you choose to share.
  • Website visits involve service providers. Hosting, security checks, analytics, and externally loaded resources can process request and device information.

Practice data and browser storage

NinjaType uses browser storage to remember your theme and practice settings, completed test results, key-level practice statistics, lesson progress, and personal-best information. Results may include timestamps, test settings, speed, accuracy, errors, and duration.

Multiplayer preferences can include a nickname, avatar settings, and a randomly generated browser identifier. Temporary session storage can also hold connection details, your current race input, and progress-chart observations so a session can recover after a refresh or interruption.

The site may cache pages, scripts, images, and fonts through your browser and a service worker to make repeat visits faster. These caches are separate from your saved practice history. Other people using the same browser profile may be able to see locally saved information.

Shared result cards

When you choose Share result, NinjaType puts your chosen display name, speed, optional accuracy, challenge, available test details, and card theme/avatar choices into a shareable URL. You can exclude accuracy before creating the link or hide it on the share page. Anyone with that link can read or copy the information. The link is encoded, not encrypted, and does not expire automatically. Copies of links, downloaded cards, or social posts cannot be revoked by clearing your typing history.

Cards and PNG downloads are generated in your browser. The display name is remembered locally for convenience. Opening a shared link sends its URL to the hosting service, and page URLs may also be processed by the analytics providers described below. If you send a card through another app or social platform, that service’s own policies apply. Use a display name you are comfortable making public.

Online races, spectators, and chat

When you create, discover, or join an online room, NinjaType processes information needed to connect participants and operate the race. This includes room names and settings, nicknames, avatar configuration, browser and participant identifiers, connection state, and security-verification tokens.

During a race, the service receives progress updates and submitted text and metrics used to validate results. If you use room chat, your message, nickname, and message time are sent to the service and shown in the room. Participants and permitted spectators can see shared room information, chat, and race results. Room listings may expose the room name and basic room details.

A room invitation or room name is not a guarantee of a private conversation. Use a nickname you are comfortable sharing, and avoid entering passwords, contact details, confidential material, or other sensitive information in names, chat, or typing fields. Other participants can copy or capture information you share.

Hosting and security

NinjaType uses Cloudflare to deliver the website and operate multiplayer services. Like other web requests, visits and connections can expose an IP address, requested URL, browser and device information, request time, and technical error or security information to the hosting provider.

Online room entry uses Cloudflare Turnstile to help distinguish legitimate requests from automated abuse. The service sends the verification token and connecting IP address to Cloudflare for verification. Turnstile also processes browser and device signals as described in Cloudflare’s policies.

These services support page delivery, connection recovery, score validation, reliability, and abuse prevention. See Cloudflare’s Privacy Policy for its practices.

Analytics, cookies, and external resources

The main website loads Simple Analytics and Google Tag Manager, with Google Analytics configured through Tag Manager, to understand visits and use of the site. Measurement can include page URLs, referring pages, interaction events, approximate location, and browser or device characteristics. Requests to these providers also carry network information such as an IP address.

Simple Analytics describes its service as cookie-free analytics. Google Analytics can use cookies and identifiers to distinguish visits and measure activity. The presence of cookie-free analytics does not mean that every service used by NinjaType is cookie-free.

Web Stories load the AMP runtime from Google’s AMP CDN. Some pages may request icons or other resources from external providers. Loading a resource makes a request to that provider, which can receive request and device information. The standalone Web Stories do not include the main site’s analytics scripts.

Provider information and controls:

Browser privacy settings, cookie controls, and content blockers can limit third-party requests or storage. Their effects depend on your browser and configuration. Blocking security scripts can prevent online room entry, and disabling browser storage can prevent preferences and progress from being saved.

Messages and third-party services

If you email the maintainer, the information you send is used to respond to your question or request. Email providers process delivery and storage. Include only information needed to explain the issue.

GitHub, Discord, social links, and sponsorship services are separate services. If you follow a link, post publicly, or make a contribution through them, their own terms and privacy policies apply. NinjaType’s website does not collect payment-card details for those contributions.

Information may also need to be disclosed to respond to a valid legal requirement, investigate abuse, or protect the service and its users. Service providers may process information in countries different from your own.

How long information remains

Local preferences and progress can remain until you remove them, the app trims older records, or your browser clears or evicts its storage. Temporary session data follows the browser’s session-storage behavior and the app’s session cleanup. Browser session restoration may preserve some temporary data.

Multiplayer rooms are temporary and expire automatically. The application removes playable room state when a room closes; short-lived verification receipts and directory caches can remain during cleanup. This does not describe the retention of separate hosting, security, analytics, or email-provider records, which depends on those services and their settings.

Support correspondence may remain as needed to handle the request, maintain a record of its resolution, or meet applicable obligations. Contact the maintainer if you want information associated with correspondence reviewed or deleted.

Your choices and privacy requests

Use Clear History Data in Settings to remove saved typing history and associated key statistics. Reset All Settings clears local preferences and history. Your browser’s controls for clearing NinjaType site data can additionally remove cookies, session storage, and cached resources. These actions can permanently remove your saved progress.

Clearing browser data does not delete information already sent to a room, a service provider, or an email recipient. Conversely, the maintainer cannot remotely recover or remove records held only in your browser.

Depending on your location and the applicable law, you may have rights to access, correct, delete, restrict, or receive a copy of personal information, object to certain processing, or withdraw consent where processing relies on consent. You may also have the right to complain to a data-protection authority. Withdrawing consent does not change the lawfulness of earlier processing.

Email [email protected] with your request and enough context to identify the relevant interaction. Reasonable verification may be needed to protect another person’s information. The response will take account of applicable rights, technical limitations, and any legal obligation to retain information.

Children and shared devices

NinjaType does not require users to provide their age or create an account. Parents, guardians, and educators should supervise children’s use of shared rooms, chat, and external links, and follow any consent requirements that apply to them. Do not put a child’s identifying information in a public nickname or chat message.

If you believe a child has provided personal information that should be removed, contact the maintainer. On shared computers, clear local data when appropriate and avoid saving identifying nicknames.

Changes and contact

This policy may be updated when the service, its providers, or applicable requirements change. The date at the top identifies the latest revision. Material changes will be communicated where required by law.

For questions, contact [email protected]. See also the Terms of Service.

QUESTIONS?

Get in touch about your information or these terms.

Contact NinjaType