Recommendation catalog coverage calculator

Calculate catalog coverage fraction and user coverage fraction with your own figures.

Your numbers

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

Use catalog coverage fraction and user coverage fraction to compare changes to your inputs. The method and limits below explain the scope.

Examples

Examples

Try the starting example

JSON Eligible catalog item IDs
["A","B","C","D"]
JSON Recommendations [user ID,item ID]
[["U1","A"],["U1","B"],["U2","A"]]
JSON Eligible user IDs
["U1","U2","U3"]
Catalog coverage fraction
0.5
User coverage fraction
0.666667
Largest item exposure share
0.666667
Out-of-catalog recommendation rows
[]

Try another scenario

JSON Eligible catalog item IDs
["A","B","C","D"]
JSON Recommendations [user ID,item ID]
[["U1","A"],["U1","B"],["U2","C"],["U3","D"]]
JSON Eligible user IDs
["U1","U2","U3"]
Catalog coverage fraction
1
User coverage fraction
1
Largest item exposure share
0.25
Out-of-catalog recommendation rows
[]
Calculation method

Calculation method

Catalog coverage fraction

len({r[1] for r in b if r[1] in a})/len(a)

User coverage fraction

len({r[0] for r in b if r[0] in c})/len(c)

Largest item exposure share

max(sum(r[1]==k for r in b) for k in a)/len(b) if b else 0

Out-of-catalog recommendation rows

J([r for r in b if r[1] not in a])

Symbols and units
a
JSON Eligible catalog item IDs
b
JSON Recommendations [user ID,item ID]
c
JSON Eligible user IDs

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

  • Exact item/user coverage of supplied recommendation exposures. Catalog and user denominators nonempty; repeated exposures count toward concentration. 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.