What Is the Windows Registry?
The Windows Registry is a hierarchical database that stores low-level configuration settings for the Windows operating system and the applications that opt to use it. It replaced the scattered INI files of early Windows with one central, tree-structured store that the kernel, drivers, services, and the user interface read at startup and during operation.
What Is the Windows Registry?
The Windows Registry is a central hierarchical database that stores configuration settings for Windows and installed software:
- Tree structure: data is organised like folders and files – keys and subkeys (the folders) hold values (the data).
- Who uses it: Windows components, device drivers, services, and applications all read and write Registry values to store their settings.
- History: introduced with Windows 3.1 (1992) to replace per-app INI files, then expanded across every later version.
In short, the Registry is the single place Windows looks to learn how it and its software should behave.
What Is the Structure of the Windows Registry?
The Registry uses a tree built from hives, keys, subkeys, and values:
- Hives: the top-level branches, each backed by one or more files in the system directory.
- Keys: containers within a hive that group related settings, like folders.
- Subkeys: keys nested inside other keys, creating deeper organisation.
- Values: the entries inside a key – each has a name, a data type, and data; every key also has a
(Default)value.
What Are the Registry Hives?
The Registry has five root hives, with HKEY_LOCAL_MACHINE and HKEY_CURRENT_USER as the two you touch most. Each holds a distinct category of settings:
HKEY_LOCAL_MACHINE (HKLM)
HKEY_CURRENT_USER (HKCU)
HKEY_USERS (HKU)
HKEY_CLASSES_ROOT (HKCR)
HKEY_CURRENT_CONFIG (HKCC)
Only HKLM and HKU are real hives stored on disk; HKCR, HKCU, and HKCC are merged or linked views built from them at runtime.
What Data Types Does the Registry Use?
The Registry stores each value in a defined data type that tells Windows how to read it:

- REG_SZ: a fixed-length text string – paths, names, and short text. The type you edit most.
- REG_DWORD: a 32-bit number – integer settings and boolean (0/1) flags for drivers and services.
- REG_BINARY: raw binary data – much hardware and driver information.
- REG_EXPAND_SZ: a string holding environment variables (such as %SystemRoot%) that Windows expands when the value is used.
- REG_MULTI_SZ: an array of null-terminated strings, used for lists; REG_QWORD adds a 64-bit number.
Best for everyday edits: REG_SZ for text and REG_DWORD for numbers cover almost everything a user changes.
What Does the Windows Registry Store?
The Registry stores OS settings, hardware and driver configuration, user profiles, file associations, and application preferences:
- Operating system: startup configuration, installed-program lists, and service and driver definitions.
- Per application: license data, recent-file lists, window layouts, and user options in each program’s own keys.
- File associations: which program opens each file extension, so a double-click launches the right app.
In short, anything the system or an app must remember between sessions can live here instead of in a loose config file.
How Do Windows and Applications Use the Registry?
Windows and applications use the Registry by reading configuration at startup and writing updated settings during operation:
- At boot: the kernel and the Service Control Manager read the Registry to decide which drivers and services to load.
- At launch: an installed program queries its keys to restore the user’s settings each time it opens.
- On change: when a user adjusts a setting, the app writes the new value back so it persists across sessions.
The Registry is therefore both the source of truth at startup and the place changes are saved as you work.
Where Are the Registry Files Stored?
The Registry lives in a set of hive files inside the system directory, not in one visible file:
- Machine hives: SYSTEM, SOFTWARE, SAM, and SECURITY sit in
C:\Windows\System32\configand back HKEY_LOCAL_MACHINE. - User hive:
NTUSER.DATsits in each profile folder underC:\Usersand backs HKEY_CURRENT_USER. - Loaded in memory: the files load at startup and Windows writes changes back to them during operation.
- Locked while running: you cannot edit the hive files directly – the OS locks them, so you go through regedit instead.
What Is the Registry Editor (regedit)?
The Registry Editor, launched with regedit, is the built-in Windows tool for viewing and modifying Registry keys and values:
- Open it: press Win+R, type
regedit, press Enter, and accept the UAC prompt (administrator rights required). - Two panes: the hive tree on the left, the values of the selected key on the right.
- Why use it: advanced users and administrators edit keys to change settings that no graphical option exposes.
- Safer route: a reviewed
.regfile merges changes on a double-click and is easier to check than free-hand edits – useful when following any Windows maintenance guide.
Why Should You Back Up the Registry Before Editing?
Backing up first protects the system because an incorrect change can stop Windows from booting – the Registry controls critical startup and driver settings, so one deleted or wrong value can break them. Take these steps before any edit:
- Export the target key. Right-click the key in regedit, choose Export, and save a
.regfile – double-clicking it later restores that branch. - Export everything (optional). File -> Export -> Export range: All saves the whole Registry to one
.regfile. - Create a System Restore point. This captures the Registry with the system state so you can roll back even if Windows will not boot.
- Record the original values. Note each value’s name, type, and data before changing it, so you can revert by hand if needed.
- Edit only what is required. Change the one key you came for; unrelated edits multiply the risk of failure.
How Do You Back Up and Restore the Windows Registry?
The Registry is backed up by exporting keys to a .reg file or creating a System Restore point, and restored by re-importing that file or rolling back the point:

- Export: File -> Export saves a selected key (or the entire Registry) as a
.regfile you can re-import to reverse an edit. - Restore a branch: double-click a saved
.regfile to merge its values back in and undo a change. - Restore the system: a System Restore point rolls the Registry back alongside system files after an unstable change.
- If it will not boot: start in Safe Mode (or use Last Known Good Configuration) and then restore the exported key or restore point.
What Are Common Windows Registry Problems?
Common Registry problems are orphaned entries, incorrect values from bad edits, and permission errors that block a key:
- Orphaned entries: leftover keys from uninstalled programs – they rarely affect performance noticeably, despite what registry-cleaner tools claim.
- Bad edits: a wrong data type or value can break a feature or stop the system from booting – the reason backups matter.
- Permission errors: a locked-down key denies access until ownership or permissions are changed.
- Malware: hostile software adds startup keys to launch itself, which makes the Registry a target during a malware scan and removal.
Last Thoughts on the Windows Registry
The Windows Registry is the central database that defines how Windows and its applications behave, from driver loading at startup to per-user desktop preferences. Its tree of hives, keys, and typed values lets the OS and software store and retrieve settings from one organised place, and regedit exposes that database for direct changes.
The catch is that the same reach over boot and driver settings makes a backup essential before any edit. Once you understand the structure, the five hives, and the data types, the Registry stops being a black box – and you can compare how other systems handle configuration across Windows, macOS, and Linux or read the detail in the guide to Windows versions.
Key Takeaways:
- The Windows Registry is a central hierarchical database that stores low-level settings for Windows and applications.
- It is organised as a tree of hives, keys, subkeys, and values; only HKLM and HKU are stored on disk.
- HKEY_LOCAL_MACHINE holds machine-wide settings and HKEY_CURRENT_USER holds the signed-in user’s settings.
- Values use data types – REG_SZ for text and REG_DWORD for 32-bit numbers are the ones you edit most.
- Editing is risky: always export the key and create a System Restore point before changing anything.
Frequently Asked Questions (FAQs)
What is the Windows Registry used for?
The Windows Registry stores configuration settings for Windows and installed software. Windows reads the Registry at startup and during operation to load drivers, services, user profiles, and application options.
Is it safe to edit the Windows Registry?
Editing the Windows Registry is safe when done carefully with a backup. An incorrect change can stop Windows from booting, so exporting the key and creating a restore point first is required.
What is the difference between HKEY_LOCAL_MACHINE and HKEY_CURRENT_USER?
HKEY_LOCAL_MACHINE stores settings for the entire computer and all users. HKEY_CURRENT_USER stores settings for the user currently signed in, such as desktop and application preferences.
How do you open the Registry Editor?
Open the Registry Editor by typing regedit in the Start menu or Run dialog and pressing Enter. Administrator permission is required to launch the Registry Editor.
What is a Registry hive?
A Registry hive is a top-level section of the Registry backed by files on disk. The five root hives include HKEY_LOCAL_MACHINE and HKEY_CURRENT_USER.
Can a wrong Registry edit break Windows?
A wrong Registry edit can break Windows by changing critical startup or driver values. Backing up the key and creating a System Restore point before editing prevents permanent damage.


