I have 3 domains of supplier data (Jan 2017 to Jan 2022) and they are as follows

a) Purchase data - Contains all the purchase (of product) data made by the suppliers with us. It contains columns such as purchase date, invoice number, product id,supplier id,project name

b) Inventory data - Contains the stock/inventory info of our product with the suppliers (in their warehouse). This is reported every month. It contains columns such as supplier id, product id, inventory_reported_date, qty_in_stock etc. There is no project name here.

c) Order backlog data - Contains the pending orders yet to be delivered by us to the suppliers. Meaning, the suppliers have already booked orders with us for products but we are yet to deliver. It contains columns such as supplier id, supplier name, product id, qty ordered, supplier_requested_delivery_date,company_delivery_confirmed_date etc

Now, I would like to come up with a rule to identify suppliers who are likely to leave us or stay with us. We plan to build supplier attrition ML model. For this, however, we don't have any ground truth with us (to know whether a supplier left us or not). So, we would like to create rule based label to indicate supplier attrition risk. It could be high risk and low risk. Meaning, high risk indicates supplier who is highly likely to leave and low risk means supplier who is less likely to leave us

please note that a supplier can buy same product multiple times for the same project and also for different projects

some of the points that I could think of is as below but am not sure whether it is correct or logical

a) Decline in order backlog - I can find out the average order backlog for a specific product by a supplier over time (Jan 2017 to Jan 2020) and how it is doing from Feb 2020 to Jan 2022. If the trend is declining, should I mark it as high risk?

b) Decline in purchase history - I can find out the average purchase time period (like every 3 months, 6 months etc) for a specific product by a supplier over time (Jan 2017 to Jan 2020) and how it is doing from Feb 2020 to Jan 2022. If the trend is declining, should I mark it as high risk?

c) Inventory data - If inventory is not reported for a specific product by a supplier, is it okay to consider that supplier left us for that specific product? But it is not realistic to expect supplier to buy all products available with us. He will only buy what he wants (and reports inventory only for what he buys)

Can I seek your suggestions and views on how we can arrive at a rule based label for supplier attrition scenario?


1 Answer 1


Decline in the purchase history seems to be a logical data to determine the churn. The approach to this would be simple :

  1. Try to calculate the average purchase cycle & average order value of each supplier

  2. Now you can define churn rule on following basis:

    a. Supplier whose purchase cycle lies in +- 10% of average purchase cycle and order value in +- 10% of of averge order value ---- No Risk Customer

    b. Supplier who purchase cycle has increase but order value have also increase in the same ratio ---- Low Risk / No Risk

    c. Supplier whose purchase cycle has remained same but order value has decreased over last 2-3 order ---- High Risk

    d. Supplier whose order value is same but purchase cycle has increased over last 2-3 cycles --- Risk (Needs attention)

    e. Supplier whose order value has decreased and purchase cycle has increased --Very High Risk Likely to churn

  • $\begingroup$ Thanks for your help.upvoted $\endgroup$
    – The Great
    Apr 20, 2022 at 11:12
  • $\begingroup$ is there any reason why you feel decline in inventory or backlog may not be useful? I see you have excluded them.may i know why? $\endgroup$
    – The Great
    Apr 20, 2022 at 11:13
  • $\begingroup$ Additionally, should I do this for my full my dataset of 5 years? Then in that case, aren't we doing this incorrectly because I am labelling based on full dataset (which has full info of him purchasing qithin average and without average). Meaning, that average is computed based on all his good amd bad records.. $\endgroup$
    – The Great
    Apr 20, 2022 at 11:21
  • 1
    $\begingroup$ I think inventory & backlog maybe a data which depends directly on orders. Thats why i did not see much value. But given you are having closer look at the data you can account for backlogs in the caulculation of orders $\endgroup$ Apr 20, 2022 at 12:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.