Skip to content
Muhammet Şafak
tr

Typing Speed Test

Measures Turkish and English typing speed honestly: CPM is the primary metric, and a code mode exercises real brackets and template syntax.

This tool runs in your browser. No data leaves your device.

Type the text exactly. Once you move past a word you can't go back to fix it; backspace is free within the current word.

History

No attempts recorded yet.

Date Mode Characters per minute (CPM) Words per minute (WPM) Accuracy Consistency

How it works

Measures typing speed across three modes: Turkish text, English text, and code. The text pool is drawn entirely from this site’s own writing and its own code — no borrowed quotes, no copyright risk, no filler dummy text.

Why CPM is primary, WPM secondary

Most typing tests talk in words per minute (WPM), and most compute WPM as characters / 5 — without ever looking at how long a word actually is. This tool computes WPM from the real word count instead: word count in the target text / elapsed minutes. The result: for someone typing at the same raw speed, WPM comes out systematically lower in Turkish — Turkish words run longer on average than English ones (agglutinative suffixes, longer compounds). That’s not a bug; it’s the tool’s own editorial point — comparing two languages by the same WPM number is misleading. That’s why the primary metric is characters per minute (CPM) — language-independent, the raw keyboard speed itself. WPM is still shown, but as a secondary reference.

Code mode

Code mode asks for a different skill than plain text: =>, &&, ${} template interpolation, balanced parens and braces, and switching between snake_case and camelCase. The samples in the pool are real excerpts from this codebase.

Keyboard layout

The pressed key is read via event.key; whatever the operating system’s keyboard layout is set to is what comes through. On both F and Q layouts, ı ğ ş İ ö ç ü work correctly with no special mapping. IME and dead-key composition are protected via compositionstart/compositionend, so Turkish diacritic sequences never produce the wrong character.

Correction rule

Backspace is free within the current word. Once you finish a word and move to the next one, you can’t go back to fix it — that mirrors real typing, and it closes off the unlimited-undo loophole that would make the test meaningless.

On mobile

On a touch device, the test area is replaced by a message saying this tool requires a physical keyboard, alongside a “Try anyway” button. The test area only opens once that button is clicked — there’s no automatic opening.

Privacy

This tool runs entirely in your browser and makes no network requests. The localStorage history list holds only the last 20 attempts — mode, CPM, WPM, accuracy percentage, consistency percentage, and date. Beyond that, each mode keeps a separate best record — CPM, accuracy percentage, and date — from attempts typed at 90% accuracy or higher, so it survives after the attempt it came from drops out of the last 20. That data is never sent to a server; it stays in your own browser, and the “Clear history” button erases both the history and that best record. There’s no leaderboard — that would require a server, which breaks the site’s “nothing leaves the browser” rule.

Search the site

Start typing to search posts, projects and pages.

Esc to close Powered by Pagefind