The $20/Day Experiment: Running a Public Case-Stacking Account
Most skin-investing content is screenshots of wins and silence about everything else. This is the opposite: one account, a fixed $20 every morning, every purchase appended to a git-committed ledger anyone can audit — skips, mistakes, and boring weeks included. Here's the full setup and what running it in public has taught us.
The rules of the experiment
The setup is deliberately rigid, because the experiment is about the system, not the operator's cleverness:
- $20 per day, split across a fixed list of cases — no discretionary trades, no "just this once."
- Plus one standing order: one CS:GO Weapon Case per week — a single expensive scarcity anchor bought on a "buy 1" schedule, the pattern described in standing orders as code. Recent fills have run around $110–120 per copy.
- Buy-side only. Nothing is sold. This is accumulation, measured against cost basis, not a trading P&L.
- Every purchase is a ledger row — timestamp, venue, item, price in original currency, converted amount — appended to a file committed to git. Append-only means history can't be quietly edited, the property that makes open-ledger investing meaningful rather than performative.
- Hard caps everywhere: per-item max prices, the daily budget, and a $500 hard cap the software cannot exceed regardless of configuration mistakes.
The machine executing this is cs2stack itself — the founder is user zero. Each morning it checks marketplace balances, compares DMarket and SkinBaron for every line, buys the cheaper listing under its cap (euro prices converted at a daily rate), writes the ledger rows, and emails a report. A typical day fills around $19–20 across roughly five different cases; the ledger shows it, not a marketing page.
Why the list looks the way it does
The daily lines are liquid, modestly-priced cases across different drop generations — the diversification logic from how to choose cases — with each line carrying a note on why it's there: which knife or glove pool it feeds, where it sits in its supply lifecycle. The weekly CS:GO Weapon Case is the deliberate outlier: a 2013 relic with supply measured in scraps, too expensive to buy daily at $20/day, which is exactly what the weekly cadence solves. Cheap daily volume plus one expensive weekly anchor is the ladder structure detailed in building a case ladder.
Could the list be smarter? Probably. That's not the point. The point is that an ordinary, defensible list executed with total consistency beats a brilliant list executed by mood — and that claim is only testable if the execution record is public.
What the public record actually shows
Three months of honest ledger reading, condensed:
- Skips are constant and healthy. Several mornings a month, some line's cheapest listing sits above its price cap and the buy doesn't happen. Early instinct says "missed day"; the correct reading is "refused to overpay," which is the cap doing its one job.
- Fills are lumpy. $20 doesn't divide evenly into real listings, so days land at $18.40 or $19.75, not $20.00. Equal-split allocation plus integer quantities means the budget is a ceiling, not a quota.
- Purchases arrive late, on purpose. DMarket buys have shown trade locks in the ~2–7 day range before withdrawal to Steam, while SkinBaron delivers by direct trade offer. For a holder, the delay is cosmetic — but only a public record makes it unscary, because you can see the bought-but-not-yet-delivered pipeline, per why purchases arrive late.
- Boredom is the dominant experience. Weeks pass where the most interesting event is a venue flipping from DMarket-cheaper to SkinBaron-cheaper on one case. This is what the strategy is supposed to feel like.
The mistakes, which is why the experiment exists
Building in public means the bugs are public too. Two favorites from the record. First, a config line once specified "Gamma 3 Case" — an item that does not exist. Name validation against live markets caught it before any money moved; a fuzzier system would have silently bought nothing, or worse, something. The lesson became verify before you buy. Second, an early allocator saw a newly-added line and tried to "catch up" on all the days it had missed — queuing 19 Gamma cases in one morning. Budget caps contained it, and the fix (new lines start their clocks at zero, no retroactive buying) is now written up in fresh starts.
Neither incident cost real money, precisely because caps and dry-run defaults existed before the bugs did. That ordering — guardrails first, confidence later — is the actual thesis of the experiment.
Why do this in public at all
Because the skin-tool market runs on unverifiable claims, and the cheapest way to be different is to be auditable. A public ledger can't prove the strategy will work — nobody can promise that, and this experiment explicitly doesn't. What it proves is narrower and more useful: the bot buys what it says, at the prices it says, within the caps it says, every day, including the days that make the record look unimpressive. Verified execution plus honest uncertainty about outcomes beats confident storytelling about either.
It also keeps the product honest. Every rough edge a paying user would hit, the founder hits first at 6am with his own money — the morning emails, the balance alerts when a venue runs dry, the report formatting that either answers "what happened and why" in one skim or gets fixed.
If you want to run the same shape of experiment yourself, the mechanics are documented across this blog — start with your first 30 days of automated DCA for what the early weeks feel like. Or just follow this one: the receipts aren't going anywhere. That's the point of receipts.