Using Overlay In-Game
- Select or hover over the item in game for which you’d like to see price predictions.
- Press
CTRL+1
(or custom hotkey) to bring up the (unfiltered) prediction overlay. - Press
CTRL+2
(or custom hotkey) to bring up the mod filters and filtered prediction overlay. - Review the predictions (#1 = xgboost, #2 = knn) and compare to similar items.
Top 10 Model Feature Importances
Browse trained models (collapsed by default)
Notes for Using the Tool
- All models based on current (unsold) offers; data is very noisy; reasonably-priced items may not sell.
- Models #1 (xgb) and #2 (knn) may not agree on predictions, but both approaches are valid.
- Model #1 visualization shows how an item's prediction compares to all others in same category.
- Care when using Model #2 to price items with less than 6-mods, comparing to 6-m items can be tricky. Ask yourself, is a 4-m item more similar to (a) a 4-m item with the same 4-m but very different values, or (b) a 5-m item with 3 of the exact same mods and values, and 2 non-overlapping mods?
- Models currently trained to price rare items, not magic or unique.
- Models currently available for body armour, helmet, gloves, boots, belt, amulet, ring, jewel, wand, sceptre, quiver.
- Models currently unavailable for other main-hands and off-hands.
- Overlay is currently optimized for Windowed Fullscreen only.
- New models trained daily and posted for download.
Modeling Notes
- The model currently ignores "mark of the abyssal lord", "allocates passive", "on corruption" mods.
- The model currently ignores "corrupted", "fractured", "descrated" item statuses.
- The model currently ignores socketables as they are not considered an underlying modifier.
- Items with quality and socketables have had their modifier values normalized to their base values.
- Armour, evasion, energy shield mods are represented in the base stat values.
Modeling Philosophy
Traditional machine learning emphasizes accuracy against a ground truth. In the Path of Exile 2 economy, however, there is no stable ground truth for item prices. Each rare item is unique, with its own set of rolls and modifiers, and player demand is constantly shifting with new leagues, balance patches, and build popularity. Even if one had a full history of transactions, past sales would not reliably encode present value because the meta is always changing.
Furthermore, auctions vastly outnumber completed sales. Many items are listed aspirationally and never sell, while others are underpriced and snapped up instantly. This imbalance makes it impossible to treat transaction history as a representative dataset in the usual supervised learning sense.
For these reasons, we do not frame success in terms of predictive accuracy. Instead, the models are designed as heuristics — tools that compress noisy, player-driven offer data into a usable reference point. Their value is measured in terms of quality of life:
- Reducing the time it takes to estimate a reasonable listing price.
- Stabilizing noisy markets by filtering out extreme or manipulative offers.
- Providing a dynamic anchor that adapts quickly to market conditions, even if imperfectly.
The ultimate goal is not perfect prediction but speed of decision-making. If the tool allows players to spend less time cross-checking dozens of trade listings and more time actually playing the game, then it has succeeded — even acknowledging that many auctions will go unsold regardless of any automated pricing approach.
⚠️ Legacy Content from 0.2 Dawn of the Hunt
This section contains notes from the previous version. Some may no longer apply.
StashSage Demo Video
StashSage Install Video
Discord Bot Setup Video
Discord Bot Setup • Discord Bot Setup Guide (.docx)
- Create a new application at the Discord Developer Portal.
- In the Bot tab enable Message Content Intent.
- Invite the bot to a private server. Don’t delete this server!
- DM the bot once so it can DM you back.
- Copy the bot token → paste into Discord Bot Token.
- Pro Tip: save this somewhere locally so you don't need to re-copy it later!
- Enable Developer Mode in Discord → right-click your name → Copy User ID → paste into Discord User ID.
- Click Update Settings & Reload → you’ll receive a confirmation DM.