Platform

Inventory Tracking That Finds Profit: Connect Stock to Ad Spend and Margin

Thomas Gleeson · 7 min readUpdated
How to set up Daily Inventory Actions: Claude, ChatGPT and StoreHero logos with the headline Set up inventory actions in 2 minutes
On this page
  1. Watch: set it up in a couple of minutes
  2. Why we built this
  3. Before StoreHero vs. after StoreHero
  4. The benefits — and how it actually saves money
  5. How to set it up (free, in Claude or ChatGPT)
  6. What the daily report looks like
  7. What this actually found, live

First, what this isn't: StoreHero is not an inventory management system. We don't run your warehouse, count your stock or raise your purchase orders. What we do is track your inventory alongside your profit and your ad spend, because that's where the money is. Five checks are now live: Stockout Risk, Overstock Opportunity, Push This Week, Reorder Risk, and a daily rollup that ties them together. It's been one of the most-requested features in our client Slack channels for months.

Watch: set it up in a couple of minutes

The daily rollup is now a free prompt in the StoreHero AI Skills Library, called Daily Inventory Actions. It runs in Claude, ChatGPT or any AI tool that supports MCP, reads your live StoreHero data, and hands back a short, ranked list of the inventory actions worth doing today. This video walks through the problem it solves, how to set it up, and a full example of what comes back.

Why we built this

Because profit depends on inventory. Overspending and underspending on ads both come down to stock: spend behind a product that's about to sell out and you're paying for customers you can't fulfil; ignore deep-stock, high-margin lines and that cash just sits there. The trouble is your stock lives in Shopify, your margins in Xero or QuickBooks, and your ad spend in Meta and Google, and none of them talk to each other. So nobody is asking whether the product you're advertising has enough stock, or whether the stock you're sitting on is actually dead or just out of season. StoreHero joins those dots.

Before StoreHero vs. after StoreHero

BeforeAfter
Finding a stockout riskSomeone notices a “low stock” tag in Shopify, usually after a customer complainsStoreHero flags it with days-of-cover, revenue at risk, and whether ad spend is making it worse
Connecting inventory to ad spendNobody checks — ops doesn’t see the Meta account, media buying doesn’t see the stock countStoreHero cross-references Meta/Google spend changes against the SKUs they’re driving demand for
Dead stockDiscovered once a year at stocktake, or when cash gets tightTracked continuously, valued at cost, and split into genuinely dead vs just out of season
What to push this weekGut feel, or whatever the founder remembers is “doing well”Ranked by margin, stock headroom, and proven-but-under-advertised demand
Reorder timingA spreadsheet somebody forgot to updateFlagged the moment days-of-cover crosses the reorder line — honest about it when lead time isn’t known yet, rather than guessing

The benefits — and how it actually saves money

It stops you paying to advertise stock you don’t have. This is the biggest single leak we see. A campaign doesn’t know its product just sold out — it keeps spending, keeps winning the auction, keeps sending people to a product page that can’t convert. StoreHero catches this by name-matching your live ad activity against your real-time stock position, so you can pull the spend back to the SKUs that can actually fulfil it.

It turns dead stock into a decision, not a surprise. Cash sitting in a warehouse for 18 months isn't “inventory,” it's a loan you gave yourself at 0% interest and forgot about. Seeing what it's worth continuously, not at year-end stocktake, means you can act on it while there's still a season left to sell into, or make the liquidation call before the write-off is forced on you.

It tells you what to spend more on, not just what to worry about. Most inventory tools are alarm systems — they only ever tell you something’s wrong. Push This Week is the other half: the SKUs with margin, stock, and proven demand that nobody’s advertising yet, which is free money sitting next to the fire alarms.

How to set it up (free, in Claude or ChatGPT)

  1. Connect StoreHero to your AI tool once. Add the StoreHero MCP connector in Claude or ChatGPT. There's a setup guide in the AI Skills Library, and you only do it once.
  2. Open the skill. Go to Daily Inventory Actions in the library. It works with your Shopify, Google Ads, Meta Ads and GA4 data, all pulled through StoreHero.
  3. Copy the prompt, or download it as a file. Choose Run once to get the answer straight away, or Schedule it so the report is waiting for you every morning. For inventory, schedule it: this works best as a daily habit, not a one-off report.
  4. Paste it into a new chat and ask it to run. For example: "Can you run this for my store?" It pulls your full catalogue, margins, the last 14 days of ad spend and last year's sales for comparison. A full run takes roughly five to ten minutes, which is why scheduling it makes sense.
The Daily inventory actions page in the StoreHero AI Skills Library, showing it works with Claude, ChatGPT and any MCP tool
Daily Inventory Actions in the StoreHero AI Skills Library.
The prompt section with the Run once and Schedule it options and the Copy prompt button
Run once for an answer now, or Schedule it so it arrives every morning.

What the daily report looks like

Here's a full run for an anonymised sample store we call Marlowe Lane, a fashion and apparel brand. The figures are illustrative, but the structure is exactly what you get back.

It works out where your customers actually are. Here, 48% of revenue ships to the US and 44% to Australia, so it treats both as key markets. Then it pulls the right context for each: the National Weather Service and the Bureau of Meteorology for weather, Thanksgiving and Black Friday for the US, and a summer Christmas and Boxing Day for Australia. It doesn't just assume the store's home country.

It tells you which of your own numbers not to trust. On paper the catalogue holds $18.9M of stock at cost. But many products are bundle and "complete the look" listings that share the same underlying stock, so the same t-shirt gets counted dozens of times. Counted once, the real figure is closer to $4.3M.

Two quick headlines. $1.18M of Christmas stock is graded dead or overstocked, but last year that range sold 25 times more in the months after this point, so the instruction is clear: don't discount any of it. And Google spent nothing on out-of-stock products in the last two weeks, so the product feed is healthy.

Sample report header: US 48% and Australia 44% of revenue, weather sources and calendar, then stock value by grade totalling $18.9M
Markets, weather sources, calendar and stock value by grade (anonymised sample).

Then come the actions. There are only four, on purpose: it ranks everything and cuts it down to what's worth your time today.

  • Act today: reorder last Christmas's best seller. The Luna Satin Pyjama Set in Champagne sold 4,270 units last holiday season and has 30 left, about $74K of gross profit at risk. A spike test shows the demand was driven by Christmas gifting, not discounting, so it comes back whether you run a promotion or not. It doesn't guess the supplier lead time: it says it's unknown, explains that anything over about four weeks means the order is already late, and asks you for the number.
  • This week: top up four lines graded "overstocked". Beanies, cable-knit socks and scrunchies barely sell off-season, so the grade says overstocked. Against last Christmas they're about 4,000 units short. It overrules the grade: around $11K at cost to protect about $47K of gross profit.
  • This week: push the deep-stock lines, but not with paid. Stop featuring the Champagne set and push three holiday lines with far more stock than last season sold. Meta costs $11 to $14 per sale and these products make $10 to $16 in gross profit each, so it recommends email and homepage placement instead, with separate sends for the US and Australian lists.
  • This week: reorder the signature canvas tote. It's a low-cost add-on that only makes about 49 cents per unit, but it's added to thousands of orders and runs out just before Black Friday. A small product with a big knock-on effect.
Sample action card: raise a PO now for the Luna Satin Pyjama Set in Champagne, with sales mix, unit economics, seasonality and owner
Every action comes with stock, sales mix, unit economics, seasonality, ad context, the money at stake and an owner.
The takeaway

It ends with one question: what are your supplier lead times? Answer it once and every future run gives you an exact reorder-by date.

What this actually found, live

We ran all five checks against a real connected store this week — a fashion brand — and the results are exactly why we built this.

One ad set had its daily budget raised 60% (€7,000 → €11,200) eight days before the check ran. Cross-referenced against stock, two of the products that ad set’s audience converts on were sitting at 1-2 days of cover — one had 25 sales in the last 90 days against a single unit left on the shelf. That’s not a hypothetical: that’s live ad spend, right now, being pointed at a product that’s about to stop existing on the shelf. The fix took one recommendation, logged and reconciled automatically: pull the budget back until it restocks.

On the other side, the same store had €1.18 million sitting in dead and overstocked SKUs that a manual stocktake would only have caught at year-end — and a chunk of it wasn’t actually dead, it was Christmas stock sitting inside the reactivation window, which the seasonality check correctly held back from a “discount it now” recommendation that would have been a mistake three months early. Separately, Push This Week surfaced a bundle family — strong margin, rising organic demand, literally zero ad spend pointed at it — that had gone completely unnoticed because nobody was cross-checking margin against ad coverage by hand.

None of that required a new dashboard to stare at. It required someone — or something — watching stock, ad spend, and margin at the same time, continuously, instead of quarterly.

Get this on your account. If you're already connected to StoreHero, the Daily Inventory Actions prompt is free in the AI Skills Library: copy it, schedule it, and your first report arrives tomorrow morning. If you're not yet connected, book a call and we'll show you what it finds in your own store, live, in the first session.

Get the free Daily Inventory Actions prompt

Works in Claude, ChatGPT or any MCP-compatible AI tool. Schedule it and it runs every morning.

Get the prompt

Frequently asked questions

What is dead stock?

Dead stock is inventory that hasn’t sold in a meaningful window and shows no sign of moving — distinct from seasonal stock that’s simply between occasions (Christmas stock in September isn’t dead, it’s early).

How do you tell dead stock from stock that’s just off-season?

Check whether the product serves a calendar occasion within the next 90-120 days. If yes, it’s a hold, not a write-off. If the occasion has already passed with no rebound, or there isn’t one, it’s genuinely dead.

Does an out-of-stock product still cost you money if you’re not actively promoting it?

Yes, indirectly — but the acute version is when it’s still being actively advertised. That’s the highest-value catch in this release: a stockout with live, rising ad spend behind it.

Do I need a warehouse management system for this?

No, and StoreHero isn't one. It doesn't replace your inventory system; it reads your existing Shopify, Meta and Google connections and tracks your stock against profit and ad spend. No new system, no migration.

How do I set up Daily Inventory Actions in Claude or ChatGPT?

Connect the StoreHero MCP connector once, open Daily Inventory Actions in the StoreHero AI Skills Library, copy the prompt (or download it), paste it into a new chat and ask it to run for your store.

Can it run automatically every morning?

Yes. Pick Schedule it instead of Run once and the report runs on its own each morning, so you don't need to log in and re-run the prompt.

Thomas Gleeson has spent the last four years looking at ecommerce profit numbers. At StoreHero he helps brands connect their Shopify, Meta, Google, Klaviyo and cost data to see what is happening with their profit, and he built the Q4 Profit Playbook.

Stop reading about profit. Start tracking it.

See your real contribution margin in ten minutes with StoreHero. No credit card needed.