Game save to CSV, for Unreal saves.
Drop an Unreal Engine .sav file and read what is inside it — every property, as a table you can export to CSV or JSON. Runs in your browser; the file is never uploaded.
Two different files share the .sav extension
A .sav file is either an IBM SPSS Statistics dataset or a game save, and the two have nothing in common beyond those four characters. They are told apart by their opening bytes: an SPSS file starts with $FL2 (or $FL3 for the compressed .zsav variant), while an Unreal Engine save starts with GVAS.
This page reads the second kind. If you have a statistics dataset from SPSS, R or Stata, the SPSS .sav to CSV converter is the one you want — it produces a normal rectangular table of cases and variables rather than a property list.
What the game save to CSV export contains
An Unreal save is a tree of named properties, not rows and columns, so the export flattens it: one line per leaf value, with the full path to that value in the first column. A nested inventory entry becomes PlayerState.Inventory[0].ItemId, which sorts and filters cleanly in a spreadsheet and stays unambiguous when two different structures happen to use the same field name.
The JSON export rebuilds the same paths back into nested objects, which is usually easier if you are feeding the result into a script rather than opening it in Excel.
That flattening is the whole reason a game save to CSV conversion is worth doing at all: in the raw file a value like a coin count sits somewhere inside a nested property tree with no way to search it, and once it is a row in a spreadsheet you can sort, filter and diff two saves against each other.
Where the game save to CSV reader stops, and why that is safe
Every property in the format declares its own byte length before its contents. That detail is what makes partial reading trustworthy: when the reader meets a property type it does not decode, it can skip exactly that many bytes and pick up cleanly at the next property instead of losing its place and producing plausible-looking nonsense for the rest of the file. Those skipped properties appear in the output marked (not decoded), and the count is shown above the table — an export that quietly omitted them would be worse than one that says so.
Compressed container formats are the main gap. Several large games wrap their GVAS data in a game-specific archive, so the file does not open with GVAS at all and is rejected up front rather than half-read.
Questions
Which .sav files does this read?
Uncompressed Unreal Engine saves — the ones whose first four bytes are the letters GVAS. Drop the file in and the reader tells you immediately whether it is one; it checks the actual bytes rather than trusting the extension, because both game saves and SPSS data files are named .sav and are otherwise unrelated formats.
Why does my Palworld or ARK save not work?
Those games wrap the GVAS data inside their own compression container, so the file does not begin with GVAS and this reader cannot see the save structure yet. You need to unpack that container first with a tool built for that specific game, then the extracted .sav can be read here.
What do the CSV columns mean?
Three columns: path, type and value. Path is the property name, with nested structures written as dots and array items as bracketed indexes — PlayerState.Inventory[0].ItemId, for example. Type is the Unreal property type such as IntProperty. Value is the decoded value as text.
Some rows say "(not decoded)". What happened?
A property whose type this reader does not decode yet — maps are the common case. Every property declares how many bytes it occupies, so an unknown one is skipped precisely and the rest of the file still reads. Those rows stay in the export, marked, rather than being dropped silently, and the count is shown above the table.
Is my save file uploaded anywhere?
No. The file is read in your browser with JavaScript and never leaves the device — the same as every other converter on this site. There is no account and no server-side processing step.
Can I edit the save and write it back?
No. This reads and exports only. Writing a modified save back requires re-encoding every property exactly as the game expects, and a save that is subtly wrong can corrupt a playthrough — so this tool does not attempt it.