Where Does VIA Store Keymaps?
VIA keeps keymaps as JSON files you save yourself, with drafts in browser storage for the web app. Flash QMK firmware separately; VIA only remaps.
Last updated
VIA splits keyboard config in two. The live map sits in the keyboard EEPROM, edited in real time by the app. The portable copy is a JSON file you save and load yourself, since VIA never writes one unprompted.
The web app keeps drafts in browser local storage, which evaporates with cache clears and profile wipes. The desktop builds add an app-data folder but the rule holds: no saved JSON, no backup. Authorize the device on first connect, then save after every real change, and name files per board revision.
Where VIA Configurator stores this, by platform
%appdata%\VIA\
Live map in keyboard EEPROM; portable copies are saved JSON files. Exact cache paths may vary by version. Save JSON after every change; browser drafts are disposable.
~/Library/Application Support/VIA/
Same JSON save-and-load model as Windows. Browser drafts live in site storage. Keep one JSON per board revision to avoid silent mismatches.
~/.config/VIA/
Same split as other platforms. Udev rules may be needed for device access; the JSON backup habit stays identical.
Frequently asked questions
How do I back up my VIA keymap?
Design the map in VIA, then use Save to download the JSON. Load it back with the Load button on any machine. Browser drafts vanish with cache clears, so the JSON file is the only durable copy worth keeping.
Does VIA replace flashing?
Yes for remapping, macros, and lighting on supported boards. VIA edits the live EEPROM map without reflashing firmware. Layout-level changes like new keys still need a QMK rebuild and flash outside VIA.
Notice an outdated path? Let us know.