Trying to find the files of a Windows game when you're running it through Proton can be a little confusing - here's how to get there on SteamOS / Linux.
What's the problem? Not only is the Linux file-system very different to Windows, but Proton files are buried deep within the dark depths of many Steam folders. Thankfully, once you get to grips with it (and you hopefully will with this guide) it will all start to make something resembling sense.
When Steam runs a Windows game through Proton, it creates a separate Windows-like environment for it called a Proton prefix. Inside you'll find a faked C: drive, AppData, Windows registry files and many of the other things the game expects and needs to see on a Windows PC.
Here's how to find them.
Where does Steam keep Proton files?
With a normal Steam installation on Linux, Proton prefixes are usually stored here:
~/.local/share/Steam/steamapps/compatdata/
Open that folder and you'll probably be greeted by a collection of wonderfully descriptive folders such as:
1245620 669330 2357570
Very descriptive and helpful, thank you Steam.
Jokes aside, those numbers are actually Steam App IDs, with each folder belonging to a particular game.
How to find a game's Steam App ID?
Take for example, the game ELDEN RING with the full Steam store URL being this:
https://store.steampowered.com/app/1245620/ELDEN_RING/
The Steam APP ID is right there in the URL: 1245620
So its Proton files should be found under:
~/.local/share/Steam/steamapps/compatdata/1245620/
Once you know the App ID, those mysterious numbered folders suddenly become considerably less mysterious.
You can also find the APP ID right in your Steam Library in the Properties -> Updates menu:

How to find a non-Steam game's App ID?
Did you add an external game to Steam as a non-Steam game? There's good and bad news here. The good news is you can find it in the same place; the bad news is that Steam will assign it a totally random long ID. Once again, very helpful from Steam.
Just a bit of extra hunting is required here. It will be in the same location as above, but you'll have to look for a much longer ID. If you added it recently, you can just get your File Manager like Dolphin to sort the folders by the Created or Modified date to find the latest one.
Finding the game's faked Windows C: drive
Open the game's compatdata ID folder and head into:
pfx/drive_c/
Using our example above, that gives us:
~/.local/share/Steam/steamapps/compatdata/1245620/pfx/drive_c/
Congratulations, you've found a faked Windows hiding inside Steam on Linux.
Inside you'll see familiar directories including:
Program Files Program Files (x86) users windows
This is the virtual C: drive Proton shows to the game. As far as the game is concerned, it's all warm and cosy and living happily on Windows and doesn't actually need to know anything about Linux. That's the whole point of Proton!
Where is AppData?
Ah, AppData. Yes. We still need to dig a bit deeper for that. Why? Lots of Windows games like to keep their various configuration files, save and whatever else inside AppData.
For Windows games via Proton, you'll normally find the Windows user directory here:
pfx/drive_c/users/steamuser/
For example:
~/.local/share/Steam/steamapps/compatdata/1245620/pfx/drive_c/users/steamuser/
Inside you'll find directories such as:
AppData
Documents
Desktop
Depending on the game, the files you're hunting for may be inside:
AppData/Local/
or:
AppData/Roaming/
Some games will use Documents instead, while others will invent somewhere entirely different just to keep things interesting. We actually have the same issue with Native Linux games too, developers don't often follow the spec and just dump files wherever they please at times (annoying).
What if you're using Flatpak Steam?
If you installed Steam through Flatpak, the location is different because Flatpak keeps applications inside its own special directory structure. Yes, even more hunting needed here! Goodie!
Your Proton prefixes should normally be under:
~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/compatdata/
From there, everything works much the same way:
~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/compatdata/APPID/pfx/drive_c/
Just replace APPID with the game's Steam App ID.
What if the game is installed on another drive?
If you've got multiple Steam Libraries spread across SSDs, hard drives or an SD card, don't assume the prefix you're looking for will always be in your main Steam directory.
Check the Steam Library folder where the game is installed and look for:
steamapps/compatdata/
The prefix should then be under:
steamapps/compatdata/APPID/pfx/
You can see where exactly your Steam Libraries are located by opening Steam and going to Settings > Storage. Here's an example shot from my Steam Deck OLED for the SD Card location:

Cult of the Lamb is really cool - you should play it.
This shows it mounts the SD Card to: /run/media/deck/SR256
Usually though, the Dolphin File Manager on SteamOS for example, will auto-mount it for you so you'll find it in the sidebar when you open Dolphin - so you don't have to search too far.
This is particularly helpful if you've spent ten minutes staring at the correct App ID in the wrong Steam Library. Not that anyone has ever done that…okay I have.
Finding Proton files on Steam Deck / Steam Machine
Steam Deck / Steam Machine work in much the same way, since SteamOS is Linux. Firstly, switch your SteamOS system into Desktop Mode and open Dolphin.
For games on the internal storage, Proton prefixes can normally be found under:
/home/deck/.local/share/Steam/steamapps/compatdata/
There's one small catch: .local is a hidden folder. If there's a dot at the start, it's hidden.
If you have a keyboard attached you can just press CTRL+H to hide / unhide things. If not, you can show hidden files / folders using the Dolphin options menu via More -> View -> Show Hidden Files.

Your secretive .local folder should now magically appear. Just fun Linux things…
From there, find the game's App ID and head into:
APPID/pfx/drive_c/
If your game is installed on a microSD card, check the Steam Library on the card instead and look for:
steamapps/compatdata/
Don't go deleting things just yet
You might quite often see advice online suggesting that deleting a game's Proton prefix can fix certain problems.
It definitely can.
But, it can also delete things that might make you quite sad and frustrated later on.
Some games actually store save files, settings and other important data right inside their Proton prefix. If they're not backed up by Steam Cloud or somewhere else, deleting the whole compatdata/APPID folder could take them and all your time with it.
Before deleting a prefix, you really should make a backup.
Copy the whole thing somewhere safe first:
compatdata/APPID/
Then, if everything explodes, you have something to go back to. Say it with me - Backups! Backups! Backups!
What happens when you delete the Proton prefix?
When you go to load the game again, a new one will be created to give a fresh start. This is essential if you've changed some things, or done some modding, and need to report a bug to Valve. Having the Proton prefix fresh and what's expected will help hunt bugs down. If you haven't changed anything though, no need to delete it.
The quick version
For a standard Steam installation:
~/.local/share/Steam/steamapps/compatdata/APPID/
For Flatpak Steam:
~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/compatdata/APPID/
The game's faked Windows C: drive:
compatdata/APPID/pfx/drive_c/
The faked Windows user directory:
compatdata/APPID/pfx/drive_c/users/steamuser/
And that's really all there is to it.
Find the game's Steam App ID, find the matching compatdata folder and then dive into pfx/drive_c.
Hope you enjoyed the little treasure hunt.
And now, you should be a Proton prefix ace.
Last edited by Zakaria_Shalih on 1 Oct 2026 at 9:14 am UTC
cd .steam/steam/steamapps/
grep name *acf
This will present you with:
appmanifest_1070560.acf: "name" "Steam Linux Runtime 1.0 (scout)"
appmanifest_1203620.acf: "name" "Enshrouded"
appmanifest_1391110.acf: "name" "Steam Linux Runtime 2.0 (soldier)"
appmanifest_1478500.acf: "name" "Big Walk"
appmanifest_1628350.acf: "name" "Steam Linux Runtime 3.0 (sniper)"
appmanifest_2060160.acf: "name" "The Farmer Was Replaced"
appmanifest_228280.acf: "name" "Baldur's Gate: Enhanced Edition"
appmanifest_228980.acf: "name" "Steamworks Common Redistributables"
appmanifest_2747330.acf: "name" "Species: Unknown"
appmanifest_2950790.acf: "name" "IRON NEST: Heavy Turret Simulator"
appmanifest_2968420.acf: "name" "PowerWash Simulator 2"
appmanifest_3241660.acf: "name" "R.E.P.O."
appmanifest_3527290.acf: "name" "PEAK"
appmanifest_3658110.acf: "name" "Proton 10.0"
appmanifest_3949040.acf: "name" "RV There Yet?"
appmanifest_4001890.acf: "name" "How to Fish"
appmanifest_4183110.acf: "name" "Steam Linux Runtime 4.0"
appmanifest_4628710.acf: "name" "Proton 11.0"
appmanifest_632470.acf: "name" "Disco Elysium"
appmanifest_728740.acf: "name" "Sniper Elite V2 Remastered"
appmanifest_739630.acf: "name" "Phasmophobia"
appmanifest_892970.acf: "name" "Valheim"
As you can see, the app ID follows "appmanifest_" and you can easily see which game it's associated with.
This way you can do it all at once without needing to look at each games store URL. ;]



