Home › Everyday Life › Typing Speed Calculator
Typing Speed Calculator
Computes gross words per minute from characters typed (one word = 5 characters) or from a word count, then net WPM after penalising uncorrected errors, plus accuracy and characters per minute.
When to use
You timed a typing test and know the characters or words typed, the time and the number of errors, and want standard WPM figures.
Do not use when: You need reading speed (use reading-time) or the test software already reports WPM under its own error rules.
Formula
words = characters / 5; gross_wpm = words / minutes; net_wpm = gross_wpm − errors / minutes; accuracy = (characters − errors) / characters × 100; cpm = characters / minutes
The 5-character 'standard word' (including spaces and punctuation) is the usual convention in typing tests and text-entry research, so WPM is independent of actual word length.
Inputs
| Parameter | Type | Unit | Required | Description |
|---|---|---|---|---|
characters_typed | integer | no | Total characters typed including spaces and punctuation. Takes precedence over words_typed when both are given. Range: ≥ 1, ≤ 10000000 | |
words_typed | number | no | Alternative to characters_typed: number of words (converted at 5 characters per word). Range: ≥ 0, ≤ 2000000 | |
minutes | number | min | yes | Duration of the test in minutes (e.g. 0.5 for 30 seconds). Range: > 0, ≤ 1440 |
errors | integer | default 0 | Number of wrong characters left in the final text. Range: ≥ 0, ≤ 10000000 |
Outputs
| Output | Type | Unit | Description |
|---|---|---|---|
gross_wpm | number | wpm | (characters / 5) / minutes, errors ignored. |
net_wpm | number | wpm | gross_wpm − errors / minutes (each error costs one word). |
accuracy_percent | number | % | (characters − errors) / characters × 100. |
cpm | number | cpm | characters / minutes. |
words_equivalent | number | words | characters / 5. |
Example
1500 characters in 5 minutes with 10 errors: {"characters_typed":1500,"minutes":5,"errors":10} → {"gross_wpm":60,"net_wpm":58,"accuracy_percent":99.33,"cpm":300,"words_equivalent":300}
120 words in 3 minutes with 4 errors: {"words_typed":120,"minutes":3,"errors":4} → {"gross_wpm":40,"net_wpm":38.7,"accuracy_percent":99.33,"cpm":200,"words_equivalent":120}
GET https://tttkmbb.com/api/v1/calculate/typing-speed?characters_typed=1500&minutes=5&errors=10
Machine access
- API:
GET https://tttkmbb.com/api/v1/calculate/typing-speed(query parameters) orPOSTwith a JSON body{"inputs": {...}} - Schema: https://tttkmbb.com/api/v1/calculators/typing-speed · Markdown: https://tttkmbb.com/everyday/typing-speed.md · JSON definition: https://tttkmbb.com/everyday/typing-speed.json
- MCP: server
https://tttkmbb.com/mcp, toolrun_calculator with calculator_id="typing-speed" - OpenAPI operationId:
calculate_typing_speed - Freshness:
static. Authentication: none. Rate limit: fair use (see rate limits).
Sources
FAQ
What is a typical typing speed?
Around 40 wpm for average computer users and 50–60 wpm in large online samples (Dhakal et al. 2018); professional typists reach 70–100+ wpm.
Do corrected mistakes count as errors?
No. Only errors left in the final text are penalised; corrections already cost time and therefore lower the gross speed.
Related calculators
- Reading Time Calculator — Reading speed in words per minute.