> For the complete documentation index, see [llms.txt](https://kb.logicerp.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kb.logicerp.com/logic-erp-learning-hub-tutorials-and-best-practices/reports-queries/customer-+-item-sale-analysis/abc-sale-analysis-stock-norm-and-production-plan/abc-sale-analysis-stock-norm-and-production-plan-user-guide.md).

# ABC Sale Analysis, Stock Norm & Production Plan - User Guide

Navigate to **Reports/Queries\Customer + Item Sale Analysis** and click on "ABC Sale Analysis, Stock Norm & Production Plan".

For a step-by-step walkthrough with screenshots and video, see [ABC Sale Analysis, Stock Norm & Production Plan](/logic-erp-learning-hub-tutorials-and-best-practices/reports-queries/customer-+-item-sale-analysis/abc-sale-analysis-stock-norm-and-production-plan.md). Every setting is described one by one in [ABC Sale Analysis, Stock Norm & Production Plan - Configuration](/logic-erp-learning-hub-tutorials-and-best-practices/reports-queries/customer-+-item-sale-analysis/abc-sale-analysis-stock-norm-and-production-plan/abc-sale-analysis-stock-norm-and-production-plan-configuration.md).

## What this report tells you

It tells you **what to make next, and how much of it.**

You run it, and by default you get one line per product with a quantity at the end — the amount you should produce to keep that product properly stocked. You can also report by company, group, item name without shade, shade or pack / size. Products that sell fast are treated differently from products that barely move, so you are not carrying a warehouse full of slow stock while your best sellers run out.

The report works this out from your own sales. You do not enter forecasts or targets. It looks at what genuinely sold over a recent period and plans from that.

What you *do* decide is the policy — how much stock is worth holding for a fast seller compared with a slow one. You set that once, and the report applies it to every product consistently.

## How it arrives at the number

Four steps. Once you have these, every column in the report makes sense.

**Step 1 — It ranks your products.** It totals what each product sold over your chosen period and puts them in order, best seller first.

**Step 2 — It sorts them into categories.** The ranked list is cut into groups. The top slice is **A**, the middle is **B**, the tail is **C**. You decide how wide each slice is.

**Step 3 — It works out how much stock you should be holding.** Each category carries a number of days — say 10 days for A, 20 for B, 30 for C. The report takes how much of that product sells on an average day and multiplies by those days. That gives the quantity you ought to have on the shelf.

**Step 4 — It subtracts what you already have.** Stock in hand comes off. If you choose, work in progress also comes off and pending sale orders are added. What is left is what to make.

One detail worth knowing, because it surprises people: the categories are decided on **sales value**, but the buffer is worked out in **quantity**. That is deliberate. Value tells you which products matter to the business; quantity is what you actually produce.

So a cheap product selling in huge numbers may sit in category C — not because it is unimportant, but because it contributes less to turnover than its volume suggests. If that does not suit your business, set **Rank Products On** to **Sale Qty**.

## Setting it up the first time

Create and save a set of settings before the first run. A new set comes pre-filled with a starting policy: categories A, B and C at 10, 20 and 30 days, three months of sales, returns netted off and inter-branch transfers excluded. Work down each section, adjust it to your business, and save. After that, running the report is a single click.

What you are deciding:

| Decide                                               | Covered in                       |
| ---------------------------------------------------- | -------------------------------- |
| How far back to look at sales                        | Below                            |
| Your categories and how many days of stock each gets | Your categories and buffer days  |
| What counts as a sale                                | Telling it what counts as a sale |
| Which branches hold the stock you can draw on        | Which stock counts               |
| How to round the production quantity                 | Below                            |

You can save more than one set of settings under different names, which is useful if you plan different product ranges on different cycles — say a three-month view for regular lines and a shorter one for fast-moving seasonal stock.

### How far back to look

Choose the period as **Last N Months** (up to 8), **Last N Days**, **Last N Complete Months**, or **Report Date Range**. **Three months is the default** — long enough to even out a quiet week, short enough to reflect what is selling now. Except with **Report Date Range**, the period counts back from the report's **To** date (or from today, or the last month end, as **Period End Basis** says), and the **From** date is not used.

Two things in this section are worth your attention:

* **How many days to divide by.** To get an average daily sale, the report divides total sales by a number of days. **Days Divisor Basis** offers the actual days in the period (the default), a fixed number of days (90 to start with), or only the days on which the product actually sold. If your business closes one day a week, dividing by every calendar day understates your true daily rate.
* **Ignore the period before an item was created.** Switch this on and a product launched part-way through the period is judged only on the time it has actually been on sale. Without it, a good new product looks like a poor old one. When rows are grouped, the oldest product in the group decides.

### Rounding the answer

In the **Production Requirement** section you can tidy up the production quantity so it is practical:

* **Round up to a batch size** — **Round Production To** a whole number or a multiple of your batch size, so you are not asked to make 237 when your line runs in fifties. It always rounds up.
* **Set a minimum** — anything below **Minimum Production Qty** shows as zero. Tick **Suppress Zero Production Rows** to hide those rows.
* **Take off work already in progress** — **Less WIP Qty** takes off production entered but not yet through its last process, at your head office branches, so you do not order something twice.
* **Add pending sale orders** — **Add Pending SO Qty** adds undelivered, uncancelled sale orders on top of the buffer, for the same branches whose sales you count.

## Your categories and buffer days

This is the part that is genuinely yours to decide. It is a small grid:

| Upto % | Category | Buffer Days |
| ------ | -------- | ----------- |
| 10     | A        | 10          |
| 50     | B        | 20          |
| 100    | C        | 30          |

That reads: my top 10% of products are category A and I want 10 days of stock for them. The next 40% are B and get 20 days. Everything else is C and gets 30 days. This is the starting policy a new set of settings comes with.

By default the figures are running totals, as above. Set **Band Boundary Basis** to **Incremental** to type the size of each band instead — 10, 40, 50. The last category always takes everything that is left. With **Percent Of Item Count**, a part-product at a boundary is rounded up while **Round Boundary Up** is ticked, which it is by default.

**You are not limited to three categories.** Add rows for D and E if you want a finer policy.

### Why slow movers often get more days

It looks backwards at first glance, but it is usually right. Your fast sellers are easy to replace — you make them often, so holding a small buffer is safe. A slow mover might only go through production occasionally, so if you run out you could be waiting weeks. More days of cover compensates for that.

If your production cycle is the same for everything, you may prefer the opposite. It is your policy; the report simply applies it.

### Three ways to draw the lines

**Classification Method** decides what the boundary figures mean:

**Percent Of Item Count.** The top 10% of the ranked list is category A. Straightforward and predictable — a good default.

**Cumulative Value Share.** Take products down the list until they account for, say, 70% of your turnover; those are A. The product that crosses the line is included. This suits businesses where a handful of products dominate sales.

**Fixed Item Count.** The figures are numbers of products. With running totals, A = 100 and B = 600 makes the top 100 products A and the next 500 B; with **Incremental**, type 100 and 500.

The fixed count is the practical choice if you have a very large catalogue. Ten per cent of fifty thousand products is five thousand — not a list anyone can work through. Setting A to 100 gives you a work list you can actually act on.

### Two other useful options

* **Rank within item groups** rather than across everything — set **Classification Scope** to **Within Item Group** and choose the group level. Each group then gets its own A, B and C, so a strong group does not fill category A and leave your other ranges unplanned.
* **Show only one category** once your policy is settled, so you can print just the A items for this week's planning.

## Telling it what counts as a sale

Every number in the report comes from this, so it is worth five minutes of thought.

**Inter-branch transfers — check this one first.** When you move stock from your warehouse to one of your own branches, that movement can look like a sale. It usually is not one, and transfers can be a large part of what leaves the warehouse. Counting them makes products look like they sell far more than they do, and scrambles the ranking.

**Exclude Inter Branch Transfers** is ticked in a new set of settings. Unless you have a specific reason not to, leave it ticked. If your figures look inflated, this is the first setting to check.

The rest:

| Setting                      | What it does                                                                                                                                           |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Net Off Sale Returns         | Ticked (the default): returns are subtracted, so a product with heavy returns is ranked on what it truly sold. Unticked: returns are left out entirely |
| Include Free / Repl / Sample | Counts giveaways as demand, because you still have to produce them. It raises the quantity, not the value                                              |
| Include Challan Not Invoiced | Challans that update stock are already counted as sales. This option adds the challans that were set not to update stock                               |
| Sale Value Basis             | The value to rank on: **Net Amount**, **Gross Amount**, or **UD Net Amount**, where you choose which parts of the bill make up the value               |
| Rank Products On             | **Sale Value** or **Sale Qty**. Quantity is the better choice if your products are similar in price, or if value ranking is producing odd results      |
| Sale Branch Scope            | **All Branches**, **Head Office Branches Only**, or **Selected Branches** — whose sales to plan from                                                   |

## Which stock counts

The report subtracts stock you already hold. You decide which stock that means.

**Pick your head office branches.** Usually the warehouses that feed production, not your retail branches. Stock sitting in a shop is not available to cover central production planning. **If no head office branch is selected, stock from every branch is counted.**

**Then decide what is genuinely available.** Some stock is in the building but already spoken for:

* **Less Reserved Stock** and **Less Stock Allocated Against SO** take off the same figure — the stock reserved against sale orders. **Tick only one of them**, or it is taken off twice.
* **Less Pending DO Qty** takes off stock committed to delivery orders not yet despatched.

It is worth doing. Stock that is already promised cannot cover your buffer, and counting it as available is how businesses end up short on their best sellers.

You can also narrow to particular godowns — which limits the sales counted as well as the stock — and include or exclude bin stock, which is added to the master stock.

### One thing to know about stock dates

**Stock Source Basis** decides which stock figure is used:

* **Current Stock** — today's stock, whatever the report date, with all the deductions above.
* **Stock As On Date** — the total that was on hand at a date: the report date, the end of the sales period, or today. The breakdown into free, reserved and committed only exists for the present moment, so with this choice the settings cannot be saved while **Include Bin Stock** or any **Less…** stock option is ticked. **Include Bin Stock** is ticked in a new set of settings, so untick it first.

## Reading your report

By default, one row per product. The columns read left to right as the story of the calculation, so you can follow any row across and see exactly how its number was reached.

| Column                                                             | What it means                                                                                                                               |
| ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------- |
| Company, Group, Item Name, Item Name W/O Shade, Shade, Pack / Size | Which product this is. You choose which of these appear                                                                                     |
| Category                                                           | The category name you typed in the policy grid — A, B, C and so on                                                                          |
| Sale Qty, Sale Value                                               | What it sold in your chosen period                                                                                                          |
| Avg Daily Qty                                                      | Sale quantity spread over the period                                                                                                        |
| Buffer Days                                                        | Days of stock its category is entitled to                                                                                                   |
| Reqd Buffer Qty                                                    | Average daily quantity × buffer days — what you should be holding                                                                           |
| HO Stock                                                           | What you actually hold                                                                                                                      |
| Stock Value                                                        | That stock valued at the product's average selling rate over the period (sale value ÷ sale quantity). A product with no sale shows no value |
| WIP Qty                                                            | Already in production                                                                                                                       |
| Pending SO Qty                                                     | Already ordered by customers                                                                                                                |
| **Production To Be Done**                                          | **What to make**                                                                                                                            |
| Production Value                                                   | That production, valued the same way as Stock Value                                                                                         |

**Avg Daily Qty** and **Reqd Buffer Qty** appear while **Show Avg Daily Sale Column** and **Show Required Buffer Qty Column** are ticked, which they are by default. **Stock Value** needs **Show Stock Value Column**, and **Production Value** needs **Show Production Value Column**. **WIP Qty** and **Pending SO Qty** appear only when **Less WIP Qty** or **Add Pending SO Qty** is ticked.

### A worked example

Take a row that reads, for a 90-day period:

| Category | Sale Qty | Avg Daily | Buffer Days | Reqd Buffer | HO Stock | Production |
| -------- | -------- | --------- | ----------- | ----------- | -------- | ---------- |
| A        | 1,200    | 13.33     | 10          | 133.33      | 40       | 94         |

Read across: this product sold 1,200 units over 90 days, which is 13.33 a day. It is a category A product, so your policy says hold 10 days of cover — 133.33 units. You currently have 40, which leaves 93.33. With **Round Production To** set to a whole number, that rounds up: **make 94.**

Every row works the same way. Once you have followed one, the whole report is readable.

### Totals and grouping

**Category Total** gives a subtotal for each category, and **Grand Total** a total for the report; both are on by default. Ticking **Company** or **Group** under **Item Consolidation** rolls the rows up to that level, so you can see production requirements by range rather than only product by product. **Item Totals** starts a fresh break in the printed report at each change of a level, which works cleanly only for a level you also roll up by, because the rows are in rank order.

If your business uses its own product classifications, those can be added as extra columns. Each one you add splits the rows, and so changes the categories.

If you do not need every column, several can be switched off for a shorter report.

## Common questions

**The stock total does not match my stock report.**

By default this report only lists products that sold during the period, so its stock total covers only those products — not your whole warehouse. That is usually what you want for production planning.

If you need the totals to agree, switch on **Include Zero Sale Items**. Products with stock but no sale are then added, so the total agrees with a stock report for the same branches, godowns, date and deductions.

Be aware that this also changes your A/B/C split, because the categories are shares of the list and the list has just grown. **Switch it on when you want to reconcile; switch it off when you are planning production.** Do not leave it on permanently.

**Category A has thousands of products in it.**

That happens when sales are spread fairly evenly across a large catalogue rather than concentrated in a few lines. Ten per cent of a huge list is still a huge list.

Set **Classification Method** to **Fixed Item Count** and category A to 100. You get a work list of exactly 100 products — 100 per group if you rank within item groups.

**A product shows a negative production figure.**

You have more stock than your policy calls for — a surplus. **Floor Production At Zero** is on by default and shows a surplus as zero. A negative appears when **Show Surplus As Negative** is ticked (it overrides the floor), or when both are off. A negative tells you not to make any, and by how much you are over.

**Head office stock looks far too high.**

Check that head office branches are selected — with none, every branch's stock is counted. Then check whether you are grouping the report by company or item group rather than showing individual products. At a grouped level, if anything in that group sold, the group's entire stock is included. Switch to product level for a like-for-like view.

**A product I know sells well is at the bottom of category C.**

This can happen when a return processed during the period relates to an invoice from before it. The return is deducted but the original sale is outside the window, leaving a positive quantity with a negative value.

Switch **Rank Products On** to **Sale Qty**, or untick **Net Off Sale Returns**, and it will sit where you expect.

**I added an extra grouping column and the categories changed.**

Expected. Adding a grouping level changes the level at which products are ranked, so the categories re-form around the new grouping.

**The figures look wrong generally.**

Check three settings before anything else — the **sales period**, whether **inter-branch transfers** are being counted as sales, and **Sale Value Basis** / **Rank Products On**. Between them they explain most surprises.

## Getting good results from it

**Start simple.** Three categories, a three-month period, transfers excluded — these are the starting settings. Run it, look at whether the products in category A are the ones you would have named yourself. If they are, the settings are right and you can refine from there.

**Sense-check the first run against what you know.** You already have a feel for your best sellers. If the report disagrees with that instinct, it is usually the sale definition — most often transfers being counted — rather than the report being wrong.

**Review the policy occasionally, not constantly.** Buffer days and category widths are a business decision. Once a quarter is plenty. Changing them every run makes your production plan jump about for no good reason.

**Run it on a regular rhythm.** Weekly or fortnightly works well. The value comes from acting on it consistently, not from running it once.

**Use the fixed item count if your catalogue is large.** A list of 100 products you can act on beats a list of 5,000 you cannot.

**Remember it is a proposal, not an instruction.** The report applies your policy to your sales history and suggests a quantity. You still bring what it cannot know — a promotion coming up, a customer about to place a large order, a raw material you cannot get this month. Treat it as a well-informed starting point for your planning meeting.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://kb.logicerp.com/logic-erp-learning-hub-tutorials-and-best-practices/reports-queries/customer-+-item-sale-analysis/abc-sale-analysis-stock-norm-and-production-plan/abc-sale-analysis-stock-norm-and-production-plan-user-guide.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
