Steam Achievement Manager: what the open source SAM build actually does
A manager for game achievements in Steam.
At a glance
- What is it?
- SAM is a portable Windows tool that edits Steam achievements and stats directly through the running Steam client. Here is what the repository documents, what it leaves out, and which machines it will not run on.
- Who is it for?
- Adopt SAM if you run Windows with the Steam client logged in and you want to flip or clear achievements and stats on your own account, and you accept that the repository documents no rollback. Do not adopt it on Linux, macOS, Android or Steam Deck, where no build or install path is documented.
- Can I use it commercially?
- Yes. Zlib is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Activity is slowing. The repository last received commits 6 months ago.
- What is it written in?
- Mainly C#, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 26, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What SAM edits, and who the open source release is for
SAM stands for Steam Achievement Manager. The README describes it as a lightweight, portable application used to manage achievements and statistics on Steam. That word "manage" covers both directions: unlocking an achievement and removing one, and the same for the statistics a game tracks alongside them. The tool talks to the Steam client rather than to the game, so the game itself does not have to be running for the edit to happen.
The intended user is someone with a Steam account who already runs the Steam client on the same machine. The README states three hard requirements in one sentence: the Steam client, a Steam account, and network access. Steam must be running and the user must be logged in. Those are not suggestions. SAM is a client of a live session, not a file editor that works on a closed profile.
The history matters for judging the release. The README says the closed source version was originally released in 2008, had its last major release in 2011, and was last updated in 2013 as a hotfix. The code was then published so that "those interested can do as they like with it." That is an unusually candid framing. The author is not pitching a maintained product; he is handing over a tool that had been dormant and letting the source speak. The listed changes since the closed source release are maintenance to bring the code into a more modern state, replacement icons from the Fugue Icons set, and a version bump to 7.0.x.x to mark the open source release. Nothing in that list is a feature.
How the three projects in SAM.sln divide the work
The repository root holds SAM.sln alongside three project directories: SAM.API, SAM.Game and SAM.Picker. The names describe the split. SAM.API is the layer that speaks to Steam, SAM.Game is the per-game editing surface, and SAM.Picker is the game selection step that runs before it. A user launching the tool meets the picker first, chooses a title, and lands in the game view where achievements and statistics are listed and edited.
That is the architecture the layout supports, and the README does not go further than the layout. It does not document the API calls, the authentication path, or how the client session is discovered. Anyone evaluating SAM for a workflow that depends on those details has to read the C# source, which is the point of publishing it. The practical consequence is that SAM is opaque at the protocol layer unless you are willing to read SAM.API yourself.
Two things follow. First, the tool is only as current as the Steam client interface it was built against; a client-side change can break a call that the code assumes. Second, the build configuration lives in .appveyor.yml, an AppVeyor file, and the README embeds an AppVeyor build status badge for the master branch. The continuous integration story is Windows-oriented, which matches the rest of the project.
Installing SAM and editing your first achievement
The README does not print install commands. It points at one place: the latest release page on GitHub, linked as "Download latest release." The tool is described as portable, so the expected path is to take a release build and run it, not to run an installer. If you want to build it yourself, the repository gives you SAM.sln and the AppVeyor configuration, and the language is C#.
Start the Steam client and log in before anything else. The README is explicit that Steam must be running and the user must be logged in. With that session live, launch the release build. You should see the picker, which lists the games available to your account; choose the title you want to work on.
Once inside a game, the achievements and statistics for that title are the editable surface. The README does not itemize the controls, so the exact buttons are a matter of the running build rather than of the documentation. What the README does establish is the requirement set, and that is what to check when something goes wrong:
# Requirements from the README, in the order they matter
# 1. Steam client installed
# 2. Steam account, logged in
# 3. Network access
# 4. Steam must be running when SAM is launchedIf the picker opens but a game shows nothing, or the game list is empty, work backwards through that list before assuming the tool is broken. A logged-out client or a blocked network path will produce a tool that starts and then has nothing to talk to. The README offers no troubleshooting section, so the requirements sentence is the only diagnostic guidance the project provides.
Platform support is the first real limitation
Nothing in the repository describes a Linux, macOS, Android or Steam Deck build. The solution is a C# solution with an AppVeyor pipeline, and the README's only download pointer is the GitHub releases page. There is no package in a Linux distribution, no Homebrew formula, and no documented compatibility layer. If you are searching for Steam Achievement Manager on Linux or on a Steam Deck, the repository as given does not answer you.
That is a genuine boundary rather than a temporary gap in the docs. SAM depends on a running Steam client and a logged-in user, and the code that reaches that client lives in SAM.API. Porting means reimplementing that layer, not recompiling the solution. Treat any claim that SAM runs on a non-Windows platform as unverified by this repository.
The second limitation is the absence of an undo. The README says SAM manages achievements and statistics, in both directions, but it does not document a backup, a restore point, a log of prior values, or a rollback command. If you clear an achievement that you wanted to keep, the repository describes no mechanism for getting it back. That is the risk to weigh before the first edit, and it is not mitigated anywhere in the project's own documentation.
SAM versus reading your achievements instead of writing them
The closest alternative in everyday use is not another editor but a tracker: a tool that reads your achievement state and displays progress without changing anything. The difference in approach is the direction of the data flow. A tracker is a consumer of Steam's achievement data. SAM is a writer. It takes the same live client session and issues changes through it.
That distinction decides the use case. If you want to know how far through a game you are, or to keep a record across titles, a read-only tracker gives you the information with no possibility of altering your profile. If you specifically want to set a state that the game has not produced, a tracker cannot help you at all, because it has no write path. SAM can, and that write path is exactly why the tool exists.
There is a second comparison worth making inside the project itself. SAM is not one program but three, and the picker is separable from the game editor. If your goal is only to see which games your account exposes, the picker alone is the relevant piece and the editing surface is beside the point. Reading the solution as three projects rather than one application makes it easier to judge which part you actually need.
Licence, maintenance and what an upgrade costs you
The licence is Zlib, a permissive licence, and the repository ships it as LICENSE.txt at the root. Zlib permits use, modification and redistribution with few conditions, and it does not carry the copyleft obligations of a GPL-style licence. That fits the README's stated intent of letting interested people do as they like with the code. This is a description of the licence text, not legal advice; read LICENSE.txt for the actual terms.
The maintenance picture is mixed and worth stating plainly. The repository is not archived, and the last push was on 2026-03-19, which is recent. The release history, however, is uneven: 7.0.41 on 2026-03-19, 7.0.40 on 2026-02-18, and before that 7.0.37 on 2024-09-15. A gap of roughly a year and a half separates 7.0.37 from 7.0.40, so bursts of activity are the pattern rather than a steady cadence.
Upgrade cost is low by construction. The tool is portable, so a new release is a replacement rather than an installed package with migration steps, and the README documents no configuration file, no data directory and no settings that would need carrying forward. The risk sits elsewhere: because SAM drives a live Steam client, a client-side change can invalidate the assumptions in SAM.API between releases, and the repository documents no compatibility matrix telling you which client versions a given SAM build was checked against.
Editorial conclusion
Adopt SAM if you run Windows with the Steam client logged in and you want to flip or clear achievements and stats on your own account, and you accept that the repository documents no rollback. Do not adopt it on Linux, macOS, Android or Steam Deck, where no build or install path is documented. Before you touch anything, verify two things: that you can build SAM.sln from source, and that the game you intend to edit is not one whose achievements you would regret losing, because nothing in the repository describes an undo.
Frequently asked questions
Is Steam Achievement Manager bannable?
The repository does not address bans, enforcement or account penalties at all. The README describes the tool's requirements and its release history, and says nothing about consequences for using it. Anyone weighing that risk will not find an answer in this project's documentation.
Is it safe to use Steam Achievement Manager?
The README gives no safety guidance beyond the operating requirements: the Steam client, a Steam account, network access, and Steam running with the user logged in. It does not document a backup, a restore point or a rollback for changes you make, so an edit you regret has no described undo.
Can you use Steam Achievement Manager to remove achievements?
The README says SAM is used to manage achievements and statistics, and the same wording covers clearing a state as well as setting one. The repository does not document a backup or restore path, so removal should be treated as one-way unless you have your own record of the prior values.
How do you install Steam Achievement Manager?
The README does not print install commands. It links to the latest release on GitHub as the download, and describes the application as portable, so the expected path is a release build you run directly. Building from source means SAM.sln, which the repository provides at the root.
How do you use Steam Achievement Manager to unlock achievements?
Start Steam and log in first, since the README requires the client to be running with a logged-in user. Launch SAM, choose a game in the picker, and the achievements for that title are the editable surface. The README does not itemize the individual controls.
Does Steam Achievement Manager run on Linux or Steam Deck?
The repository documents no Linux, macOS, Android or Steam Deck build. It is a C# solution with an AppVeyor build configuration, and the only download pointer in the README is the GitHub releases page. SAM depends on a running Steam client and a logged-in user, so a port would mean reimplementing the layer in SAM.API.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/gibbed-steamachievementmanager)