Privacy by design

Your typing data stays on your device.

Core typing analysis happens in your browser. No account or runtime third-party API is required.

What can be stored locally

When browser storage is available, KeyVelocity stores aggregated results such as WPM, raw WPM, accuracy, consistency, duration, mode, date, error counts, per-key aggregate counts and broad input category. Structured history uses versioned IndexedDB; small preferences use localStorage.

What is not stored by default

Complete custom source text is kept only in memory for the active session. The application does not upload keystroke-level information and does not add an analytics service. If a site owner later provides an optional gtag function, only coarse completion events can be sentnever full text or individual keys.

Control your data

Open Settings inside a typing test to export aggregated history, import a validated KeyVelocity export, or clear all available local data. A storage failure never prevents a basic typing test.

Hosting boundaries

This page describes the typing application itself. It does not make guarantees about infrastructure logs maintained by whichever static hosting provider you choose.