eBay aged inventory desk: send offers and drop prices
Work your stale eBay listings from one screen: see what has been sitting, send discount offers, and cut prices without ever going below your floor.
Build me an aged inventory desk for my eBay store: one screen where I work through the listings that are just sitting there and push them out the door with discount offers or price drops, instead of clicking through Seller Hub one listing at a time.
The main view is a board of my active listings. Pull the listings from eBay with Get Inventory Items and Get Offers, and pull views and impressions per listing from Get Traffic Report. Each row shows the title and SKU, days live, current price, quantity remaining, and views and impressions from the traffic report. Let me sort by days live and by traffic, and let me search by SKU or title.
Filter the board by default to the aged inventory that is actually worth working: fixed price Buy It Now listings only, live for at least fourteen days, with traffic but no sales. Auction listings and auctions with Buy It Now must be excluded, because eBay does not allow seller initiated discount offers on them. Make the days live threshold and the traffic threshold adjustable from the UI, and let me clear the filters to see everything active.
Mark on each row whether eBay currently says the listing is eligible for a seller initiated discount offer, using Find Eligible Items. Do not compute eligibility yourself, take it from that call, and make ineligible rows visually distinct so I do not waste time on them. Note that the traffic report gives views and impressions only, so do not show or promise a per listing watcher count anywhere in the app.
From a row I need two actions. First, send a discount offer to interested buyers using Send Offer To Interested Buyers, where I pick the discount percentage and optionally a message. Second, drop the price outright using Bulk Update Price Quantity. Let me select multiple rows and apply a price drop across them, and batch the calls in groups of no more than twenty five records, which is the eBay limit for that call.
Enforce a floor price on both actions. I keep a Google Sheets cost and floor sheet with one row per SKU. Read it with Get Values, cache the floor per SKU so the app is not re-reading the sheet on every keystroke, and block any offer or price change whose resulting price would fall below that SKU's floor. When something is blocked, tell me the floor and the price I tried, do not just fail silently. If a SKU has no row in the floor sheet, flag that on the row and refuse the discount action until a floor exists rather than guessing one.
Log every offer and price change to a history tab in the same Google Sheets spreadsheet with Append Values: timestamp, SKU, listing title, action type, the old price, the new price or discount percentage, and the floor at the time. Surface that history back in the app so each row shows what I already tried on that listing and when, which keeps me from stacking offers on something I discounted three days ago.
Add a "Suggest this week's offers" button that kicks off a background agent. The agent reviews every eligible stale listing on the board, looks at its traffic trend from Get Traffic Report, reads its floor from the Google Sheets cost sheet with Get Values, and checks the logged history for whether the listing already got an offer recently. For each listing it writes back into the app a proposed discount percentage and a one line reason. The proposals land in the app as a review queue where I can approve or skip in bulk, and approving is what actually calls Send Offer To Interested Buyers. Nothing the agent proposes goes out to buyers without my approval, and every proposal still passes the floor price check before it can be sent.
What does this prompt do?
- Lists your active fixed price listings with days live, current price, quantity left, and how much traffic each one is pulling, filtered by default to listings that have been up at least two weeks with views but no sales.
- Flags which of those listings eBay currently says are eligible for a seller discount offer, so you only work rows that will actually go through.
- Lets you send a discount offer to interested buyers or drop the price outright from the row, and blocks anything that would take a SKU below the floor price in your cost spreadsheet.
- Logs every offer and price change to a history tab so you can see what you already tried on a listing and when.
- A "Suggest this week's offers" button hands the eligible list to a background assistant that proposes a discount percentage and a one line reason per listing for you to approve or skip in bulk.
What do I need to use this?
- An eBay seller account with listings managed in your inventory, connected with permission to view listings and traffic and to send offers and update prices.
- A Google Sheets spreadsheet with one row per SKU holding your cost and your floor price, plus a tab where the offer and price history gets logged.
- Fixed price Buy It Now listings. Auctions, including auctions with Buy It Now, cannot take seller offers and are left out of the board.
How can I customize it?
- Change the default staleness window from fourteen days, or the traffic threshold that decides a listing counts as getting real looks.
- Point the floor price lookup at a different spreadsheet, tab, or column layout to match how you already track cost.
- Set guardrails for the suggestion assistant, such as a maximum discount percentage or a cooldown that skips any listing that already got an offer in the last week.
FAQs
Can I see how many watchers each listing has?
Will this send offers on auction listings?
What stops me from discounting below cost?
Why wait fourteen days instead of sending offers right away?
Do I have to accept what the suggestion assistant proposes?
Related templates
Stop buying stale lists. Reps run a saved search, work the results like an inbox, and only the accounts they approve ever reach your CRM.
Drag creators through Sourced to Wrapped on a board grouped by campaign, with audience stats on every card and a one-click brief for each creator.
Pick a repricing rule, send an assistant out to check competitor pages, then approve the new prices that clear your margin floor.
See the projected bounce rate for any outbound send before it goes out, and keep the launch button locked until the list is clean enough to be safe.
Pick any date range and see what each device in your home actually cost to run, not just how many kilowatt-hours it used.
Search three months of global coverage on your topic, rank the outlets actually writing about it, and draft a tailored pitch for each one.
Stop clicking through Seller Hub one listing at a time.
Build an aged inventory desk that puts every stale listing, discount offer, and price change on a single screen with your floor price enforced.