What is "%AppData%"?

Solution 1:

%WORD% is how cmd.exe, and Windows in general, does variables, so %AppData% is the variable name for the Application Data directory.

$ echo The value of ^%AppData^% is %AppData%
   The value of %AppData% is C:\Users\USERNAME\AppData\Roaming

Solution 2:

%AppData% is a hidden folder in Windows 7. It is to protect user data and settings from any unwanted change or deletion. It contains many important data such as: program settings, IE cookies, IE browsing history, temporary files created by applications, etc.

%LocalAppData% this is %USERPROFILE%\AppData\Local. For example: C:\Users\<Username>\AppData\Local.

See also (KNOWNFOLDERID) from MSDN.

Solution 3:

Like the others have said, the % symbols around %AppData% indicate it is an environmental variable.

These two are predefined paths that vary by Windows edition.

From Vista onward, %AppData% points to %UserProfile%/AppData/Roaming (I think you can guess what %UserProfile% is, or just test it out for your self in Explorer). This folder contains user specific, program related data, or even the programs themselves.

The items in here should roam with the user to different machines. How profiles roam was more apparent to users in a Domain environment who used the same credentials on different company machines. But now that Windows 8 utilizes the cloud and a Microsoft Account for login, this feature should become more apparent to users with multiple machines.

I'm not sure this folder is always used correctly. Google Chrome, for example, will store gigabytes of data in it. Other programs might use it to store items like MyLayoutSettings.cfg, to have some consistency among settings across to different machines. I think this is a more "correct" way to use the folder.

%LocalAppData% (%UserProfile%/AppData/Local) is used for user-specific items that should not roam with the user, either because they only pertain to that particular machine, or because they are too large. For a good example of how this location can be used, take a look at %LocalAppData%/Temp.

Solution 4:

The AppData\Local and AppData\Roaming locations are the preferred locations for applications to store data that is not required to be exposed to the user. In a domain environment, the Roaming is used to copy the user's environment as they log on to different computers.

You can find a description in the Windows File System Namespace Usage Guidelines.

Solution 5:

As other answers have mentioned, AppData is a hidden Windows folder typically used by programs to store data and settings. While this is true, it's not the folder's only use.

While traditionally most Windows programs install to Program Files, some will install to %AppData% instead. This includes apps like Gitter Discord, f.lux, and yes, GitHub Desktop for Windows.

This is usually because, unlike Program Files, an app can install to AppData without administrator privileges, since the folder is not shared among multiple users.