For a lot of programmers, having a good keyboard can significantly improve workflow. Spending countless hours typing requires a keyboard comfortable to type on, switches that feel light and responsive, and features like programmable keys. Some of our recommendations are primarily gaming keyboards, but gamers and programmers have very similar needs.
We've tested over 130 keyboards, and below are our top recommendations for the best keyboards for programming. Also, make sure to check out our recommendations for the best keyboards, the best wireless keyboards, and if you type more than you program, check out the best keyboards for writers.
The best wired keyboard for programming that we’ve tested is the Razer BlackWidow Elite. This wired-only model offers excellent typing quality, with very stable keys and good spacing between them to help reduce typos. The build quality is amazing, as it feels solid and doesn’t have too much flex to it, though the spacebar is a bit wobbly. It also has good ergonomics, thanks to the two incline settings and detachable wrist rest.
Our unit has proprietary Razer Orange switches, which provide great tactile feedback. It's also available with clicky Razer Green or linear Razer Yellow switches. All variants have full RGB backlighting with individually backlit keys, which is helpful if you work in a dark environment, and all the keys are macro-programmable. The companion software is fantastic and lets you easily customize a lot of settings to your liking.
Unfortunately, the software isn’t available on macOS and Linux, so you can't customize your keyboard on these platforms. Also, the Scroll Lock and Pause Break buttons don’t work on macOS, but all keys work as intended on Linux. That said, it's a great choice if you’re looking for a full-size programming keyboard, and it’s one of the best keyboards we’ve tested.
The best wireless keyboard for programming that we've tested is the Razer BlackWidow V3 Pro. This full-size board connects to a computer via its USB receiver or Bluetooth, and you can pair it with up to three devices at once and swap between them using the switch on the left side.
We tested it with clicky Razer Green switches, which are fairly light and provide audible tactile feedback; however, it's also available with linear Razer Yellow switches that have no feedback and are much quieter. You can customize the RGB backlighting and set macros to any key using the Razer Synapse 3 software. Also, there are dedicated media keys and a programmable volume control knob on the top right.
Unfortunately, the customization software is available on Windows only, so you can't make customizations on other operating systems. On the bright side, you can save your settings to the onboard memory, and they'll remain when you switch to macOS or Linux. All in all, if you're looking for a full-size wireless board for programming, this is an excellent option.
If you prefer a compact model, consider the Obinslab Anne Pro 2. While it doesn't have a wrist rest or any incline settings, and its customization software is harder to use than the Razer BlackWidow V3 Pro's, it's a 60% compact board that takes up less space on a desk. Also, it's available with a variety of Cherry MX, Gateron, and Kailh switches, giving you many more options. While it doesn't have a USB receiver, it can pair with up to four devices at once via Bluetooth. Unfortunately, it lacks media keys, arrow keys, and function row, which may bother some people.
If you want a full-size wireless board with a wrist rest and two incline settings, go with the Razer. However, if you're looking for a 60% compact model that will take up less space on your desk, get the Obinslab.
The best keyboard for coding with an ergonomic design that we've tested is the Kinesis Freestyle Edge RGB. This TenKeyLess model has a fully split design that allows you to position each half the way you want. Also, it comes with detachable wrist rests for both halves, and you can buy a 'Lift Kit' separately if you want to adjust the incline settings. It has good build quality, with stable keys and keycaps that feel nice to the touch.
It has hotkeys for media control, and you can remap all of its keys, whether directly on the board or using the companion software. There are also eight dedicated macro keys on the left side. Our unit uses Cherry MX Brown switches, which offer a light typing experience with subtle tactile feedback, but it's available with Cherry MX Red, Blue, or Speed Silver if you prefer. It's fully compatible with Windows and Linux, and only the 'Pause' button doesn't work on macOS.
Unfortunately, it may take you a while to get used to the split design, and the fact that there aren't any incline settings included could bother some people. You can't use it wirelessly, and it lacks some extra features like a USB passthrough or a Windows key lock. That said, it's great for programmers, and it's one of the best mechanical keyboards we've tested.
The best keyboard for programmers with dedicated macro keys we've tested is the Corsair K100 RGB. This wired-only mechanical model feels very well-built, as it's solid plastic with a metal top plate. It has doubleshot PBT keycaps that feel stable and nice to type on, and the ergonomics are good thanks to the padded wrist rest and adjustable incline setting.
The Cherry MX Speed switches on our unit feel very light and responsive, and they provide an excellent typing experience that shouldn’t cause much fatigue. The keyboard features a row of dedicated macro keys on the left side, and you can also set macros to any key you want, including the volume wheel, profile switching button, multi-function wheel, and media keys. You can customize it to your liking in the Corsair iCUE software, along with the full RGB backlighting.
Unfortunately, because the switches don't give any feedback and have very short pre-travel, it may cause you to make more typos, and even though it's also available with Corsair OPX optical switches, these are advertised to have an even shorter pre-travel distance. Also, some keys don’t work on macOS, but at least the companion software is available on it. All in all, it's the best keyboard for programmers with macro keys that we've tested.
The best keyboard for programming that we've tested in the budget category is the Razer BlackWidow Lite. This TenKeyLess mechanical model feels very well-built. It has white backlighting to help you see better in a dimmer room, and you can adjust the brightness level directly on the keyboard. Also, even though it's a wired-only model, the cable can be detached if it needs replacing or if you prefer to use your own.
It's available with tactile Razer Orange switches, which feel very light and responsive, and they provide nice tactile feedback when a key is registered. They're fairly quiet to type on, and they should be even more silent if used with the included O-rings. Although the board doesn't have dedicated macro keys, all of its keys are programmable, so you can set them to do almost any task you need.
Unfortunately, due to the keys' high profile, it might feel quite tiring to type on, especially since it has a very small incline setting and no wrist rest. Also, the companion software doesn't offer much customization other than setting macros, and it isn't compatible with macOS or Linux. Nevertheless, this is a great option for its price point, and it's among the best cheap mechanical keyboards we've tested.
Jul 12, 2021: Checked product availability and updated text for accuracy.
May 13, 2021: Added the BlackWidow V3 Pro as 'Best Wireless' and moved the Obinslab Anne Pro 2 as its compact alternative. Moved the Logitech G915 to Notable Mentions.
Mar 16, 2021: Verified that picks were still available and updated text for more clarity.
Jan 15, 2021: Removed the wireless alternative for the best full-size keyboard, the Razer Pro Type, and moved it to notable mentions. Replaced the Corsair K95 RGB PLATINUM XT by the Corsair K100 RGB as the best programming keyboard with macro keys.
Nov 17, 2020: Added the Razer Pro Type as a 'Wireless Alternative' to the SteelSeries Apex Pro, and added Obinslab Anne Pro 2 as the 'Best Compact Keyboard For Programming'. Moved ErgoDox EZ to Notable Mentions.
Our recommendations above are what we think are currently the best keyboards for programming for most people. We factor in the price, feedback from our visitors, and availability.
If you would like to do the work of choosing yourself, here is the list of all our keyboard reviews. Be careful not to get too caught up in the details. While no keyboard is perfect for every use, most are good enough to please almost everyone, and the differences are often not noticeable unless you really look for them.