Why people keep building the same keyboard layouts over and over
I have spent more hours than I want to admit fighting with key assignments that looked fine on paper until I actually tried to type on them. The core issue most people run into is not finding a planner tool. It is picking one that matches the actual firmware you are using and knowing what data the tool exports to you. A bad planner just gives you a visual that looks correct while producing code that does not compile on your controller. I learned that the hard way with a custom split I was building for an Elite-C board running QMK. The planner showed a column-staggered layout, but when I flashed it the home row keys were shifted two positions left because the planner was exporting raw matrix rows without accounting for the stagger offset parameter in my keymap.c file. Here is the list most people end up using, ranked by what actually matters rather than what gets the most YouTube views. 1. kbd.so - QMK/VIA Planner
This is the default recommendation and it stays there for good reason. It exports directly to QMK keymap.c or VIA JSON. The stagger editor is accurate for standard ortho, column, and matrix layouts. It handles split builds where you define left and right halves separately. The main limitation is that it does not support TKL or full-size ANSI/ISO well. The row spacing for those form factors feels arbitrary in the editor and I have seen people spend ten minutes tweaking it only to get the wrong macro pad output anyway. If you need a standard 1800 layout with numpad and arrow cluster, use this only for the base columns and then paste the output into your IDE to fix the offset manually. 2. Hexcorners Hexagonal layouts are niche. Hexcorners is the only planner that actually renders hex grid math correctly. Most other tools approximate it and your resulting keycaps will not match what the software shows you. Hexcorners exports QMK code, but the layer organization it produces is flat. Every key sits on layer zero unless you manually assign tap/hold functions in your keymap editor afterward. I use this for a 39-key hex build that runs Wooting analog triggers. The export had incorrect column mapping on the left half. The workaround was to swap the KC_NO placeholders between columns 2 and 3 in the generated C file before flashing.
3. KLE (Keyboard Layout Editor) KLE is not a code exporter. It is a visualization tool. People confuse the two constantly. KLE produces SVG and PNG files for sharing your layout on Reddit or Discord, but it does not generate QMK or ZMK code. If you need something you can flash immediately, KLE alone will waste your time. Use it after you have a working planner setup to show others what your board looks like. The coordinate system is pixel-based and round numbers to the nearest millimeter. That rounding error compounds on larger boards. On a 65% layout it is invisible. On a 98-key ergonomic split with column stagger it becomes noticeable after the sixth row. 4. ZMK Studio for ZMK-compatible keyboards
Get the Full Details

ZMK is gaining traction for Bluetooth-enabled keyboards and the official studio planner has improved significantly in the last year. It exports YAML config files rather than C code. The YAML format is less forgiving than QMK if you make a syntax error. One missing colon breaks the entire build pipeline. I have a rule now: always validate your YAML through the online validator at zmk.dev before attempting to flash anything. The planner does not catch invalid modifier combinations. You can assign KC_LSFT inside a hold-tap parameter and the planner will happily show it as valid until the compiler rejects it during CI build. 5. KBD75 Config Tool by QMK This is a browser-based tool tied to the preconfigured QMK keyboards. It does not support custom layouts or non-standard PCBs. It is useful for people who bought a KBD75 or a similar supported board and want to reassign keys without touching source code at all. The tradeoff is that you are locked into whatever the manufacturer preset. You cannot add combos or redefine mod-tap behavior through this tool. It saves maybe five minutes for a simple swap and costs you every advanced customization option.
6. PBT Keycap Planner This is a different category entirely. It helps you plan keycap profile and color schemes rather than electrical layouts. Several people on forums use the word planner for both and get confused when their keycap order arrives mismatched. PBT planners are useful if you are buying from Massdrop or Drop exclusively. They do not integrate with any firmware exporter. Use it standalone alongside a real keyboard layout tool. 7. ErgoBreak Customizer
Focused on ergonomic split layouts with palm rests and collet angles. It has a decent visualizer but the export is limited to QRK firmware, which is a niche fork of QMK. If you are not building a QRK-specific board this tool adds complexity without benefit. I tried it once for a split65 project and spent more time reading the QRK documentation than actually laying out keys. The layout preview renders at a lower resolution than kbd.so and does not show actuation depth differences between switch types. That matters if you are mixing linear and tactile switches on the same board. 8. KPrepublic Planner Browser-based, decent for beginners, but the stagger presets are generic. They do not account for actual manufacturer dimensions. A preset called "standard" might match a 1.5U spacebar on one PCB and a 2.25U on another. The export format is CSV. You then have to manually convert that CSV into keymap.c structure. I converted it once and missed a semicolon in row 12 which caused the compiler to fail silently and produce a binary with the wrong key on position 6,2. It typed E instead of R for three days before I caught it by reading the compiled output line by line.

9. KMacros.net Keyboard Builder This one is aimed at people who want macro-heavy keyboards for productivity or gaming. It has a built-in macro assignment panel. The macro engine it generates is basic. It does not support chained macros or multi-key sequences that fire on press-and-hold. If you need complex automation the exported layout will disappoint you quickly. It does handle simple layer toggles and media key overrides decently though. The interface is ad-supported and loads slowly on older hardware. That is a minor inconvenience but it adds up if you are iterating your layout twenty times in an afternoon. 10. OpenKBD Layout Designer
An open source option hosted on GitHub. It is functional but documentation is sparse. The export only supports QMK with strict naming conventions. Any non-standard keycodes you add will cause compilation failures and there is no error hint beyond a generic compiler message. I recommend this only if you are comfortable reading QMK source code and understand how keycodes map to enum values in qmk_platform.h. For most users the first four options on this list cover every practical need.
What nobody tells you about keyboard planners
The biggest mistake I see is assuming the planner output is production ready. It is a starting point. Real hardware has constraints the software cannot model. Switch plate thickness changes actuation feel. PCB trace resistance varies between batches. A planner cannot account for those variables. You will get a layout that works in simulation and feels wrong on the actual board. The fix is always to test with a breadboard first before soldering anything permanent. I once sent a full order of 40 keycaps based on a planner that did not match my final PCB hole pattern. The caps sat unused for six months while I debugged the electrical issues. That cost me roughly $120 in wasted keycap orders and another week of lost productivity. Another thing people miss is the difference between physical layout and logical layout. The planner shows both but most users only adjust the physical stagger. The logical layer mapping stays at its default until they dig into keymap.c or the YAML config. A physically correct layout with wrong logical assignments produces keys that print the wrong character even though the positioning feels right. This is why I always review the exported keymap text before flashing. Ten minutes of reading beats three days of frustration. If you are building a keyboard that requires low latency or Bluetooth audio coexistence, stick with ZMK Studio and validate every export. For wired boards running QMK the kbd.so planner remains the most reliable option. The rest are situational. Nothing here replaces testing on actual hardware. Software planning gets you to the starting line. The board decides whether you cross the finish line.
