This repository contains a self directed analysis of a virtual "player-card" market economy, conducted over the full Madden NFL 23 Ultimate Team season (August 2022 - April 2023).
This repository contains roughly 3,500 recovered transactions from a full season (MUT 23) of my daily card trading: the subset that was recovered from a periodically-updated transaction tracking spreadsheet. By the season's end, I ranked #7 globally in total account value on MUT.GG. The same general approach was run across three annual versions of Madden Ultimate Team, totaling well over 10,000 transactions. But again, this repository focuses solely on the MUT 23 season, which was chosen for its most complete recoverable transaction log.
MUT is a game mode within the video game Madden where users build teams to play against the other users by acquiring digital player cards. Cards primarily enter the economy through packs for money (a digital version of professional sport card packs) and can be bought and sold between users on the auction house using an in-game currency called coins.
MUT's economy is a largely self-contained system with real supply and demand dynamics compressed into a single annual cycle that resets with each new Madden release. Card supply is directly controlled by EA (packs are added and removed from the store on a schedule), demand is driven by a calendar of announced content drops called promotions (e.g., Legends, Zero Chill, LTDs), and every transaction is taxed the same way (10%) for every user. That combination of factors makes the MUT market a quick-moving and repeatable environment for observing strategies and market behavior without many of the broader macroeconomic factors that can obscure the same dynamics in real financial markets.
| Term | Meaning |
|---|---|
| MUT | Madden Ultimate Team. The video game this analysis covers |
| OVR | A card's overall rating (60-99), the primary driver of its market value |
| Coins | The main in-game currency, usually slowly accumulated through gameplay. Used for transactions in the auction house. Account value is a measure of total coin value |
| Training | A secondary currency, obtained by quickselling most cards. Used to upgrade cards, and also to purchase the Training Variety Pack |
| C/T | Coins per unit of training. An exchange rate for the purposes of determining if a card is cheap relative to its training quicksell value |
| Quicksell | Instantly discarding a card for a fixed amount of training, or, for the occasional type of card, a fixed amount of coins (set by EA, based on OVR) |
| Auction House | The market where cards are bought and sold between players for coins. Every transaction is charged a 10% fee to the seller |
| LTD | A card that is available in packs for a limited time before being permanently removed from the pack pool |
| Set | A system where multiple lower OVR cards are traded to the game for one higher OVR card |
| Training Variety Pack (TVP) | A special pack that costs training, mostly returns cards that quicksell for coins |
All data was manually logged in a running spreadsheet throughout the MUT season (2022-2023) and later reconstructed (2026) from its version history, as the spreadsheet was continually overwritten with new transactions during and after the period studied. This carries a few implications.
- Most rows do not have true transaction timestamps. The date column on each dataset reflects when a batch of entries was pasted into the aggregate tracking sheet during my periodic reconstruction of each dataset, not necessarily when each trade happened.
- The datasets are a recovered subset, not a full trading log. This repository's 3,500 recorded transactions come from what survived in that sheet's version history, and the true trading volume across the season was likely substantially higher.
All reconstructed datasets can be found in data. A snapshot of the 3/31/2023 version history of the original running spreadsheet can be found in spreadsheet_snapshot.
This repository examines the four primary strategies I used to increase my account value in coins. To provide a broader point of reference, the table also includes related financial concepts, so that the general idea behind each strategy can be understood without the MUT-specific terminology.
| Strategy | Related Financial Concept | Risk | Summary |
|---|---|---|---|
| 1. Arbitrage | Arbitrage | Very safe, capped upside | TVP reroll and set-exchange arbitrage. Reliable but often margins are thin (due to the 10% auction tax) and set. Impossible to scale with large coin stack |
| 2. Training Investing | Mean-reversion trading | Relatively safe | Buying cards for training below the going C/T rate, exploiting supply spikes (panic sells and pack floods) |
| 3. Promotion cycle forecasting | Event-driven investing | Risky on its own, often combined with 2. | Anticipating scheduled in-game changes (new promotions, TVP changes) before the market reacts to them |
| 4. Time investing | Supply-driven appreciation | Risky, but low effort and large upside | Buying LTD and similar cards and holding through supply scarcity |
Each strategy is outlined in greater detail within the corresponding file in case_studies.
Beyond the strategies discussed above, there are a few execution-specific habits that I applied across all of them to maximize the profit made from each investment.
- Expiry window listing (selling): listing a card above the going rate and letting it sit until near-expiry, as the unfiltered auction house shows near-expiry cards first; buyers that casually browse the auction house often buy the slightly overpriced card for convenience without checking for better pricing.
- Auction house filter optimization (buying): when refreshing the auction house for new listings, using a search filter broad enough to catch a large volume of listings but narrow enough that newly listed cards don't get buried within older listings. Often, I achieved this by searching a perfectly rare combination of letters in the card name filter (e.g., en, er, on, an, in, re). The letter combination heavily depended on the activity of the player base (i.e., weekday or weekend, time of day) and what OVR card I was searching for (lower OVR cards see a much larger volume of listings than higher OVR cards).
- Periodic price checking (selling): periodically checking individual card prices even before the C/T rate changes, since specific cards would occasionally have low enough supply to sell well above their training value.
Nearing the end of the MUT 23 season (3/20), I was ranked #7 globally in total account value on MUT.GG, with roughly 120M coins in total value. A Wayback Machine snapshot from a week later shows the account ranked #18 globally (also under figures).
madden-mut-market-analysis/
├── README.md
├── data/
│ ├── buyback.csv
│ ├── set_arbitrage.xlsx
│ ├── spreadsheet_snapshot.xlsx
│ ├── time_investing.csv
│ ├── training_investing.csv
│ └── training_reroll_arbitrage.csv
├── case_studies/
| ├── 01_arbitrage.md
| ├── 02_training_investing.md
| ├── 03_promotion_forecasting.md
| └── 04_time_investing.md
└── figures/
├── seventh_place.png
├── time_investing_hist.png
├── training_investing_hist.png
└── way_back_machine_screenshot.png
