5 Ways to Clean the AppData Folder in Windows

Windows 11 approved hero 3

The inner workings of the Windows operating system are a labyrinth of files and folders, each with its own specific role and significance. Among these, the AppData folder is a critical yet often overlooked, or possibly misunderstood component.

In this article, we will delve into the AppData folder in Windows, exploring its purpose, structure, and importance in the realm of the system and user data management. We’ll also offer some guidance on cleaning it up, safely!

What is the AppData folder?

The existence of the hidden folder – AppData – goes all the way back to Windows Vista in 2009! It has been included in every Windows version since, including Windows 11. This folder, which is stored in the root of every user profile under C:\Users, contains all the settings, application settings, and other information and data needed by Windows and all installed applications, mostly ‘Win32’ apps.

If you just went to find it on your system, you may have missed it, or didn’t see it – it is hidden by default. Read on to discover its inner workings and secrets.

Where is the AppData folder located? (and how to unhide it)

As I just mentioned above, the AppData folder is stored in the root of each user profile stored on the computer under the C:\Users folder. In C:\Users, there will be a folder for each username with a local profile. However, by default, the AppData folder is one of the hidden items in Windows.

The AppData folder under C:\Users
The AppData folder under C:\Users

To unhide the folder in Windows Explorer:

  • Click the View tab on the top menu, then click Options.
  • Next, click the View tab in the new window and down where it shows ‘Hidden files and folders‘, choose the ‘Show hidden files, folders, and drives‘ radio button.
How to see the AppData folder by showing Hidden folders
How to see the AppData folder by showing Hidden folders

Read on to learn more about the main components of the AppData folder.

What are the main components of the AppData folder?

There are 3 key root folders in the AppData folder:

  1. Roaming
  2. Local
  3. LocalLow

Different programs store their information in some or all of these folder trees. Let’s delve into further detail about each of these locations.

1. Roaming

The Roaming folder’s primary purpose is to store application data as part of your domain-based ‘Roaming Profile’. When a user account is configured with a roaming profile in Active Directory (AD), application data gets stored in this location. Keeping it separate like this helps Windows (and users/IT Pros) manage the policies around data retention, security, and backups.

2. Local

You’ll find ‘most’ application data here as it’s used for locally installed applications. It is never synced from computer to computer, even if you do sign in to your work computer with an AD domain account.

You’ll find most browsers store their data here like Firefox, and Google Chrome, etc. It’s essentially up to each developer if the app chooses to store its data in Local. Plus, the Outlook desktop app stores its data here, as does Microsoft Teams.

3. LocalLow

The LocalLow folder is similar to the Local folder except it is used for “lower secured” (or low integrity) applications that run with more restricted security settings. You’ll rarely need to ‘administer’ anything in this folder, mostly due to its low usage and typical data sizes.

What is the significance of the AppData folder?

Because the AppData folder stores so much critical data for so many applications, it is very significant – this is the primary reason Microsoft decided to make it a hidden folder…they don’t want anyone mucking about and messing up applications!

Let’s go into greater detail about the impact of this folder and the breadth of information types that are stored here.

What is stored in the AppData folder? (with examples)

I’ve touched on some details here already, but let me help you understand more about the different type of application data that is housed in the AppData folder!

Application data storage

This is arguably the primary case for data and file storage in AppData – your locally installed application information. Browsers store your bookmarks here, configuration files, temporary files, temporary data, preferences, etc. Your browser’s cache files are also often stored here.

User customizations

Specific application developers choose to store app customizations here, too. Microsoft Office often stores user-specific settings such as custom dictionaries, templates, and even recent files opened.

Computer games often place their customizations and data in this folder, too. This includes Microsoft Store apps and Win32-type applications.

Data separation

The organizational layout of data in the AppData folder and its subfolders is a critical concept in Windows. It ensures the organization, management, and security of application-specific data. Keeping all data separate enhances IT Pros when they need to make sure appropriate data is backed up to the cloud.

And obviously, user customization is basically built-in with separate folders for each application developer and program name.

Data protection

Technically the Roaming folder has built-in data protection – it is synced across the computers that each user logs in to. But, this is not ideal of course.

Isolating each user on a Windows system is key. This lets IT Pros and admins choose what specific folder to choose for potential backup purposes using enterprise-grade data protection software.

Another way Windows protects data is by leveling extra system-level permissions on folders like the ‘Startup’ folder – this prevents programs from storing malicious software running at startup without the user’s consent.

Profile portability

Profile portability refers to the ability to move or transfer a user’s profile, including the data within the AppData folder, from one computer to another. This helps in maintaining the user’s experience when logging on to multiple computers – a consistent one. In the context of the AppData folder in Windows, profile portability is achieved using Roaming and Local folders within AppData.

5 ways to clean the AppData folder

One of the daily or weekly issues IT Pros run into when maintaining their users’ computers is the C: drive running out of free space. Sometimes, the root cause is the AppData folder. There may be an errant application saving large amounts of data unexpectedly. Let’s look at the various methods we have to alleviate these types of issues.

Using storage in the Windows Settings app

If you’re using Windows 10 or Windows 11 (which is almost all of you!), you can utilize the Storage feature in Windows Settings to determine the storage space used by various parts of the Windows operating system, especially AppData.

  • Click Start and open Settings. Click System -> Storage.
Accessing the Storage feature in Windows Settings
Accessing the Storage feature in Windows Settings

Here you get a nice dashboard showing the local drives, how much space is being used, and the top offenders for chewing up the available storage allotments.

  • Click the ‘Show more categories‘ to get more details.
Viewing more categories of space used in Storage
Viewing more categories of space used in Storage

Here you get more details.

  • Click on any of these categories and Windows will take you another level deeper. Very helpful in pinpointing large directories!

Manually using File Explorer

The most traditional method of course the brute force – using File Explorer.

  • Browse to the location, determine folder and subfolder sizes, and delete or move files no longer needed. Let me show you.
  • I will browse to C: -> Users -> MichaelReinders -> AppData.
Viewing the 3 folders in the AppData folder
Viewing the 3 folders in the AppData folder
  • If I right-click on ‘Local‘ and click Properties, I can see how much space is used in the entire folder tree.
Viewing how much space the 'Local' folder tree consumes
Viewing how much space the ‘Local’ folder tree consumes

6.31 GB. That’s nothing, relatively speaking. This is a folder on one of my Hyper-V VMs running Windows 10 –  Azure-AD joined to my M365 Developer tenant in the cloud. I just checked my personal computer running Windows 11, which happens to be running that Hyper-V environment, and…207 GB. So, as you can see, it can be huge.

At this point, it helps to try a free directory tree sizing program like TreeSizeFree to find which folders are the largest.

Move the Roaming folder to another drive

If you’ve found that the Roaming folder is consuming too much space for your comfort, you can move the location of the Roaming folder (and its contents) to another drive or even another location on your network. I would probably advise against the latter as the end-user experience could suffer measurably if many applications need to go over the wire to function.

  • Anyway, back in the AppData folder, right-click on Roaming, and click Properties. Then, click the ‘Location‘ tab.
Modifying the location of the 'Roaming' folder
Modifying the location of the ‘Roaming’ folder

We now have the option of browsing for another location to house these files.

  • Click the ‘Move…‘ button, browse to the new location, and click ‘Select Folder.’
Changing the target for Roaming
Changing the target for Roaming

Piece of cake.

Move the Temp folder to another drive

Here’s another method – moving the location of the ‘Temp‘ environment locations. We can accomplish this with PowerShell. Let me show you.

  • First, we run these two commands to confirm the location of the TEMP and TMP environment variables in Windows, tied to my user account.

[System.Environment]::GetEnvironmentVariable(‘TEMP’, ‘User’)

[System.Environment]::GetEnvironmentVariable(‘TMP’, ‘User’)

Viewing current variable locations...
Viewing current variable locations…

So, I’ll bet you thought it would come up as C:\Windows\Temp, right? Well, that’s how things USED to work in Windows. Sometime back, they moved the environment variables to the AppData folder structure.

Interesting, huh? Actually, I imagine it was done for security and integrity reasons – the ‘C:\Windows\Temp’ folder is kind of out in the open…

Anyway, we’ll use the next few commands to make some changes.

  • First, we’ll store the new path in a variable.

$newDir = ‘c:\Temp’

  • Then, we can run this short script to add the path if it doesn’t already exist

if (!(Test-Path $newDir)) {

New-Item -ItemType Directory -Path $newTempDir -Force

}

In my case, it’s already there. So, we can run these commands to set the new variables to our new location.

[System.Environment]::SetEnvironmentVariable(‘TEMP’, $newDir, ‘User’)

[System.Environment]::SetEnvironmentVariable(‘TMP’, $newDir, ‘User’)

[System.Environment]::GetEnvironmentVariable(‘TEMP’, ‘User’)

[System.Environment]::GetEnvironmentVariable(‘TMP’, ‘User’)

Changing the TEMP and TMP variables
Changing the TEMP and TMP variables

And we’re done. Both TEMP and TMP will now point to C:\Temp. Not the most creative example, but, you get the idea.

Security considerations

It is important to note that malware and other malicious processes can use the AppData folder to store unwanted files or data. Therefore, it is imperative to verify endpoint security is up to date across all your endpoints. This location is a target for hackers and threat actors.

Additionally, you can enable Controlled Folder Access in Windows Security to protect your folders from unauthorized access by malicious software.

Conclusion

To conclude, the AppData folder in Windows plays an important role in managing application-specific data, ensuring data separation, and enhancing user privacy, with security being of utmost importance.

With the AppData folder, users can rest easy knowing their application settings and preferences are safe and protected. Meanwhile, administrators can safeguard sensitive data and uphold user privacy through stringent file permissions and encryption.

Thank you for reading. Please leave a comment or question below!