What Is a Registry Value?

Values are like files in the Windows Registry

The Windows Registry is full of objects called values that contain specific instructions that Windows and applications refer to.

Many kinds of registry values exist, all of which are explained below. They include string values, binary values, DWORD (32-bit) values, QWORD (64-bit) values, multi-string values, and expandable string values.

Where Are Registry Values Located?

Registry values can be found all throughout the registry in Windows 11, Windows 10, Windows 8, Windows 7, Windows Vista, and Windows XP.

In Registry Editor are not only values but also registry keys and registry hives. The latter two objects are like folders and are seen on the left side of the Registry Editor. Registry values, then, are a bit like files that are stored inside these keys and their "subkeys."

Selecting a subkey will show all of its registry values on the right side of the Registry Editor. This is the only place in the registry where you'll see values—they aren't ever listed on the left side.

Here are just a few examples of some registry locations, with the registry value in bold:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CurrentUser

In each example, the value is the entry to the far right. Again, in Registry Editor, these entries are shown as files on the right side. Each value is held in a key, and each key originates in a registry hive (the far left folder above).

Hives, keys, values in Windows Registry Editor for Windows 10

This exact structure is maintained throughout the entire Windows Registry, without exception.

Types of Registry Values

There are several types of registry values, each created with a different purpose in mind. Some use regular letters and numbers that are easy to read and understand, while others use binary or hexadecimal to express their values.

String Value

String values are indicated by a small red icon with the letters ab on them. These are the most commonly used values in the registry, and also the most human-readable. They can contain letters, numbers, and symbols.

Here's an example of a string value:

HKEY_CURRENT_USER\Control Panel\Keyboard\KeyboardSpeed

When you open the KeyboardSpeed value at this location in the registry, you're given an integer, like 31.

In this particular example, the string value defines the rate at which a character will repeat itself when its key is held down. If you were to change the value to 0, the speed would be much slower than if it were to remain at 31.

Every string value is used for a different purpose depending on where it's located in the registry, and each will perform a particular function when defined at a different value.

For example, another string value located in the Keyboard subkey is called InitialKeyboardIndicators. Instead of choosing a number between 0 and 31, this one only accepts either a 0 or a 2, where a 0 means the NUMLOCK key will be off when your computer first starts up, while 2 makes the NUMLOCK key turn on by default.

These aren't the only types of string values in the registry. Others may point to the path of a file or folder, or serve as descriptions for system tools.

A string value is listed in Registry Editor as a REG_SZ type of registry value.

Multi-String Value

A multi-string value is similar to a string value, with the only difference being that they can contain a list of values instead of just one line.

The Disk Defragmenter tool uses the following multi-string value to define certain parameters that the service should have rights over:


Opening this value shows that it contains all the following string values:


Not all multi-string values have more than one entry. Some function the exact same way as single string values, but have the additional space for more entries if they need it.

Registry Editor lists multi-string values as REG_MULTI_SZ types of registry values.

Expandable String Value

An expandable string value is just like the string value from above, except that they contain variables. When these types of registry values are called upon by Windows or other programs, their values are expanded out to what the variable defines.

Most expandable string values are easily identified in Registry Editor because their values contain % signs.

Environment variables are good examples of expandable string values:


The TMP expandable string value is %USERPROFILE%\AppData\Local\Temp. The benefit to this type of registry value is that the data doesn't need to contain the username of the user because it uses the %USERPROFILE% variable.

When Windows or another application calls this TMP value, it gets translated to whatever that variable is set to. By default, Windows uses this variable to reveal a path like C:\Users\Tim\AppData\Local\Temp.

REG_EXPAND_SZ is the type of registry value that Registry Editor lists expandable string values as.

Binary Value

As the name suggests, these types of registry values are written in binary. Their icons in Registry Editor are blue with ones and zeros.

HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics\CaptionFont

The above path is found in the registry, with CaptionFont being the binary value. In this example, opening this value shows the font name for captions in Windows, but its data is written in binary instead of in a regular, human-readable form.

Registry Editor lists REG_BINARY as the type of registry value for binary values.

DWORD (32-bit) Values & QWORD (64-bit) Values

Both DWORD (32-bit) values and QWORD (64-bit) values have a blue icon in the Windows Registry. Their values can be expressed in either decimal or hexadecimal format.

The reason one application may create a DWORD (32-bit) value and another a QWORD (64-bit) value rests not on whether it's running from a 32-bit or 64-bit version of Windows, but instead solely on the bit length of the value. This means that you can have both types of registry values on both 32-bit and 64-bit operating systems.

In this context, a "word" means 16 bits. DWORD, then, means "double-word," or 32 bits (16 X 2). Following this logic, QWORD means "quad-word," or 64 bits (16 X 4).

An application will create the proper registry value that it needs to comply with these bit length rules.

The following is one example of a DWORD (32-bit) value in Windows Registry:

HKEY_CURRENT_USER\Control Panel\Personalization\Desktop Slideshow\Interval

Opening this DWORD (32-bit) value will likely show a value data of 1800000 (and 1b7740 in hexadecimal). This registry value defines how fast (in milliseconds) your screensaver moves through each slide in a photo slideshow.

Registry Editor shows DWORD (32-bit) values and QWORD (64-bit) values as REG_DWORD and REG_QWORD types of registry values, respectively.

Backing Up & Restoring Registry Values

It doesn't matter if you're changing even just one value, always make a backup before you start, just to be sure that you can restore it back to Registry Editor in case something unexpected happens.

Unfortunately, you can't back up individual registry values. Instead, you must make a backup of the registry key that the value is in. See our article on how to back up the Windows Registry if you need help doing this.

A registry backup is saved as a REG file, which you can then restore back to the Windows Registry if you need to undo the changes you made.

When Would I Need to Open/Edit Registry Values?

Creating new registry values, or deleting/editing existing ones, can solve a problem you're having in Windows or with another program. You might also change registry values to tweak program settings or disable an application's features.

For example, you can create a specific registry value to install Windows 11 if it doesn't support your processor, or to change the Windows 11 taskbar size.

Sometimes, you'll need to open registry values simply for information purposes.

Here are a few examples that involve editing or opening registry values:

More Information on Registry Values

Opening a registry value will let you edit its data. Unlike files on your computer which will actually do something when you launch them, registry values simply open for you to edit them. In other words, it's completely safe to open any registry value in the Windows Registry. However, editing values without first knowing what you're doing, is a bad idea.

There are some circumstances where changing a registry value won't take effect until you reboot your computer. Others don't require a restart at all, so their changes will be reflected instantly. Because Registry Editor doesn't tell you which ones require a reboot, you should restart your computer if a registry edit doesn't seem to be working.

You may see some registry values listed as REG_NONE. These are binary values that are created when empty data is written to the registry. Opening this type of value shows its value data as zeros in hexadecimal format, and Registry Editor lists these as a (zero-length binary value).

Using Command Prompt, you can delete and add registry keys with the reg delete and reg add command switches.

The maximum size for all registry values within a registry key is limited to 64 kilobytes.

Was this page helpful?