SQL typing test

SQL is the one language where you type capital letters on purpose. Half a query is shift work.

0 wpm100% acc0/121
SELECT user_id, COUNT(*) AS orders
FROM purchases
WHERE created_at >= '2026-01-01'
GROUP BY user_id
ORDER BY orders DESC;

SQL is a shift-heavy language

Most languages are lowercase with punctuation on top. SQL, by convention, is uppercase keywords with lowercase identifiers, which means your left pinky is holding shift for roughly a third of every query.

That constant toggling is why experienced developers still mistype column names in a query they have written a hundred times. The problem is not knowledge, it is the cost of switching case every few characters.

The expensive characters

  • Keywords in capitals — SELECT, FROM, WHERE and GROUP BY keep your pinky in constant motion.
  • Asterisks in SELECT statements — shift plus eight, on a finger that rarely does anything else.
  • Single quotes around string literals — a pinky reach that has to happen twice per value.
  • Underscores in column names — the most common character in a real schema and the least practised.
  • Commas and semicolons — cheap individually, expensive when one is missing and the query runs for a minute before failing.

Short text, high stakes

A query is short compared with a paragraph of prose, so SQL scores tend to sit lower than English but not as low as JavaScript: there are fewer brackets, but more case switching. Between 35 and 55 WPM is a normal working range.

Practise the queries you write in real life. Joins, aggregations and date filters are where the punctuation actually concentrates, and they are also where a typo costs you the most.

Compare with another language

Questions

What is a good SQL typing speed?

Around 35 to 55 WPM on queries is a normal working pace. SQL runs shorter than prose and switches case constantly, so the number is naturally lower than your English score.

Does capitalisation actually matter in SQL?

In most dialects keywords are case-insensitive, so lowercase select works exactly as well as SELECT. Uppercase is a convention that makes queries readable, and this test follows it because the shift work is part of the skill being measured.

Which SQL features do the snippets cover?

Joins, grouping and aggregation, date filtering, index creation and array or JSON-style predicates. The aim is the sentence shapes you write during actual work, not trivia.

Why are all the keywords in capitals if that slows me down?

Because that is what you will read and write in a real codebase. Practising a lowercase version would give you a faster score that predicts nothing about how you type at work.

Last updated 2026-11-11. Written by the GeekType team.