Allocation of indirect costs to several list items

  • 1 February 2023
  • 2 replies

Hello community,

I contact you regarding an issue of indirect costs allocation to several list items.

I have (fictive number) 10K€ of indirect costs categorized as “No checkout ID” which i want to allocate to each item of my item lists based on an allocation key.

To do so i’ve created 2 metrics based on 2 unique dimensions :
1. “Id_checkout” (Item list to which the direct costs and indirect costs are to be allocated)
2.  “Month” (because the allocation is based on a monthly basis)

First metric - Checkout level test - Consolidation of indirect costs
→ Filter on Indirect costs (“No checkout Id”)
→ Dimensions : Date (Month), Id_Checkout 

Second metric - Allocation Key Fees Test - Indirect cost allocation Key

→ Logic is to divide the direct costs allocated to each item list by the total cost of the month
1. Checkout level test - Direct cost per item - 2 dimensions (ID_checkout, Month)
2. Checkout level Fees for allocation key - Total cost per month - 1 dimension (Month)

→ It will give to each item list a weight in the total of fees of the month. We will use this weight to allocate the indirect costs.


Final metric - Concatenation of the 2 first metrics
→ “Checkout level test” multiplied by the “Allocation Key Fees” 

The issue is on this metric -→ There is no result whereas i should expect the below result :

Initial indirect : 

Weight allocation : 
Item 1 - 50%
Item 2 - 10%
Item 3 - 40%

Final metric : 
Item 1 : 100*50% = 50
Item 2 : 100*10% = 10
Item 3 : 100*40% = 40

My hypothesis is an issue of Dimension somewhere on the several metrics, but i did not identified where.

thank you very much for your time and help.


Best answer by francois 1 February 2023, 11:14

View original

2 replies

Userlevel 6
Badge +7

Hello Thomas,

Good job on getting this far!

Do I understand this correctly?

First metric - Checkout level test - Consolidation of indirect costs
→ Filter on Indirect costs (“No checkout Id”)
→ Dimensions : Date (Month), Id_Checkout 

So the values here should only be on the item No checkout Id and not on the other id_checkout?

If that’s the case, I would remove the id_checkout dimension, and only structure it by month. You could either use [FILTER: id_checkout."No checkout Id"][REMOVE : id_checkout], or [SELECT: id_checkout."No checkout Id”] which do the same if your block is by id_checkout. In your case, you could also go with [FILTER: transaction.id_checkout = id_checkout."No checkout Id"][BY: transaction.Month] and not have a BY: Transaction.id_checkout


When you then multiply the value by the allocation key, you could either have a [ADD: id_checkout] to put the same value on all id_checkout or let Pigment do the allocation (better performance, less clear outcome if you’re new). Have a read on this article to discover what happens when you multiply blocks that do not share all dimensions.



Let me know if that helps you.

Thanks a lot François.

It works now, The issue was indeed localized in the Metric 1 -→ I just had to add [REMOVE : id_checkout].

typo on the initial post i posted the wrong printscreen ==> [filter:TL_FEES_V2.Checkoutall<>id_checkout."No Checkout id"] to be corrected in [filter:TL_FEES_V2.Checkoutall=id_checkout."No Checkout id"]