Frequently asked questions
What does WriteTrack capture?
WriteTrack captures behavioral signals from typing sessions: keystroke timing (dwell time, flight time), rhythm patterns, correction behavior (backspaces, deletions), clipboard events (paste, copy, cut), text selections, and undo/redo operations. All data stays in the browser.
Does WriteTrack send data to external servers?
No. WriteTrack runs entirely client-side. Keystroke data stays in the browser unless you explicitly send it soewhere. Since no data touches our servers, there's less to worry about from a data protection standpoint – but compliance depends on how you handle the data downstream.
What inputs does WriteTrack support?
WriteTrack works with any text input element: standard inputs, textareas, and contenteditable elements. It's framework-agnostic—use it with vanilla JavaScript, React, Vue, Svelte, or any other framework.
How much typing data is needed for meaningful analysis?
WriteTrack reports a session quality indicator. Sessions with fewer than 10 keystrokes are rated POOR, 10-30 is FAIR, 30-100 is GOOD, and over 100 keystrokes is EXCELLENT. More data means richer behavioral features.
What behavioral features are extracted?
WriteTrack extracts over 100 features including timing statistics, rhythm consistency, fatigue progression, typing rhythm, pause patterns, hand alternation rate, space bar and shift key patterns, clipboard usage ratios, and edit sequence patterns.
What's the performance impact?
Minimal. WriteTrack adds less than 1ms overhead per keystroke and the SDK is ~118KB gzipped. It uses efficient event listeners and doesn't perform heavy computation until you request features.
Do I need a license for development?
No. The SDK runs in evaluation mode on localhost with full analysis enabled. You only need a Pro license when deploying to a production domain.
How does domain licensing work?
Each Pro license is tied to a single domain. The SDK validates the license at initialization. For multiple domains or subdomains, contact us for volume pricing.