Choicery Tutorial Series

MaxDiff Simulation

Turning MaxDiff preference scores into item rankings, share of choice, optimal assortments (TURF), and absolute purchase probabilities. A complete reference to every page in the Choicery MaxDiff Simulation workspace.

Choicery Methodology Reference | July 2026

Contents

Part I · Practical Guide
  1. What Is MaxDiff Simulation?
  2. Prerequisites
  3. The MaxDiff Simulation Workspace
    • Run picker, filters, page navigation
  4. Item Rankings (Five Metrics)
  5. Assortment Simulator
  6. TURF Analysis
    • Settings, reach definitions, results, ladder
  7. Anchor Analysis (Anchored MaxDiff only)
  8. Exports and Reports
  9. Best Practices & Pitfalls
Part II · Theoretical Background
  1. Key Definitions
  2. Reach Definitions: The Mathematics
  3. The TURF Optimization Problem
  4. Shapley Contribution to Reach
  5. The Anchored Calibration Model
  6. Known Limitations
  7. References
Part I

Practical Guide

How to use the MaxDiff Simulation page in Choicery, page by page, in the order you meet them.

1. What Is MaxDiff Simulation?

A MaxDiff (best-worst scaling) study asks people which item they like most and least, again and again, across many small sets. After estimation (Hierarchical Bayes), every respondent ends up with an individual preference score for each item. On its own, that is just a pile of numbers. MaxDiff Simulation is the page where you turn those scores into decisions.

The page is organised as a short sequence of analyses, and you meet them in this order:

  1. Item Rankings. The page you land on first. How do the items rank, under several definitions of "preferred"? This is your starting point: read it before anything else.
  2. Assortment. If only a chosen set of items were on offer, what share would each win?
  3. TURF Analysis. Which small set of items reaches the most people? (TURF is explained in full in Section 6.)
  4. Anchor Analysis. For Anchored MaxDiff studies only: what is each item's absolute purchase probability, not just its relative rank?
Where you find it in the Conjoint Analysis hub
Within the Conjoint Analysis hub the corresponding entry is labeled "TURF & Simulator" (a compound label covering both the assortment simulator and the TURF page). If you arrived from there, the page you land on is the same MaxDiff Simulation workspace described in this guide.
Start with the rankings
The page opens on Item Rankings for a reason: you should understand which items people prefer, and by how much, before you simulate assortments or run TURF. Everything downstream is built on the same individual scores you see ranked here.

The car-feature example used throughout this guide

A car manufacturer ran a MaxDiff study on eight features and now wants to know which features to feature prominently. We will use this study in every section:

Item #MaxDiff item (feature)
1Safety Rating
2Fuel Efficiency
3Interior Space
4Design
5Resale Value
6Technology Package
7Warranty
8Brand Reputation

2. Prerequisites

The MaxDiff Simulation page is a consumer of analysis results, not an estimator. Before it shows anything, two things must already exist.

1

A MaxDiff or Anchored MaxDiff task. TURF is only available for MaxDiff studies. If the project has no MaxDiff task, the page shows the message "This project contains no MaxDiff or Anchored MaxDiff tasks. TURF analysis is only available for MaxDiff studies."

2

A completed Preference Analysis (HB) run for that task. TURF needs individual-level utilities, which come from the Hierarchical Bayes estimation. If no completed run exists, the page shows "No Completed Run for This Task" with a button Go to Preference Analysis. Run HB first, then return.

Where it lives
Open a project, open the Analysis menu in the top navigation, and select MaxDiff Simulation. The page itself is headed MaxDiff Simulator, and its URL pattern is /projects/<project_id>/analysis/turf. The page has its own dedicated run picker (listing MaxDiff and Anchored MaxDiff runs only). It shares the segment filter component with the Market Simulator, but the active analysis run is independent.

3. The MaxDiff Simulation Workspace

The page has a left sidebar for choosing what to analyse and a main area with one page per analysis. The sidebar is always visible.

MaxDiff
Run
HB Run 1 (Car Features MaxDiff)
Estimation Method: HB 312 respondents 10000 iter 4 chains
 Filters
Pages
Item Rankings
Assortment
TURF Analysis
Anchor Analysis
Report
Download PDF
Methodology Guide
8 items
Figure 1. The MaxDiff Simulation sidebar: run picker with respondent count, the Filters button, page navigation, and the Report section with the PDF download and the Methodology Guide link (this document). The "Anchor Analysis" entry only appears for Anchored MaxDiff runs.
The MaxDiff Simulator page with the sidebar (Run picker, meta lines, Filters and Reset, Pages list, Report section) and the Item Rankings page
Figure 1. The MaxDiff Simulator page (Pizza study, anchored run): the sidebar with the Run picker, Estimation Method, respondent count and Anchored badge, the Filters and Reset buttons, the Pages list and the Report section, next to the Item Rankings page.

Run picker

The Run dropdown (a standard <select> control) lists every completed MaxDiff run in the project. Each option carries its own task, so picking a run from a different task (for example switching between a normal and an Anchored MaxDiff study) switches the task automatically. Choicery detects whether the selected run is anchored and shows the Anchor Analysis page accordingly.

Filters (segment filter)

The Filters button restricts every analysis on the page to a subset of respondents, defined by their answers to other survey questions (for example "women under 35" or "premium buyers"). When a filter is active, rankings, share-of-choice, and TURF reach recompute on that subset. The Anchor Analysis calibration cards remain a full-run diagnostic and say so explicitly. This is the same shared segment filter used by the Market Simulator.

Page navigation

The main area has up to four pages, selected from the Pages list:

PageWhat it answers
Item RankingsHow do the items rank, under five different definitions of "preferred"?
AssortmentIf only these items were on offer, what share would each win?
TURF AnalysisWhich set of K items reaches the most respondents?
Anchor Analysis(Anchored MaxDiff only) What is each item's absolute purchase probability?

4. Item Rankings (Five Metrics)

The Item Rankings page ranks all MaxDiff items. A single Metric dropdown switches between five views of the same individual utilities. Each metric answers a slightly different question, so they can produce different orderings, which is exactly why all five are offered.

Item Rankings
Summary XLSX Full XLSX
Relative Preference
Figure 2. The metric selector. Summary XLSX omits respondent-level sheets; Full XLSX includes them.
Relative Preference
PNG CSV
Item
Value
1
Safety Rating
22.4%
2
Fuel Efficiency
18.1%
3
Resale Value
15.0%
4
Warranty
12.2%
5
Brand Reputation
9.7%
6
Technology Package
8.0%
7
Interior Space
7.0%
8
Design
7.6%
Figure 3. Relative Preference: the top three items carry the gold rank badge and gold bar; the rest use the sage bar. The Conjoint Analysis hub shows the same scores in its Preference Scores card, where a second button switches to the Preference Index scale; the Simulation page always uses the relative share.
The Item Rankings page with the Metric dropdown and the Relative Preference bar list, plus the Summary XLSX and Full XLSX buttons
Figure 2. The Item Rankings page: the Metric dropdown (Relative Preference, First Choice, Softmax Preference Share, Shapley Contribution, Rank Comparison), the Summary XLSX and Full XLSX buttons and the Relative Preference bar list with the P(Accept) column of the anchored run.

The five metrics

MetricWhat it measuresSums to
Relative PreferenceMean individual preference share: each respondent's MaxDiff utilities are converted to a 100% share across all items, then averaged. The default view.100% across items
First ChoiceShare of respondents whose single highest-utility item is this item. Exact ties split equally.100% across items
Softmax Preference Share (%)The softmax share exp(u) / Σ exp(u) averaged over respondents.100% across items
Shapley ContributionEach item's fair share of total TURF reach, averaged across portfolios (see Section 13).100% across items
Rank ComparisonA table that keeps the Relative Preference order and shows each item's rank under all the other methods side by side.n/a
How to read Relative Preference
With 8 items, a perfectly indifferent respondent would spread 100 / 8 = 12.5% across each. So anything above 12.5% is an above-average item and anything below is below-average. In Figure 3, Safety Rating at 22.4% is nearly twice the random baseline; Design at 7.6% is well below it.

Why First Choice can disagree with Relative Preference

First Choice is "winner takes all" per respondent, so it rewards items that are somebody's absolute favourite, even a polarising item that many others rank last. Relative Preference is a smoother average. An item that is nobody's number one but everybody's solid number two can rank higher on Relative Preference than on First Choice. Reading both protects you from a single misleading view.

5. Assortment Simulator

The Assortment page answers: "If the only options were the ones I tick, what share would each capture?" Tick the items in the Select Assortment card, click Simulate, and Choicery computes a share of choice on the individual utilities and averages across respondents. At least two items must be ticked; with fewer, the page answers "Select at least 2 items."

Select Assortment
Simulate
Safety Rating
Fuel Efficiency
Design
Resale Value
Warranty
Share of Choice Results
PNG CSV
Safety Rating
46.8%
Fuel Efficiency
36.5%
Design
16.7%
Figure 4. Tick the items on the left, simulate, and read each item's share on the right. Shares sum to 100% across the ticked items.
No "None" option here
MaxDiff and Anchored MaxDiff do not include a None alternative in this share-of-choice view. Every respondent is forced to pick one of the ticked items, so the shares describe relative pull within the set, not absolute demand. For absolute "would they buy it at all" numbers, use Anchored MaxDiff and the Anchor Analysis page (Section 7).

Use this page to compare line-ups directly: "if we only promoted Safety, Fuel Efficiency, and Design, Safety takes almost half the attention." It is the MaxDiff cousin of CBC market simulation, but on items rather than full product profiles.

6. TURF Analysis

This is the heart of the page. You set up to four controls, click Run TURF, and Choicery searches for the item sets that reach the most respondents.

TURF Settings
Run TURF
3
5
Item is in respondent's top-K
2
A respondent is reached if at least one assortment item is in their personal top 2. K is capped below item count to avoid tautological reach.
Figure 5. TURF Settings. Assortment Size and Ladder Size default to 3 and 5; the Reach Definition defaults to "Item is in respondent's top-K". The help line under the controls updates to describe the chosen reach definition. The K (top items) field only appears when the reach definition is "Item is in respondent's top-K"; its default depends on the number of items (here 2 for the 8-item example study).
The TURF Settings card with Assortment Size, Ladder Size, the Reach Definition dropdown, K (top items) and the Run TURF button
Figure 3. The TURF Settings card: Assortment Size, Ladder Size, Reach Definition, K (top items) and the Run TURF button.

The four settings

SettingMeaningDefault
Assortment SizeHow many items go in the set you are optimising (the K in "best K items"). Maximum is the number of items in the study.3
Ladder SizeHow far the greedy ladder builds (Section 12). The ladder shows the best 1 item, then 2, up to this size.5
Reach DefinitionWhat counts as "this item is acceptable to this respondent". See below.Item is in respondent's top-K
K (top items)Only used when the reach definition is "top-K": an item counts if it is in the respondent's personal top-K. K is capped one below the number of items, so a set can never reach everyone by definition alone.Top quartile of the item list, at most 5 (see below)

How the default K is chosen. When you do not set K yourself, Choicery uses the top quartile of the item list, capped at 5: K = max(1, min(5, ceil(number of items / 4))). In practice that is 6 items → 2, 8 → 2, 10 → 3, 12 → 3, 16 → 4, 20 or more items → 5. A fixed default of 5 would make reach trivially high in short lists: with "top 5 of 6" almost every item reaches almost every respondent, so every assortment looks equally good. Tying K to the list length keeps "reached" meaningful across studies of different sizes. A K you type in is used as entered; it is only limited to one below the number of items, and the results card says so when that happens.

There is no execution-mode setting. A search that does not fit the interactive work budget (Section 12) is handed to the analysis worker automatically when a worker is available, and the results appear when it finishes (the page waits up to 15 minutes). Without a worker, Choicery returns a message asking for a respondent segment, a smaller assortment or fewer items.

Reach definitions

The Reach Definition is the most important choice on this page. It decides how strict "acceptable" is, and it can completely change the answer. Choicery offers five definitions for every MaxDiff run, plus two more on anchored runs:

Option (verbatim)An item reaches a respondent when...Strictness
Item is in respondent's top-K...the item is among that respondent's top-K items by utility (K is the control above).Adjustable (default)
Weighted by probability...the selected items' exponentiated utilities are combined into one portfolio probability (see Section 11). The reported "Reach %" is then a mean probability, not a head count, and it does not reach 100% even for the full item set; the level depends on the number of items per MaxDiff set (see the note in Section 11).Balanced
First Choice (top item; ties split)...the portfolio contains the respondent's highest-utility item. Exact ties split one unit across the tied items.Strict
Item is in respondent's top half...the item is above the respondent's median utility.Lenient
Item is above respondent's mean (lenient)...the item is above the respondent's mean utility (which for MaxDiff is 100/n items).Very lenient
Calibration "Yes" answers (raw)...the respondent answered "Yes" to the item on the calibration screen. Only shown for Anchored MaxDiff.Real acceptance
Utility above anchor (model-based)...the item's estimated utility is above the respondent's anchor threshold from the HB model. Only shown for Anchored MaxDiff runs that carry anchor thresholds.Model-based acceptance
Why "above the mean" usually lies
With many items, almost every respondent has lots of items above their own mean, so any plausible set trivially reaches close to 100%. That looks great and tells you nothing. Prefer top-K (the default) with a small K or Weighted by probability, which force a genuine preference. The "above the mean (lenient)" label says lenient on purpose.

Reading the results

Before you run anything the results card is headed TURF Results. After Run TURF it is replaced by a card headed Optimal K-Item Assortment (with K the assortment size you chose), and the table inside it carries the sub-heading Top N Combinations, or Best Combination when only one is returned. It lists the best item combinations, ranked by reach. The best row is highlighted. Each combination shows its item IDs (the bracketed numbers), the item names, its reach and its frequency. Under the Weighted by probability reach definition the table changes its two right-hand columns: the ID column is headed Portfolio, and instead of Freq. you get Total, the summed portfolio probability across respondents.

Optimal 3-Item Assortment
PNG CSV XLSX
#IDsItemsReachFreq.
1[1][2][4]Safety Rating · Fuel Efficiency · Design88.1%1.7
2[1][2][6]Safety Rating · Fuel Efficiency · Technology Package86.5%1.8
3[1][2][5]Safety Rating · Fuel Efficiency · Resale Value85.9%2.0
Figure 6. The finished TURF result, headed "Optimal 3-Item Assortment". The winning set of three reaches 88.1% of respondents. Note it includes Design (item 4), which ranked last on Relative Preference: it earns its place by covering people the top items missed.
The headline TURF insight
The top-ranked item is almost always in the best set, but the second and third members are often not the second and third best items. Variety beats popularity. That is the whole point of TURF, and the reason you cannot just read it off the Item Rankings page.

Reach and frequency

The TURF ladder

Alongside the best combinations, Choicery builds a ladder up to your Ladder Size. It is a greedy build: start with the single item that reaches the most people, then add the item that adds the most new reach, and so on. Each row names the added item, its Gain (the marginal reach that item adds on top of the previous step), the Cumulative Reach of everything selected so far, and a Status column that reads "Adds reach" or, once reach has plateaued, "Redundancy only". The cumulative reach bar shows how quickly you saturate.

Reach often plateaus before the ladder is finished: at some point no remaining item can raise it any further. The ladder does not stop there. It keeps building to the size you asked for and marks those steps Redundancy only, with a Gain of +0.0%. At those steps, remaining candidates are ranked by Frequency instead of additional reach. With a binary reach rule, Frequency is the average number of selected items that pass each respondent's reach criterion; under Weighted by probability, it is the average summed item-probability mass. A candidate can tie on both measures, so adding it does not necessarily increase Frequency. A note under the table names the plateau value. Note that the plateau is not always 100%: with a binary reach rule, part of the sample can be unreachable by any item in the pool.

TURF Ladder
SizeIDAdded ItemGainCumulative ReachStatus
1[1]Safety Rating+62.0%
62.0%
Adds reach
2[4]Design+17.8%
79.8%
Adds reach
3[2]Fuel Efficiency+8.3%
88.1%
Adds reach
4[7]Warranty+4.5%
92.6%
Adds reach
5[6]Technology Package+2.4%
95.0%
Adds reach
Figure 7. The greedy ladder. The reach jump shrinks at every step (diminishing returns); here the fourth and fifth items add only about 5 and 2 points. The ladder is greedy, so it is a fast approximation, not a guaranteed optimum (see Section 12).
A finished TURF run with the Optimal 3-Item Assortment table and the TURF Ladder table with Size, ID, Added Item, Gain, Cumulative Reach and Status
Figure 4. A finished TURF run: the Optimal 3-Item Assortment card with the Top 10 Combinations (best row highlighted) and the TURF Ladder with Size, ID, Added Item, Gain, Cumulative Reach and Status.

Worked example: best 3 of 8 features

Settings: Assortment Size 3, Reach Definition "top-K" with K = 3, on 312 respondents.

Item rankings (Relative Preference): Safety > Fuel > Resale > ... > Design (last) Naive "top 3 by ranking": Safety + Fuel + Resale → reach 81.7% TURF optimum (size 3): Safety + Fuel + Design → reach 88.1% Why Design wins a slot: Resale-lovers mostly already like Safety or Fuel, so Resale adds little NEW reach. Design appeals to a distinct group that the first two items miss, so it adds +8 points of fresh coverage.

The 6.4-point gap between the naive pick and the TURF pick is the value TURF adds. The numbers are illustrative.

7. Anchor Analysis (Anchored MaxDiff only)

Standard MaxDiff is purely relative: it tells you item A beats item B, but not whether anybody actually wants either. Anchored MaxDiff adds a calibration screen where each respondent answers "Yes" or "No" for every item. Combining the relative HB utilities with those yes/no answers yields an absolute purchase probability per item. This page only appears for anchored runs.

Purchase Probability by Item
PNG CSV
Item
P(Accept)
Cal. "Yes"
1
Safety Rating
84.2%
81.7%
2
Fuel Efficiency
76.0%
74.1%
3
Warranty
58.3%
60.2%
4
Design
41.0%
39.4%
Figure 8. Purchase Probability by Item. The dark bar and value are the model's P(Accept); the teal value on the right is the raw calibration "Yes" rate, with no model involved. A small gap between them is healthy: the model smooths individual noise.
The Anchor Analysis page with the Purchase Probability by Item list, the Consideration Sets card and the Anchor Threshold card
Figure 5. The Anchor Analysis page of an Anchored MaxDiff run: Purchase Probability by Item with P(Accept) and Cal. Yes, and below it the Consideration Sets and Anchor Threshold cards.

The page opens with a collapsible How Anchored MaxDiff Works panel that summarises the method in two sentences. Below it sit three result cards:

CardWhat it tells you
Purchase Probability by ItemPer item, the model's P(Accept) next to the raw calibration "Yes" rate, ranked high to low. P(Accept) is absolute, so it does not sum to 100%.
Consideration SetsThe set of items each respondent would realistically consider (P(Accept) above 50%). Shows the average set size, how many respondents matched, and the distribution of set sizes.
Anchor ThresholdThe per-respondent utility cut-off above which an item is accepted (estimated jointly with the utilities in the HB run, or post hoc by maximum likelihood for TasteNet and older runs). Reports mean, standard deviation, min and max. A low threshold means a respondent accepts many items; a high one means only their very top items pass.
P(Accept) vs Relative Preference
On an anchored run, the Item Rankings page still shows relative shares that sum to 100%, while Anchor Analysis shows absolute P(Accept) that does not. Read them separately. Relative tells you ordering; absolute tells you whether people want the items at all. Choicery reminds you of this with a banner at the top of Item Rankings on anchored runs.

On anchored runs you also gain two extra reach definitions on the TURF Analysis page: Calibration "Yes" answers (raw), where "reached" means the respondent actually said yes on the calibration screen, and Utility above anchor (model-based), where "reached" means the item's HB-estimated utility exceeds the respondent's anchor threshold. The raw option is the most literal; the model-based option uses the smoothed HB estimate and is robust to single noisy calibration clicks.

8. Exports and Reports

Every result on the page can leave it. There are four export channels.

ButtonWhereWhat you get
PNGEach card headerA high-resolution image of that one card, for slides.
CSVEach card headerThe card's underlying tables as a spreadsheet-friendly CSV (UTF-8 with BOM). TURF Results includes both the combinations and ladder tables.
XLSXItem Rankings and TURF ResultsA multi-sheet workbook (see below).
Download PDFSidebar, under ReportA formatted PDF report of the whole TURF analysis.

The Download PDF button appears when results are loaded and your account has export permission for the project (without it the sidebar shows only the Methodology Guide link). If rankings, TURF, or assortment results are not current for the active filters, Choicery prepares them before queuing the report. While rendering, the button becomes Cancel PDF; polling stops after two minutes with a timeout message.

What is inside the XLSX exports

The Item Rankings XLSX exports bundle every metric. Use Summary XLSX for a compact shareable workbook or Full XLSX when respondent-level sheets are required:

The TURF Results XLSX contains:

Exports respect the segment filter
If a segment filter is active, every export (CSV, XLSX, PDF) is computed on that subset and the Settings sheet records "Segment Filter Applied: Yes". Always check that flag before sharing a file, so the audience knows whether they are looking at everyone or a slice.

9. Best Practices & Pitfalls

Do

Don't

Quick checklist before you present a TURF result
  1. Which run and task is selected? Is a segment filter active?
  2. Which reach definition produced these numbers?
  3. Does the chosen set beat the naive top-K set, and by how much?
  4. Where does the ladder flatten? Is your assortment size justified?
  5. For anchored studies: do people actually want these items (P(Accept))?
Part II

Theoretical Background

Definitions, formulas, the optimisation problem, and the literature behind the page.

10. Key Definitions

TURF (Total Unduplicated Reach and Frequency)
A method, borrowed from media planning, for choosing a portfolio of items that maximises the unduplicated share of an audience reached. "Unduplicated" is the key word: a person reached by two items in the set still counts once toward reach.
Reach
The proportion of respondents for whom at least one item in the portfolio is acceptable, under the chosen reach definition. The quantity TURF maximises.
Frequency
The average number of acceptable items per respondent inside the portfolio. A measure of redundancy, not of coverage.
Reach definition (threshold)
The rule that decides whether a single item is "acceptable" to a respondent: a continuous logistic probability, membership of the respondent's top-K, being above their median or mean, or a calibrated yes.
Individual utility
A respondent-specific preference score for each item, produced by Hierarchical Bayes estimation of the MaxDiff data. Choicery uses utilities on a 0 to 100 probability scale that sums to 100 per respondent, plus a zero-centered (latent) version for the logistic calculations.
Anchor / calibration
An extra survey screen (Anchored MaxDiff only) asking "would you accept this item, yes or no" for each item. It anchors the relative MaxDiff scale to an absolute one.
Consideration set
For anchored studies, the set of items a respondent would realistically consider, defined as items with P(Accept) above 50%.

11. Reach Definitions: The Mathematics

Let uij be respondent i's utility for item j (probability scale, summing to 100 over j), and let zij be the same utility zero-centered per respondent. For a portfolio S, respondent i is reached when any item in S passes the rule.

Weighted by probability

Selected items contribute jointly. For standard MaxDiff, their exponentiated zero-centered utilities are compared with the other a − 1 alternatives in a MaxDiff set of size a:

valuei(S) = Σj∈S ezij / (Σj∈S ezij + a − 1)
a is the number of items shown per MaxDiff set. Reach is the mean of valuei(S) over respondents.

Weighted reach has no 100% ceiling to aim for, and its level depends on a. The a − 1 competing alternatives always keep part of the probability, so even the full item set scores below 100%. For a respondent with flat (zero-centered) utilities the full set of n items scores exactly n / (n + a − 1): with 12 items and 5 per set that is 75%. Spread-out utilities push the value above that reference point, and it only approaches 100% for respondents whose preferences are very pronounced. Because a sits in the denominator, the same portfolio scores higher in a study with 3 items per set than in one with 5, so weighted reach levels are not comparable across studies with different set sizes. Compare portfolios within one study, or use a binary rule such as top-K when you need a head count. The TURF results show this reference value for the study at hand whenever Weighted by probability is selected.

For Anchored MaxDiff, the anchor is the comparison alternative. With respondent-specific threshold ti, use anchored utility zij − ti and denominator 1:

valuei(S) = Σj∈S ezij−ti / (Σj∈S ezij−ti + 1)
This is continuous portfolio reach. The count of respondents whose portfolio probability exceeds 50% is carried in the analysis payload as n_above_50pct; it is not shown in the results table and is not the reach.

First Choice

shareij = 1 / mi if item j is tied for respondent i's highest utility; otherwise 0
valuei(S) = Σj∈S shareij
mi is the number of items tied at the maximum. With no tie, exactly one item receives the respondent's unit of reach.

Top-K

reachedi = [ ∃ j ∈ S : ranki(j) ≤ K ]
An item passes if it is among respondent i's K highest-utility items. Ties at the cut-off are included.

K is capped below the number of items, so an item set can never reach everyone by definition alone.

Top half (median) and above the mean

median: reachedi = [ ∃ j ∈ S : uij > medianj(uij) ]
mean: reachedi = [ ∃ j ∈ S : uij > 100 / n ]
n is the number of items. The mean rule uses the equal-share baseline 100/n.

Calibration "Yes" answers (raw)

reachedi = [ ∃ j ∈ S : yesij = true ]
yesij is the respondent's literal answer on the calibration screen. No model is involved in the reach decision.

Utility above anchor (model-based)

reachedi = [ ∃ j ∈ S : uij > ti ]
uij is the zero-centered HB utility and ti the respondent's estimated anchor threshold. Uses the smoothed model estimate instead of single calibration clicks.

12. The TURF Optimization Problem

Finding the best portfolio of size K is a combinatorial optimisation. For n items there are C(n, K) possible sets. Choicery handles this in two complementary ways.

Exhaustive search (the TURF Results table)

For the headline result, Choicery enumerates all combinations of the requested size, computes reach and frequency for each, and keeps the best ones. This is exact: it is guaranteed to find the true optimum for that size. To stay responsive it enforces two limits:

LimitValueWhy
Maximum combinations evaluated250,000Beyond this the search is refused and you are asked to use a smaller size or fewer items.
Interactive work budget100 million respondent-item evaluationsA search above this is handed to the analysis worker automatically when one is available; the worker runs the same exact search under a larger budget (up to 3 billion evaluations). Without a worker the request is refused with a message.
Combinations kept10 on the page (API cap 100)The page asks for the ten best sets; the rest are discarded during the search via a bounded heap.

Combinations are ranked by reach first, then by frequency as a tie-breaker. The exhaustive search is why very large assortment sizes on many-item studies can hit the cap: C(40, 8) already exceeds 76 million.

Greedy ladder (the TURF Ladder table)

The ladder uses a greedy heuristic instead of exhaustive search. It is the classic algorithm for the maximum-coverage problem:

S = {}                      # empty portfolio
while |S| < ladder_size:
    pick the item j (not in S) that maximises reach(S ∪ {j})
    add j to S
    record reach(S) and the increase

Greedy is fast and intuitive, and it shows the order in which items earn their place. Because maximum coverage is submodular, the greedy solution is provably within a factor of 1 − 1/e ≈ 63% of the optimum for that size, and in practice usually much closer. It is therefore a good approximation, but not guaranteed optimal. When you need the exact best set of a fixed size, read the exhaustive TURF Results table; when you want to understand the build-up and the diminishing returns, read the ladder.

Why reach is submodular
Adding an item to a small portfolio can only ever help, and the gain from adding an item shrinks as the portfolio grows (the people it would have reached are increasingly already covered). That diminishing-returns property (submodularity) is exactly what makes greedy near-optimal and what produces the flattening curve in Figure 7.

13. Shapley Contribution to Reach

The Shapley Contribution metric on the Item Rankings page answers a fairness question: "Across all the portfolios an item could belong to, how much reach does it bring on average?" It borrows the Shapley value from cooperative game theory, where players (items) form coalitions (portfolios) and we want each player's fair share of the total value created.

φj = ΣS ⊆ N\{j} [ |S|! (n−|S|−1)! / n! ] · ( v(S ∪ {j}) − v(S) )
φj is item j's Shapley value; v(S) is the reach of portfolio S; the weight averages over all coalition sizes.

Choicery evaluates contribution with the same portfolio value function used by Weighted TURF. For standard MaxDiff, selected exponentiated utilities enter the portfolio numerator jointly; for Anchored MaxDiff, the anchor is the comparison alternative. The per-item contributions are averaged over respondents and normalised for display.

The exact Shapley value is computed whenever the study is small enough for the full marginal-contribution enumeration. Above that size Choicery switches to a deterministic permutation approximation with a fixed seed, which trades exactness for bounded runtime: the reported contributions then carry a small sampling error, so very close items can swap ranks. When sampling is used, the Shapley card on the Item Rankings page says so and names the number of permutations; the same information is recorded on the Settings sheet of the Item Rankings workbook ("Shapley Calculation" and "Shapley Permutations").

Interpretation: an item with high Shapley contribution pulls its weight in many different portfolios, a hallmark of a versatile, broadly useful item. An item can rank well on Relative Preference yet have a modest Shapley contribution if it mostly duplicates the coverage of more popular items.

14. The Anchored Calibration Model

Anchored MaxDiff converts the relative HB scale into absolute acceptance probabilities. Choicery estimates, per respondent, an anchor threshold θi on the utility scale such that an item is accepted when its utility exceeds the threshold, through a logistic link:

P(Yesij) = σ(uij − θi) = 1 / (1 + e−(uij − θi))
For Julia HB runs θi is estimated jointly with the item utilities inside the HB sampler, using the same logistic link on the calibration answers. For TasteNet runs and older cached results without joint thresholds, Choicery fits θi afterwards by maximum likelihood to that respondent's yes/no answers.

A low threshold means the respondent accepts most items; a high threshold means only their very top items pass. The Anchor Threshold card reports the mean, standard deviation, minimum, and maximum of θ across respondents, so you can see how selective your sample is and how much that selectiveness varies.

The model-based P(Accept) usually sits close to the raw calibration "Yes" rate but smooths individual noise, which is why the page shows both side by side. A large, systematic gap between them is a signal to inspect data quality or calibration-screen wording.

15. Known Limitations

16. References

Cohen, S. H. (2003). Maximum difference scaling: Improved measures of importance and preference for segmentation. Proceedings of a commercial conjoint software vendor's user conference, 61-74.

Finn, A., & Louviere, J. J. (1992). Determining the appropriate response to evidence of public concern: The case of food safety. Journal of Public Policy & Marketing, 11(2), 12-25.

Louviere, J. J., Flynn, T. N., & Marley, A. A. J. (2015). Best-worst scaling: Theory, methods and applications. Cambridge, England: Cambridge University Press.

Miaoulis, G., Free, V., & Parsons, H. (1990). TURF: A new planning approach for product line extensions. Marketing Research, 2(1), 28-40.

Nemhauser, G. L., Wolsey, L. A., & Fisher, M. L. (1978). An analysis of approximations for maximizing submodular set functions. Mathematical Programming, 14(1), 265-294.

Orme, B. K. (2009). Getting started with conjoint analysis: Strategies for product design and pricing research (2nd ed.). Madison, WI: Research Publishers.

Shapley, L. S. (1953). A value for n-person games. In H. W. Kuhn & A. W. Tucker (Eds.), Contributions to the theory of games (Vol. 2, pp. 307-317). Princeton, NJ: Princeton University Press.

MaxDiff technical methodology paper. Retrieved from vendor documentation.