Some scalper bots do not even bother buying. They simply reserve stock in carts and sit on it, so your product page reads sold out while the inventory technically never left your warehouse.
This is denial of inventory, and it is corrosive precisely because there is no completed transaction to point at. The damage hides in carts and reservations rather than orders.
How hoarding creates fake scarcity
Many storefronts decrement available stock the instant an item enters a cart, holding it for a reservation window so a shopper can finish checking out. That grace period is the vulnerability. A bot can enter items into thousands of carts and let them expire, cycling new reservations in behind them to keep the pool empty indefinitely.
To real shoppers, the item is perpetually out of stock. The scalper spends nothing on inventory yet controls its perceived availability. Sometimes the goal is pure disruption; often it is to funnel frustrated buyers toward the operator’s own resale listings, which mysteriously do have stock.
Why this is hard to see
Denial of inventory is quiet. Your order numbers look normal or even low, so nothing screams fraud. The signal lives in the ratio of cart reservations to completed purchases and in the churn of carts that fill and expire without ever paying.
Blocking on IP fails as usual, since the reservations spread across residential proxies. Blocking on account fails, since carts can be created from throwaway or even guest sessions. The reservations look like a lot of shoppers who simply did not finish.
Device signals that expose hoarding
Prynt anchors every cart action to a stable visitorId that persists across cookies, IPs, and user agents. That converts a fog of anonymous reservations into a clear count of real devices doing the reserving.
- One device, many carts stands out immediately when a single visitorId holds hundreds of reservations.
- Automation flags reveal the headless browsers and frameworks cycling the carts.
- Proxy and datacenter detection unmask the rotating IPs behind the reservations.
- Abandonment patterns tied to a device expose carts that fill and expire without any human buying behavior.
Once you can see that a handful of devices are behind the bulk of your reservations, the fake scarcity dissolves. Our scraping protection guide covers this same device-anchored approach for high-frequency endpoints.
Reversing the hoard
The fix is to make reservations cost the attacker and to reclaim hoarded stock fast.
- Attach a verified visitorId to every add-to-cart and reservation action.
- Cap concurrent reservations per device for scarce SKUs, regardless of account or guest status.
- Score reservations with Smart Signals and refuse to hold stock for high-suspicion devices.
- Shorten the reservation window for flagged devices and expire their abandoned carts aggressively so units return to the pool.
- Track confirmed hoarders in a reputation list so they cannot re-enter the cycle on the next drop.
The combination of per-device caps and fast expiry breaks the cycle. A bot cannot keep the pool empty if its reservations are capped and its abandoned carts snap back into availability within seconds.
Be deliberate about the reservation window itself, because it is the lever the whole attack pivots on. A generous grace period is friendly to slow human shoppers but is precisely the resource a hoarding bot exploits. Rather than shortening it for everyone, use the device score to set the window dynamically: give a trusted, human-looking device the full grace period it deserves, and give a high-suspicion device a window measured in seconds. That way you reclaim hoarded stock quickly without punishing the careful shopper who genuinely needs a minute to enter a shipping address and pick a payment method.
Measuring recovered inventory
The clearest metric is the cart-to-purchase ratio for scarce items. If reservations vastly outnumber completed orders, hoarding is active. As you tighten per-device caps, that ratio should fall toward normal and your true availability should rise, even though you added no new stock.
Watch conversion too. When real shoppers stop hitting a false out-of-stock wall, completed purchases climb because the inventory was there all along; bots were just sitting on it. That recovered conversion is often the clearest evidence to bring to stakeholders, because it translates the abstract threat of hoarding into revenue that was previously leaking away unseen.
Denial of inventory is scalping without the sale, and it hides in your cart data. Anchoring reservations to real devices drags it into the light. Start free and review the pricing tiers to protect your reservation flow before the next high-demand drop.
Try it free
Prynt is device intelligence with a free tier — visitor IDs, bot & fraud Smart Signals, and behavioral biometrics, powered by a cross-site network. Start free.