Pakk Documentation
More HelpSubmit TicketPakk.io
  • Docs Home
  • Pakk Explained in 2 Minutes
  • Account Setup
    • Brands
    • Shipping Methods
      • Restricting Shipping Methods
      • Shipping Calculations
    • Payment Methods
      • Stripe
      • Paypal
      • Paytriot
      • VivaWallet
    • Admin Panel
      • Beginner Tutorial Series
        • Part 1: Overview of the Main Menu and Auxiliary Functions
        • Part 2: Overview of the Main Menu and Entities in the Admin Panel
        • Part 3: Overview of Data Management Features: Sorting, Filtering, and Bulk Actions
        • Part 4: Warnings and Detail Views
        • Part 5: Auxiliary Functionality
      • List Views
        • List View FAQs
      • Troubleshooting
  • Suppliers and Purchasing
    • Purchase Orders
      • Item Types
      • Stock Receipts
      • Invoicing and Payment
    • Demand Planning
      • Approaching the Demand Planner
      • Data Sources
      • Concepts
      • The Maths Behind the Predictions
      • Order Screen
  • Customers and Sales
    • Leads
    • Orders
      • Order Sources
        • Telephone Orders
        • In-Person Sales
      • Item Types
      • Order Status
        • Committed
        • Invoiced/Cash Saled
        • Dispatched
        • Paid
      • Order FAQs
    • Sales
      • Limitations of Sales
      • Entering and Processing Sales
      • Invoicing
      • Cancellation, Returns, Credits and Refunds
    • Credit Management
      • Payment Methods and Flows
      • Credit Terms
      • Credit Management
      • Credit Control
    • Credits, Refunds, Returns and Replacements
      • Customer Credits
        • Raising a Credit
        • The Impact of a Credit
        • Using a Credit
        • Checking Your Logic
      • Returns
      • Common Scenarios
    • Help Desk
      • Tickets
      • Configuring your Help Desk
      • Ticket Creation
      • Ticket Management
    • Loyalty Program
      • Set up Your Loyalty Program
      • Activate Your Loyalty Program on Site(s)
      • Administer your Loyalty Program
      • Accounting Considerations
  • Accounting, Bookkeeping and Finance
    • Accounting Overview
    • Accountants Guide to Pakk
    • Journal Entries
    • Rounding
    • Period Locking
    • Reconciliations
      • Create a Reconciliation
      • Build the Reconciliation
      • Completing Reconciliations
    • Cost of Goods Sold (COGS)
    • Multi-Currency
      • Exchange Rates
  • Products and Inventory
    • Pricing
      • Base Price
      • Bulk Pricing
      • Pricing Schemes
      • Per-Site Pricing
      • Web Discounts
      • Discount Adjustment Lines
      • Composite Products
    • Stock Control
      • Batches
        • Reusing Batches
    • Custom Product Attributes
      • Attribute Types
      • Attribute Setup
      • Apply to Products
    • Stock Adjustments
      • Stock Valuation
      • Assembly Builds
    • Multi-Location
      • Setting Up Locations
      • Items, Batches and Locations
      • Moving Stock between Locations
      • Incoming Stock
      • Outgoing Stock
    • Gross Margin Calculation and Control
      • Set up Default Variable Cost Parameters and Target Margin
      • Overrides
      • Margin Calculations
  • Websites
    • Visual Style Guide
      • Logo
      • Colour
      • Typography
      • Header
      • Custom CSS
      • Imagery
      • Icons
    • Configuration and Customisation
      • Website Development
      • Navigation Menus
        • Menus
        • Slots
          • Aux Bar Menu
          • Main Menu
          • Footer Menu
    • Product Categorisation
      • Related Groups
      • Product Variants
        • Variant Axes
        • Custom Attributes
        • Variant Category
        • Category List Page
        • Variant Shell Page
      • Category Warnings
    • Filtering and Sorting
      • Sorting
      • Filtering
    • Content
      • FAQs
        • Setting up FAQs
        • Using FAQs Around Your Site
      • Pages
      • Posts
      • Forms
        • How Customer Forms Work
        • Advanced Customisation
        • Confirmations, Notifications and Form Submissions
        • Use Cases and Examples
      • Feature Blocks
      • Feed Posts
      • Videos
    • SEO
      • What you need to do
      • What you don't need to worry about
    • Google Services
      • Analytics
      • Merchant Centre and Shopping Feed
      • Search Console and Sitemap
      • Adwords
    • GDPR, Privacy and Cookies
      • GDPR
      • Cookies
    • Reviews
      • Merchant Reviews
        • Shopping Experience Reviews
      • Product Reviews
    • Checkout
      • New Customers
      • Invoice Options
      • Custom Checkout Questions
      • Signup Options
    • Passwordless Login
    • Webstore Features
    • Email Sending
  • Admin and Reporting
    • Document Storage
    • Email Sending and Receiving
      • Postmark Setup
    • PDFs and Printing
  • Data and Integrations
    • Using Pakk with Other Systems
      • Pakk Integrated to Legacy Stock System
    • Data Import and Export
      • Export
        • CSV Conventions
        • List Fields
      • Import
        • Referencing Other Records
        • Test then Commit
        • Advanced
        • Importing Images & Documents
      • Tips and Tricks
    • API
      • Integrations
      • API Keys
      • Authentication
      • Integration Data (Key-Value Store)
      • Exploring API Requests and Responses
      • API Structure
        • Utility Endpoints
        • Generic Entity API
        • RPC API
        • CSV API
        • Document API
    • Webhooks
      • Setting Up a Webhook
      • Configuring the Webhook
      • Webhook Signature Verification
      • Data Transformation
      • Testing the Webhook
      • Webhook Execution Log
  • Pakk Services
    • Fulfilled by Pakk (FBP)
      • Overview of the Integration
      • Configuration
      • The FBP Tab
      • Products
      • Orders
      • Purchase Orders/ASNs
      • List Views
    • PakkPay
      • How to Setup PakkPay
Powered by GitBook
On this page
Export as PDF
  1. Suppliers and Purchasing
  2. Demand Planning

The Maths Behind the Predictions

PreviousConceptsNextOrder Screen

Last updated 8 months ago

For a more detailed rundown of maths that power the demand planner, check out our blog post .

You’ll notice I haven’t actually explained how the demand planner “works” from a mathematical perspective. Well, that’s partially because it’s only semi-relevant to you, as a user. Of course, understanding the mechanics of the calculations will help you get your head around the predictions it makes and potentially understand any odd recommendations, but you don’t need all your team to fully understand the algorithms at work.

The core calculation the demand planner makes is based on the “weekly average sales” of each item. If you want to stop there, that’s a good place to leave your understanding. So, if you sell, on average, 10 units a week of SKU_A and have “stock cover” set to the default 4 (one month), the demand planner will aim for a stock level of at least 40 after placing the order. That's a big simplification - the demand planner will actually tend to encourage you to order more in order to be more confident of being able to fulfil orders if demand is higher than normal. More on that in a minute.

I say “aim for a stock level of 40” rather than “order 40” because the demand planner, as explained previously, takes into account how much of the product you already have on hand, how much is already on order from the supplier and how much is on back order from customers. Hence it might be the case that you already have 50 available, in which case you’d have more than enough and no order would be necessary. That’s one of the nice aspects of having all your stock data in one place!

Of course, there’s more to the calculation than “average weekly sales”, but that’s a good starting point for understanding the algorithm. We also take into account an element of “variability” to adjust the order recommendation: for example, the average sales per week might be 10, but what if this is made up of some weeks where 100 are sold and some weeks where none are sold - this will significantly impact the stock you need to have on hand in order to be confident of fulfilling orders.

Confidence is actually the key word here. The demand planner uses a statistical concept called “Confidence Intervals” in order to calculate a stock recommendation for which is can be “pretty confident” you’ll have enough stock to get through the stock cover period you’ve set. Of course, it can never be 100% confident - for that you’d have to order 20 times more stock than you really need, so it would be a useless approach. But “pretty confident” is normally a good balance between not overstocking too much and being able to fulfil your orders.

The exact level of confidence used by the demand planner is influenced by the 'strategy you choose' (see above). For example, if you choose 'Avoid Stockouts Aggressively', the system will use a 95% confidence interval, which means a statistical chance of running out of stock of 2.5%. Unfortunately, the more aggressive the strategy you use (in terms of avoiding stockouts), the more stock you'll need to order. Therefore, if capital outlay is more important to you than keeping everything in stock, choose a less aggressive strategy like 'Balanced overstock' or 'Minimise Outlay' (which will actually deliberately underorder).

At the end of the day though, it’s just a guess, so you should add in some human expertise. Just understand that the demand planner will encourage you to order more than you need to cover average sales, because it tries to help you maintain 100% stock coverage and avoid stock outages.

If you want to be more conservative in your ordering and are less concerned about stock outages, you should adjust your ordering downwards.

Some Simple Math To Improve Your Stock Ordering