Privacy & cookie choices
Updated October 22, 2026.
TypeScore Lab provides typing practice without an account. This notice explains what the website stores and which optional services can receive information.
Site operator and questions
TypeScore Lab publishes this website. Use the contact form for privacy questions or to request help with information you submitted.
Typing results
Completed tests send measurements to this site's server: language, input method, mode, duration, speed, accuracy, corrections, speed samples, and character-level counts and timings. The full text you typed is not sent in the result payload or stored as a passage. Individual characters can appear in the performance metrics.
The service keeps the latest 200 test results across visitors, removing older results when new ones are saved. This is a count limit, not a guaranteed storage period. Your browser's signed visitor identifier determines which saved results it can retrieve.
Untimed lesson exercises
The tutorial exercise fields run in your browser. Their text is not submitted to the results service, and the page does not save exercise progress. Reloading or leaving the page clears it. Your own device's keyboard, browser extensions, or cloud IME may have separate privacy settings.
Essential cookie
The tsl_visitor cookie identifies your browser's test history. It is signed, HTTP-only, and SameSite=Lax, with a one-year expiry. Production HTTPS uses the Secure flag. It is not an advertising identifier. Clearing it disconnects your browser from its saved results; it does not immediately erase those server records.
Optional Google Analytics
When Analytics is configured, it loads only after you select Allow analytics. It may receive page views, usage events, device information, approximate location, and non-personal completed-test summaries such as language, speed, and accuracy. The site does not send your typed passage or individual keystrokes to Google Analytics. Google Signals and advertising personalization are disabled in this integration.
Your analytics choice is saved in local storage as tsl_analytics_consent. Google Analytics may set cookies beginning with _ga. Use Cookie settings in the footer to change your choice when analytics is enabled. Rejecting analytics stops this site's analytics consent and removes accessible analytics cookies; it does not delete data already received by Google. Google's retention settings are managed in the operator's Analytics account. Read Google's privacy policy for its processing details.
Advertising and AdSense
This version includes an AdSense account verification meta tag and an ads.txt publisher record. These identify the publisher and do not themselves load an ad or set an advertising cookie. This version does not load the AdSense ad-serving script.
If ad serving is introduced, this notice and the site's consent controls must be updated first. Google and advertising partners can use cookies or other identifiers to serve and measure ads, including personalization where permitted and consented to. The analytics choice described above is not an advertising consent choice. Learn how Google uses information from partner sites and review Google's ad choices.
Contact messages
The contact form stores the topic, message, optional reply email, timestamp, and a random reference number on the site's server for operator review. It does not subscribe you to marketing or publish your message. The store keeps at most 500 messages; on each new submission, messages older than 180 days are removed. Older messages may remain until the next submission or operator cleanup. Do not submit sensitive personal information.
To request removal of a contact message, provide its reference number through the contact form or the listed email. The operator may need enough information to verify the request. No automated support response or deletion deadline is promised by this form.
Hosting and security
Hosting providers may process request information, including IP addresses, for delivery, reliability, and security. Rate limiting uses temporary in-memory request counters. Hosting logs and any operator backups have retention settings outside this application. The application does not publish contact messages or other visitors' result histories.
