Privacy Policy
Last updated: 4/29/2026
Short version
Key Warrior is a browser-only typing tutor. There is no backend, no account system, and no per-keystroke analytics. Everything you type stays in your browser. Progress is persisted to your browser's localStorage and nowhere else.
The only storage mechanism: localStorage
Key Warrior writes a single localStorage key on the keywarrior.productivities.net origin:
typing-tutor-state-v1— contains XP, level, streak, last-active day, recent session results (WPM, accuracy, errors, duration, timestamp), personal bests per lesson, unlocked achievements, and UI preferences (sound on/off, theme).kw_version— a small schema-version marker used for safe client-side migrations.
That's the entire footprint of your practice data. Nothing else is persisted, anywhere, by Key Warrior.
No per-keystroke analytics
Keystrokes are matched against the expected character in JavaScript and then discarded. They are never written to a database, never streamed to a server, never sent via fetch, WebSocket, or navigator.sendBeacon. You can verify this yourself: open DevTools → Network → start a lesson → confirm zero outbound requests during typing.
Advertising (Google AdSense)
Key Warrior is part of the Productivities.net network, which uses Google AdSense to cover hosting costs. When ads are displayed, Google and its partners may use cookies and similar technologies to serve ads based on your prior visits to this and other sites. AdSense does not receive your keystrokes, session results, or the contents of your localStorage.
You can review and adjust personalised advertising at google.com/settings/ads, and read Google's policy at policies.google.com/technologies/ads. The parent network's full privacy and cookie policy is available at productivities.net/privacy.
Server logs
Standard request logs (IP address, user agent, timestamp) may be retained briefly by our hosting provider for operational and security purposes only. Key Warrior does not run any custom analytics on top of those logs.
Clearing your data
Clicking "Reset all progress" on the Stats page, using private/incognito mode, or clearing site data for keywarrior.productivities.net in your browser settings will wipe every byte associated with your practice. There is no server-side mirror to pull from.
Contact
For privacy questions, reach out via the contact page.