Ask Different is a question and answer site for power users of Apple hardware and software. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I know how to set the key repeat rate using System Preferences > Keyboard but it looks that the fastest settings is not enough.

Is there any way to speed up even more?

I do not know if others encountered the same issue, but I'm using a MacBook Pro, model 2010.

share|improve this question
up vote 55 down vote accepted

You can also change the preference keys directly:

defaults write -g InitialKeyRepeat -int 10 # normal minimum is 15 (225 ms)
defaults write -g KeyRepeat -int 1 # normal minimum is 2 (30 ms)

The changes aren't applied until you log out and back in. KeyRepeat can't be set between 2 (30 ms) and 1 (15 ms) though.

I also use KeyRemap4MacBook. I've set the repeat rates to 40 ms and the initial repeat rates to 150 ms.

share|improve this answer
I can't believe it took me so long to look for the answer. This is amazing. Also, I did not have to log out and back in with Yosemite. – SgtPooki Jan 15 at 0:35
This answer worked for me. Note that 10 is very fast. I found 12 similar to what I use in Windows. – sdgfsdh May 27 at 9:18
Regretting the wasted time of a decade. 😂 – itsneo May 31 at 4:20

I just discovered that I had KeyRemap4MacBook installed and inside this application you have lots of low level settings for key repeat.

Now I'm happy with 400ms initial repeat time and 20ms reteat wait.

share|improve this answer
I have the same problem on OSX Lion on an iMac: the max repeat speed in System Preferences > Keyboard is insufficient (I use vim where fast repeated keystrokes really speed up navigation - but the faster speed is also useful in browsers). Thx for the KeyRemap4MacBook tip - works great. – kfmfe04 Jan 24 '12 at 12:08
This app has been renamed Karabiner and the options for Key Repeat are currently in the top row of tabs under "Key Repeat" between "Change Key" and "Status Message". Works great, was able to reduce it too far and bump it back up to sanity. – here Sep 15 '14 at 17:53

Old post, but this may help someone: If you are using the "Karabiner app" ( which is a third party app commonly used to remap keys (or make OS X keyboard mimic some of Windows keyboards behaviors) it will bypass your OS X configurations.

If you are using it, to increase your keyboard rate you should go to the app and on the second tab ("Key Repeat") you'll find the option Repeat Rate. Changing that will render immediate effect and, as far as I can tell, it's the only way to get the repeat rate changed when using this app.

share|improve this answer
FYI: KeyRemap4MacBook was renamed to Karabiner – The Doctor What Sep 22 '15 at 20:12

@user495470's answer is great for native apps, but for whatever reason, it appears to have messed up key repeat for me in XQuartz windows. To work around the issue, I initially ran this in the terminal:

xset r rate <initial wait> <number of repeated strokes per second>

Leaving off the last 2 arguments will reset the system defaults.

I read that you have to run this command every time you run XQuartz anew, but when I put it in my login script, it caused the system to hang on shutdown (until I killed the hung xset commands) and on startup, so I discovered that a better way to change the key repeat setting is to first disable the little bubble menu that appears above a typed character upon press & hold, e.g. hold down the a key and you are presented with a bubble containing alternate 'a' characters with various umlauts, accents, etc..:

defaults write -g ApplePressAndHoldEnabled -bool false

Then run the key repeat commands:

defaults write -g InitialKeyRepeat -int 10 # normal minimum is 15 (225 ms)
defaults write -g KeyRepeat -int 1 # normal minimum is 2 (30 ms)

If you do it this way, key repeats will work in XQuartz windows without needing to run xset r # #.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.