Amazon IPI Score: Find What Drags It Down With an AI Review

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Amazon IPI Score: Find What Drags It Down With an AI Review.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Amazon IPI Score: Find What Drags It Down With an AI Review.

Export your FBA inventory data, then have AI rank each product against the four areas Amazon's Inventory Performance dashboard tracks: excess inventory, sell-through, stranded stock and in-stock rate. Amazon says in-stock rate is not a direct input, so excess, slow and stranded units are usually the drag. The worst rows show where to act.

IPI stands for Inventory Performance Index, a score Amazon gives sellers on a Professional plan who hold FBA stock. Amazon does not publish its formula or weights. What it does say, in Seller Central help, is which behaviours count: holding enough stock for 30 to 60 days of expected sales, avoiding long-term storage fees, fixing listing problems and keeping popular products in stock. That is enough to work from, because the four drivers show up as columns in reports you can already download. The score does not need a model of Amazon's maths. It needs a clear list of the products causing the damage.

Follow me on Instagram@sagnikteaches

What the score controls, and what has changed

IPI matters because of capacity. Amazon gives each seller one FBA capacity limit per storage type each month, usually announced in the fourth week of the month in the Capacity Monitor at the bottom of the FBA dashboard, with estimates for the two months after. Amazon's capacity page says the limit is influenced by your IPI score alongside historical sales, seasonal peaks, forecasts for your ASINs, new selection, scheduled deals, fulfilment centre capacity and shipment lead time. If stock on hand plus shipments on the way would exceed the limit, you cannot create new shipments. Capacity Manager lets you bid a reservation fee for extra space, which sales made with that space can offset through performance credits. New Professional accounts in their first 39 weeks of FBA get no capacity limit at all.

Connect on LinkedInSagnik Bhattacharya

On the threshold, guides quote various fixed numbers, often from earlier years. Amazon's own IPI FAQ says it tells sellers four to eight weeks before a new limit period what the IPI threshold will be and which score weeks it will check. So read the number from that notice and your dashboard, put it at the top of your spreadsheet, and treat "comfortably above it" as the target. Two other points from the FAQ save worry: new ASINs in their first 90 days do not affect the score, and stock stops counting once a removal or liquidation order is placed.

Subscribe on YouTube@sagnikteaches

The four drivers in plain words

DriverWhat it meansWhere the evidence lives
Excess inventoryAmazon counts an item as excess when it has more than 90 days of supply against forecast demand; excess units are those where paying storage costs more than marking down or removing themExcess inventory percentage on the dashboard; the FBA Inventory page for the SKUs
Sell-throughUnits shipped in the past 90 days divided by average units on hand, averaged from snapshots today and 30, 60 and 90 days agoFBA sell-through rate on the dashboard; the Sell-through column on the FBA Inventory page
Stranded inventoryUnits in a fulfilment centre without an active listing, so nobody can buy themStranded inventory percentage on the dashboard; the Fix stranded inventory page
In-stock rateShare of the last 30 days your replenishable ASINs were in stock, weighted by 60 days of unit sales. Amazon says it is not a direct input to the scoreFBA in-stock rate on the dashboard; Restock Inventory

Amazon publishes no weights, though its FAQ is clear on one point: a low in-stock rate does not hurt the score unless your most popular products keep running out while the stock you do hold sells slowly or sits as excess. In practice the drivers interact: stock-outs push you to over-order, over-ordering creates excess, and excess lowers the score that helps set how much you may send.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Export the data

You need three files, all downloadable as CSV or a spreadsheet from Seller Central. Menu names change, so search the report name in the search bar if a path fails.

  1. The FBA Inventory page (some Amazon help pages still call it Manage Inventory Health), downloaded, with columns such as SKU, ASIN, product name, units available, inbound, reserved, unfulfillable, recent units sold, days of supply, sell-through and an excess or age column.
  2. The stranded list from the Fix stranded inventory page: SKU, units, and the stranded reason.
  3. Restock Inventory: recommended quantities, sales velocity and out-of-stock information.

Combine them in a spreadsheet by SKU. Keep only the columns below, with your own landed cost added by hand, and remove anything personal: there is none in these reports, but your cost data is sensitive and goes to a third-party tool, so check the AI provider's data settings first.

sku | asin | on_hand | inbound | units_sold_30d | days_of_supply | excess_units | stranded_units | stranded_reason | oos_days_30d | landed_cost | price

A review walked through with numbers

Say a pest-control firm sells eight products through FBA: bait stations, glue boards, a sonic repeller, gloves and similar. A trimmed table might look like this (illustrative figures, not from any account).

SKUOn handSold 30dDays of supplyExcessStrandedOut of stock daysCost
BAIT-1290015018052000$3.10
GLUE-624021034009$2.40
SONIC-23101466029000$7.50
GLOVE-L130854601300$1.20
TRAP-44006020018002$4.60

Before any AI, a spreadsheet gives two numbers per row that make the ranking meaningful: money tied up (on hand times cost) and the cost of the excess (excess units times cost). On hand times cost for BAIT-12 is $2,790; its excess ties up $1,612. SONIC-2 holds $2,325, with excess of $2,175, and with 660 days of supply it is the worst by far. GLOVE-L has only $156 of stock, but all 130 units are stranded, which is a fixable listing error rather than a selling problem. GLUE-6 is the opposite: nothing wrong with stock, but nine days out of stock in the month, which costs sales now and drags the score only if a best-seller keeps running out.

That already tells a story. The AI's job is to produce this ranking for 200 SKUs instead of five, and to explain it in a way a team member can act on.

A prompt for the review

Below is a table of my FBA SKUs. I want to find what drags down my Amazon IPI score. Amazon says IPI depends on excess inventory, sell-through, stranded inventory and in-stock rate. I do not know the formula or weights, so do not claim any.

For each SKU compute:
- stock_value = on_hand * landed_cost
- excess_value = excess_units * landed_cost
- cover_days = days_of_supply (as given)
Then classify each SKU into exactly one of: EXCESS (excess_units above 0; Amazon's excess column already applies its own rule), STRANDED (stranded_units above 0), STOCKOUT (oos_days_30d above 3), HEALTHY, or MIXED if more than one applies.
Rank EXCESS and MIXED by excess_value, largest first. List STRANDED by units. List STOCKOUT by oos_days_30d.
Flag any row with missing numbers instead of guessing. Do not recommend a price or removal; I decide actions.

DATA:
[paste table]

The prompt leans on Amazon's excess column rather than a cut-off of my own. Amazon counts an item as excess above 90 days of supply against its forecast demand, and suggests 30 to 60 days of cover as a guideline. A seasonal product may legitimately hold more going into peak, and Amazon says the index is built to allow for seasonality, so flag those rather than clear them. The prompt also tells the model not to claim a formula, since the temptation to invent "IPI points" per SKU is strong and would be false precision.

What comes back, and what to check

EXCESS / MIXED (by excess_value):
1. SONIC-2: excess $2,175, 660 days of cover. Class: EXCESS.
2. BAIT-12: excess $1,612, 180 days of cover. Class: EXCESS.
3. TRAP-4: excess $828, 200 days of cover, 2 stock-out days. Class: MIXED (excess, minor stockout).
STRANDED: GLOVE-L, 130 units.
STOCKOUT: GLUE-6, 9 days.
HEALTHY: none listed in sample.

Check three things. First, recompute the top excess values with a calculator; models transpose numbers. Second, look at the MIXED line: TRAP-4 has two stock-out days and 200 days of cover, which can be a forecasting symptom, since the stock may be the wrong size or colour. Third, confirm the stranded reason from the report before acting; "listing inactive" and "missing information" are fixed differently.

Turning the ranking into an action list

For each class the options are limited, and a simple decision rule beats judgement every time. Here is the rule I would write on the sheet.

  • EXCESS: compare holding cost with clearing cost. If the days of cover is above a year and the product is not seasonal, the usual options are a price cut, a promotion, a removal order, or a bundle with a faster seller. Amazon's own definition of excess is about holding cost exceeding the cost of cutting the price or removing, so use that test with real numbers. The FBA Inventory page has a Create Outlet deal filter that shows which products can go into Amazon Outlet, and Amazon suggests removing stock before it reaches 365 days in a fulfilment centre to avoid long-term storage fees.
  • STRANDED: fix the listing first. Open the stranded reason, reactivate or correct it, and check that stock begins to sell. If the listing cannot be fixed, remove the stock. This is the cheapest improvement because it costs nothing but time.
  • STOCKOUT: bring a restock forward and check lead times. Amazon says in-stock rate is not a direct input to the score, so fix a stock-out for the lost sales first; it drags the score mainly when best-sellers keep running out while slower stock piles up. Overcompensating here creates the next excess problem, so size the reorder from sales velocity plus lead time, not from the stock-out alone. The restock planning tutorial covers that sum.
  • HEALTHY: leave alone.

A clearing decision, worked through

SONIC-2 sells 14 units a month and holds 310, with 290 of them excess. Say the product sells for $19.99 and costs $7.50, so each sale earns $12.49 before fees. Say storage and excess-stock charges add about 40 cents a unit a month (an assumption; read your own fee lines). At 14 sales a month, the 290 excess units take about 21 months to clear, and holding them costs roughly $2,400 in fees over that time (290 units, 40 cents, about 21 months, with the pile shrinking as it sells, so call it $1,200 to $2,400 depending on how you count). Now try a price of $14.99. Margin falls to $7.49 a unit, but suppose sales rise to 40 a month. The 290 clear in about seven months, earn roughly $2,170, and cost far less to hold. The slow path earns about $3,620 but takes three times as long and keeps the score down throughout. Net of holding costs the two are closer than they look: roughly $1,200 to $2,400 left on the slow path against about $1,750 on the fast one (seven months of a shrinking pile costs around $400), so the choice turns on your real fee lines, the capacity you free and what else the cash could do. The numbers are crude and every input is an assumption. The point is that a discount can beat patience once holding costs and the score are counted, and the spreadsheet lets you swap in your own fees. For floor prices that stop a repricer undercutting your margin, see the repricer rules tutorial.

Second example: a stock-out that looked like a sales problem

Take an illustrative case: a car repair garage sold a set of wiper blades through FBA, and sales fell 30 per cent in a month. The first reading was "the listing is losing". The table showed 11 days out of stock in the 30. The AI, given the table, flagged STOCKOUT and nothing else; the cause was a late inbound shipment, not demand. Restocking a week earlier, using a faster carrier, fixed it. The lesson: let the data classify first, because a stock-out and a weak listing look identical in a sales chart.

Third example: the stranded batch

A furniture maker found 130 stranded cushion covers (an illustration). The reason was a missing safety attribute added to the category a month earlier. The fix was an edit to the listing and a resubmission, nothing more. It took 15 minutes and stopped 130 units (about $500 at cost) counting against the stranded driver. Always open the reason before deciding to remove stock.

Fourth example: cleaning up a bundle that confuses the numbers

In another illustration, a cleaning company sold the same sponge in a single, a three-pack and a bundle with spray. The bundle ate stock of the single without showing it, so the single went out of stock while the pack looked overstocked. Treating these as separate SKUs in the table made the pattern obvious. If you sell bundles, add a column for "components shared with" so the AI does not rank them in isolation.

Reading the trend rather than the snapshot

A single month's table says where you are; three months say where you are heading. Keep a running sheet with one row per SKU per month and four columns that matter: excess value, stranded units, stock-out days and days of cover. Then ask the AI a different question: which SKUs got worse for three months running, and which improved after an action? A SKU that worsens steadily is a reorder habit problem, such as a standing order that was set for last year's sales. A SKU that spikes once is usually an event, such as a delayed shipment or a suppressed listing.

Add one more column for the action you took and its date. Without it, a later improvement cannot be traced to anything, and you will repeat the clear-out that did nothing and skip the one that worked.

A second prompt: triaging the stranded list

Stranded stock often comes in a long list with a handful of causes. Give the model only the report columns (SKU, units, reason) and ask for grouping, not diagnosis.

Group these stranded SKUs by the reason text. For each group give the number of SKUs and total units. Then, for each group, list in plain words the check I should make in Seller Central before I try to fix it. Do not claim to know how Amazon will respond. If a reason text is unfamiliar, say so.

A typical result (illustrative) says that 9 SKUs are stranded for a missing required attribute (check the listing quality dashboard for the missing field), 3 because the listing is inactive (check the price and the buy box), and 1 for a restricted-product flag (check the account's category approval before anything else). The third group is not fixable by editing, and a person should look at it first.

A message to the team that people will read

If a partner or an assistant does the restocking, give them the output as a one-page note and not a spreadsheet. Ask the AI to turn the ranked table into five lines: the three biggest excess lines with the suggested options, the stranded lines with the fix to try, and the stock-outs with a restock date. Read it against the table before sending, and add a deadline per line. A note with dates gets done; a table with colours gets admired.

Where AI misleads on this job

  • It will invent weights or "points lost per SKU" if you do not forbid it. Amazon does not publish them.
  • It treats days of supply as precise. It is an estimate from past sales, and seasonality distorts it.
  • It cannot see events outside the file: a planned promotion, a supplier delay, a seasonal peak. Add a "known events" column.
  • It may suggest removing slow products that are new and still ramping. Add launch dates and protect products under 90 days (Amazon leaves ASINs out of the score for their first 90 days anyway).
  • It will often quote rules from older web pages. Do not ask it what the threshold is; read it from your dashboard.

A monthly rhythm

Run the review on the same day each month, just after the inventory reports refresh. Compare to last month: what moved, which actions worked, which products repeat. Keep the sheet; the trend line matters more than any single month. If you already have a weekly reports routine, add the IPI table to it. And if you suspect you will need to cut FBA listings altogether for slow lines, the FBA versus FBM cost model helps decide which products to hold yourself.

How to tell it worked

Three signals, over six to eight weeks. The score itself rises, which the dashboard shows. The excess value in your table falls. And the capacity limit stops being a constraint on your shipments. Do not expect an immediate jump: the dashboard shows a score for each week, and Amazon says the index weighs long-term as well as recent performance, so one cleared SKU may not show for a few weeks. If nothing moves after two months, re-check that you acted on the right class and that removal or discount orders actually completed.

Keep a note of when you act, so a later reader of the sheet (or you, in six months) can see cause and effect. A single line per action, with the date and units affected, is enough.

Seasonal stock and launches: when the rules need a pause

Two situations make a plain days-of-cover rule wrong. The first is seasonal products. A garden-pest spray that sells almost nothing for eight months and a great deal for four will always look like excess in the quiet months. If you flag a product as seasonal in the sheet, tell the AI the peak months and ask it to compare cover against the sales it expects in the next ninety days rather than the last thirty. Better still, compare against the same ninety days a year ago, taken from your own sales history.

The second is new launches. Amazon already leaves new ASINs out of the IPI for their first 90 days, but your own review should protect them too: a product in its first months is building sales and reviews, and its early numbers say little about its steady state. Protect those SKUs in the prompt with a launch date column and a rule that nothing under ninety days old is classed as excess. Otherwise the review will recommend clearing a product just as its advertising starts to work.

For both cases the principle is the same: the AI applies the rule you give it, and a rule written for steady sellers misjudges anything else. Spend ten minutes a quarter reviewing which SKUs are exceptions, and write them into the sheet.

What stays your decision

The AI ranks and explains. It cannot know your cash position, your supplier terms or your plans for next quarter. Decisions about discounting, removing and ordering stay with you, and so does the check that the numbers match Seller Central. Used that way, an hour of review each month can find the handful of SKUs that cause most of the problem.

Questions about IPI and AI reviews

What is a good IPI score?

Amazon does not publish a target. Its IPI FAQ says it tells sellers four to eight weeks before a new limit period what threshold applies and which score weeks it will check. Read the figure from that notice and your dashboard rather than from a guide, and aim comfortably above it.

Does Amazon publish the IPI formula?

No. Amazon lists four areas (excess inventory, sell-through, stranded inventory and in-stock rate) and says in-stock rate is not a direct input, but it publishes no weights. Rankings you see online, such as which factor counts most, are third-party estimates. Watch what moves your own score.

How often does the score change?

The dashboard shows a score for each week, and the sell-through rate updates daily. Capacity limits are set once a month for each storage type, usually announced in the fourth week. Amazon says the score blends recent and long-term performance, so a fix can take weeks to show.

Can AI see my IPI score directly?

Not unless you export the data or use a connected tool. A chatbot works from the files you give it. That is a good thing here: you control what leaves your account, and you can check every number it uses against the original report.

Should I just liquidate everything slow?

Not blindly. Removing or discounting stock costs money, and some slow lines are seasonal. Rank by what the stock costs you to hold against what clearing it costs, then act on the clearest cases first. The tutorial below gives a simple rule for that.

Further reads

Sources: Amazon Seller Central help pages read 5 November 2026: Inventory Performance Index, IPI frequently asked questions and FBA capacity limits. Confirm the current threshold and limits on your own dashboard.

Want an inventory review you can repeat monthly?

On a 1:1 call we can look at which inventory reports you already export, set up a ranking routine for slow and stranded stock, and agree who acts on it.

Book a 1:1 call with me