Grailed Web Offer History Overlay
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
This tool helps you analyze offer history on Grailed listings. It scans listing pages for offer data—amounts, dates, buyer names, and statuses (active, accepted, rejected, expired). The panel displays a summary showing total offers, average amount, highest and lowest offers, and acceptance rate. A color-coded list shows each offer with its amount, buyer, date, and status—green for accepted, yellow for active, red for rejected, gray for expired. Offers are sorted by amount with high and low values highlighted. Quick "Profile" buttons open buyer profiles in a new tab, and "Counter" buttons suggest a counteroffer amount (10% above the offer). Desktop notifications alert you when new offers are received.
WHERE IT RUNS
The script activates on Grailed pages (grailed.com), including listing pages, offer history views, and seller dashboards. It automatically detects offer data using multiple extraction strategies that work across different Grailed layouts. The panel appears as a draggable overlay that stays accessible as you review offers.
HOW TO USE
Navigate to any Grailed listing page. The panel will appear showing offer history with summary stats and a list of offers. Toggle "Buyers on/off" to show or hide buyer names. Set the "Refresh (s)" input to control how often the script checks for updates (default 60 seconds). The "Scan" button manually refreshes the data, and "Export CSV" copies all offer data to your clipboard. Click the "Counter" button on any active offer to get a suggested counteroffer amount. Click the "Profile" button to open the buyer's Grailed profile in a new tab. The summary shows the acceptance rate, highest and lowest offers, and average offer amount.
THE TECHNICAL MECHANISM
The script employs a multi-strategy DOM extraction approach for Grailed's offer interface. It first attempts structured selectors targeting known class names like .offer-item, .offer-row, and .offer-history-item, then falls back to heuristic detection of offer containers based on content patterns including "offer", "Offer", and currency symbols. Offer amounts are extracted using regex for currency amounts with support for $, €, and £. Buyer names are extracted from "by [Buyer]" patterns or buyer elements. Dates are extracted from date patterns. Status detection uses pattern matching for active/pending/open, accepted/approved, rejected/declined, and expired/cancelled. The acceptance rate is calculated as accepted / (accepted + rejected) * 100. The highlight threshold colors offers based on their position relative to the highest and lowest values. The counteroffer suggestion calculates 10% above the offer amount. The auto-refresh uses setInterval with a user-configurable interval, and a MutationObserver watches for page updates. All settings are persisted using GM_setValue.
THE PANEL
The panel is fully draggable by its header and remembers its position on the page across sessions. It can be collapsed to a small bubble using the minimize button, then restored by clicking the bubble. The panel resizes automatically to fit its content and can be closed with the Escape key or by clicking the close button. The panel's position and state persist globally, so it returns to the same location on subsequent visits.
PLEASE NOTE
Requires the free BotGentz extension to run. Grailed may update its site structure, which could affect the script's ability to detect offer data — updates will be released as needed. All offer data is read from the page and displayed locally; nothing is transmitted externally. The script reads data from the visible page and does not access any data beyond what is visibly presented. The script does not modify your Grailed account or make offers on your behalf. The counteroffer suggestion is a rough estimate (10% above the offer) and should be adjusted based on your pricing strategy. The CSV export copies data to your clipboard for personal use. This tool is for informational purposes only and is not affiliated with Grailed.