carpalx - keyboard layout optimizer - save your carpals

Carpalx optimizes keyboard layouts to create ones that require less effort and significantly reduced carpal strain!

Download keyboard layouts, or run the code yourself to explore new layouts.

X11 layouts are available! Patches to include Carpalx layouts in xkeyboard-config and kbd have been submitted by Perry Thompson. Meanwhile, many thanks to Sven Hallberg for providing X11 configuration for Carpalx layouts. Richard Gomes contributed an archive of these files for KDE/Gnome users.

Love your coworkers? Switch them to QWKRFY layout or a fully optimized QGMLWY layout.

Hate your coworkers? Switch them to TNWMLC layout. It's the only keyboard layout that has its own fashion line.

Have ideas? Tell me.

25/may/18 — The BBC article Why we can't give up this off way of typing by Tim McDonald discusses the history and persistence of QWERTY and my Carpalx work.

16/aug/16 — Ergonomic Keyboard Layout Designed for the Filipino Language at AHFE2016 derives layout for Filipino language using Carpalx

18/apr/16 — Carpalx layouts soon to appear in freedesktop (package xkeyboard-config) and kbd. Thanks to Perry Thompson.

9/sep/14 — A new layout—De Correspondent—for the Dutch language in collaboration with De Correspondent.

16/may/14 — Added evaluation of the Norman layout. This layout modifies 14/26 keys and has statistics similar to Colemak. Detailed statistics are available.

12/feb/14 — Added evaluation of the abKey layout. Its alphabetic layout makes no attempt at ergonomics. Detailed statistics are available.

Dvorak Layout

Dvorak - The Popular Alternative

Chances are you don't know anyone who types on Dvorak. This is unfortunate because Dvorak significantly reduces typing effort and the likelihood of typing-related injuries.

As the popularity of typewriters increased, with a commensurate increase in the number of typists, another layout appeared to mitigate the discomfort inherent in QWERTY. The new Dvorak layout significantly changed the face of QWERTY, placing all the vowels on home row and mapping them to each of the fingers of the left hand in the "aoeui" conformation (replaces "asdfg"). Punctuation on the Dvorak keyboard is moved from the inaccessible bottom-right hand corner of the keyboard, serviced by the inherently weak pinky on the QWERTY keyboard, to the more open top-left corner where the "qwer" keys are found. There are variety of other international and modified keyboard layouts, well described by the Dvorak Wikipedia page.

Figure 1 | The Dvorak layout is distinguished by having all vowels assigned to home row of the same hand - this increases hand-alternation. One of the most striking characteristics of Dvorak is that the comma and period is in the location of QWERTY's W and E. Meanwhile, the semicolon, serviced on QWERTY by the pinky on home row has been relegated to QWERTY's Z and replaced on Dvorak by S.

Relocating the vowels to the same hand reduces typing effort because (a) using fingers of the same hand in succession is associated with a higher effort and (b) only about 5% of adjacent letter pairs in words are both vowels (I found 210,903 adjacent vowel pairs out of 4,024,964 letter pairs in a list of 483,523 words).

The Dvorak layout is closer to the optimal English layout than you might think. Putting it another way, you may be surprised just how inefficient QWERTY is. Dvorak reduces effort by 25% over QWERTY. It has a significantly lower base effort component (related to finger travel distance), less than half of QWERTY.

For programmers, there is the Programmer Dvorak Layout, in which some of the punctuation and symbol characters have been remapped from the traditional Dvorak layout.

Dvorak - typing effort

Dvorak typing effort - english corpus
model keyboard total effortrel% effort contributionsrel%
base penalties path
mod_01 dvorak 2.098


qwerty 3.000 (+43.0)

1.00033.3 (+151.9)
1.00033.3 (+6.7)
R0.408 (+138.6)
F0.408 (-36.1)
1.00033.3 (+30.7)

However, the radical Dvorak layout is not necessary to enjoy a reduction of typing effort. By swapping 5 pairs of keys on QWERTY produces the QWKR** layouts which rival Dvorak's effort reduction. Some of the QWKR** layouts are even better than Dvorak.

Dvorak - detailed statistics

Detailed statistics for typing usage on Dvorak, when compared to QWERTY, illustrate just how different finger, row and hand utilization can be between two layouts.

First, Dvorak is very good at keeping fingers on home row - 71% of keystrokes land there (compare this with 34% for QWERTY). This alone is worth the price of admission. Dvorak bottom row usage is very low at 9% (15% for QWERTY). Dvorak favours the right hand by 14% (QWERTY favours left by 15%). Dvorak has more uniform finger usage and makes greater use of the pinky (18% vs QWERTY's 10%).

The cumulative run statistics illustrate Dvorak's strength in alternating hands. 62% of successive keystrokes on Dvorak do not use the same hand (rh(0)) and 88% of adjacent keystrokes use the same hand at most once (rh(1)). In contrast, with QWERTY only 51% of successive keystrokes do not use the same hand and only 76% use the same hand at most once. QWERTY forces the typist to use the same hand repeatedly, which limits the amount of rest and increases effort.

Dvorak's preference for the use of the right-hand give it longer right hand runs with only 47% of keystrokes that use the right hand being followed by use of the left hand (61% for QWERTY). The corresponding statistic for the left hand is reversed, with Dvorak at 76% and QWERTY at 42%.

carpalx effort optimization keyboard name statistics effort
rowh rowb hand asym finger freq cumulative run distribution mod_01
none Dvorak standard
0.71 0.09 -0.14 0.18 0.21 0.26 0.34
1 2 3 4 5 6 7 8 9
rhl 0.76 0.94 0.98 0.99 1 1 1 1 1
rhr 0.47 0.81 0.96 0.99 1 1 1 1 1
rh 0.62 0.88 0.97 0.99 1 1 1 1 1
rrt 0.80 0.97 1 1 1 1 1 1 1
rrh 0.33 0.54 0.67 0.77 0.85 0.90 0.93 0.95 0.97
rrb 0.96 1 1 1 1 1 1 1 1
rr 0.60 0.77 0.84 0.89 0.93 0.95 0.97 0.98 0.98
rf 0.93 1 1 1 1 1 1 1 1
rj 0.84 0.96 0.99 1 1 1 1 1 1
none QWERTY standard
0.34 0.15 0.15 0.10 0.21 0.27 0.42
1 2 3 4 5 6 7 8 9
rhl 0.42 0.69 0.83 0.91 0.95 0.97 0.99 0.99 1
rhr 0.61 0.83 0.94 0.98 0.99 1 1 1 1
rh 0.51 0.76 0.88 0.94 0.97 0.98 0.99 1 1
rrt 0.55 0.78 0.91 0.96 0.98 0.99 1 1 1
rrh 0.68 0.91 0.97 0.99 1 1 1 1 1
rrb 0.94 1 1 1 1 1 1 1 1
rr 0.68 0.88 0.95 0.98 0.99 1 1 1 1
rf 0.89 0.99 1 1 1 1 1 1 1
rj 0.68 0.83 0.94 0.96 0.99 0.99 1 1 1

Dvorak - word difficulty

Using the typing effort model described in Carpalx - Typing Effort, I ranked 6-12 character words by their corresponding effort (effort is normalized to word length) using a dictionary of 480,000 words (/usr/share/dict/words, Red Hat 4 Enterprise). Below is a table that shows sets of words representing effort percentiles.

average effort percentile wordeffort
7.0 hardest razzly8.2 razzle8.1 laszlo7.5 lazzaro7.4 balzac7.2 zsazsa7.2 frazzle7.1 dazzle7.1 sozzly7.1 allvar7.0 salazar7.0 sozzle7.0 lazaro6.8 zizzle6.8 lazary6.8 lazars6.8 valval6.8 lazare6.7 lallan6.7 zavalla6.7 vallar6.7 zavala6.7 valvar6.7 plazas6.6 alazor6.6
3.3 90% baleys3.3 farouk3.3 groves3.3 lasiocampa3.3 lordkin3.3 maccabaws3.3 plasticized3.3 policymaker3.3 spongillafly3.3 transflux3.3 villenage3.3
2.9 80% amylenes2.9 axiniform2.9 bankruptlike2.9 buhlwork2.9 craftsman2.9 gabardines2.9 jumbling2.9 precollude2.9 trilit2.9 unexpressly2.9 universalian2.9
2.7 70% bradycauma2.7 casimere2.7 denaturalize2.7 enervative2.7 fawcett2.7 inglobing2.7 pessaries2.7 rebored2.7 roberts2.7 rumored2.7 trancelike2.7
2.5 60% bugbears2.5 farhand2.5 flotorial2.5 fogscoffer2.5 matric2.5 micrergate2.5 oolith2.5 ostracine2.5 ostracise2.5 reillustrate2.5 washdown2.5
2.3 50% croqueted2.3 defile2.3 fiddleys2.3 fuglemanship2.3 interlocal2.3 pageboys2.3 suborder2.3 tribadism2.3 unapplauding2.3 unconvoluted2.3 unenviable2.3
2.1 40% bookers2.1 branniest2.1 castigators2.1 dannock2.1 disulphone2.1 expatriated2.1 iscariotic2.1 laurencia2.1 reguluses2.1 stiffer2.1 supersexes2.1
2.0 30% biddelian2.0 chinookan2.0 cornetists2.0 festilogies2.0 foveated2.0 kristianstad2.0 methodology2.0 minicourse2.0 rhysimeter2.0 subjected2.0 sumphish2.0
1.8 20% beeregar1.8 bodhisattva1.8 discerp1.8 enacting1.8 fedity1.8 hatchetback1.8 nonsubtle1.8 scientific1.8 tersenesses1.8 torturer1.8 yachats1.8
1.6 10% announcer1.6 autotrophy1.6 condensity1.6 currentness1.6 equation1.6 hakeems1.6 headring1.6 respondency1.6 shepherdage1.6 skeeter1.6 strother1.6
0.3 easiest teethe0.1 teethy0.2 theins0.2 teethes0.3 teuthis0.3 teethiest0.3 hettie0.3 outhue0.3 theiss0.3 huehuetl0.3 teethed0.3 theist0.3 teethier0.3 teether0.3 outheel0.3 teethers0.3 teetee0.3 unheed0.3 ethion0.3 theism0.3 teihte0.3 duetto0.3 outhear0.3 outtear0.3 unteethed0.4 hoehne0.4