Procurement supplier score weighting calculator

Calculate composite scores and weight coverage with your own figures.

Your numbers

Use the units shown. Results update as you change valid inputs.

Use composite scores and weight coverage to compare changes to your inputs. The method and limits below explain the scope.

Examples

Examples

Try the starting example

JSON Suppliers [ID,normalized criterion scores; null means missing]
[["A",[0.8,0.9,0.7]],["B",[0.9,null,0.8]]]
Criterion weights
0.4,0.4,0.2
Composite scores and weight coverage
[["A",0.82,1],["B",0.866666666667,0.6]]

Try another scenario

JSON Suppliers [ID,normalized criterion scores; null means missing]
[["A",[0.8,0.9,0.7]],["B",[0.9,null,0.8]]]
Criterion weights
0.2,0.3,0.5
Composite scores and weight coverage
[["A",0.78,1],["B",0.828571428571,0.7]]
Calculation method

Calculation method

Composite scores and weight coverage

J([[r[0],sum(v*w for v,w in zip(r[1],b) if v is not None)/sum(w for v,w in zip(r[1],b) if v is not None),sum(w for v,w in zip(r[1],b) if v is not None)/sum(b)] for r in a])

Symbols and units
a
JSON Suppliers [ID,normalized criterion scores; null means missing]
b
Criterion weights

Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.

Calculation steps and notation

sum(list) adds all entries in the list.

Assumptions & limits

Assumptions & limits

  • Scores already normalized so larger is better; weights nonnegative and each supplier has positive observed weight. Missing scores excluded and weights renormalized; expose coverage. Supported limits: All numeric inputs must be finite. Only the explicitly described mathematical scenario is supported.
Are these inputs private?

These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.

Share this page
Share this calculator

Leave unchecked to share the page without your entered values.