- Base MaxDiff: steps 1, 2, 3, 5, 7, 8, 9, 10. Complete analysis on its own.
- Anchored MaxDiff: add step 6 to compare relative ranking against absolute importance ratings and flag hygiene factors and false differentiators.
- Segmented: add step 4 to either version.
Prompt
Fill in the setup block with your study details, then send the full prompt as written. Every column name must match your file’s literal header row.
Setup
Code execution must be enabled for step 4’s verification to run. It’s on by default for Team and Enterprise accounts. Free, Pro, and Max users: enable it under Settings > Capabilities.How it works
1
Defensive data loading
Checks that category labels like “None” or “NA” aren’t silently read as missing values. Verifies every task has exactly one best and one worst pick, and that they’re never the same item.
2
Sequential best-worst logic
Fits “best” and “worst” picks as a single choice model rather than counting picks independently, using all the information in each task. Reference levels are stated explicitly before estimation — not left to alphabetical default. Convergence is verified from a second starting point.
3
Preference share
Converts fitted utilities to a preference share that sums to 100%, at full precision. Confirms the share is stable under a different reference item, if it shifts, that’s a coding error to fix before continuing.
4
Segment size check (optional)
Checks respondent counts before splitting. Flags any segment below your threshold, keeps them in the pooled model, and only refits for segments that clear the bar.
5
Bootstrapped confidence intervals
Resamples at the respondent level and refits the full model on each resample. Returns a CI for every preference share (and anchor rate, if anchored). In plain-prompt testing, two independent attempts produced correct rankings but no uncertainty on any reported number.
6
Anchor divergence check (anchored version only)
Compares relative ranking against absolute must-have rates using rank position, not a z-score. (Preference share is more skewed than a plain rate; z-scoring both and subtracting compares how extreme a number looks, not how it ranks, an early pass on the test dataset flagged six of twelve items as mismatched before this fix was applied.) An item is flagged only if its CI excludes zero and its divergence clears the magnitude threshold. Direction is stated: hygiene factor vs. false differentiator.
7
Independent verification
Every number is recomputed through a genuinely different implementation. Bootstrap distributions are spot-checked across a random subsample of resamples rather than fully re-run, with that caveat stated explicitly in the output.
8
Output
A verified results table, a bar chart built only from that table, and a 2–3 sentence summary that separates confirmed findings from directional ones.
9
Output (Continued)
A verified results table, a bar chart built only from that table, and a 2–3 sentence summary that separates confirmed findings from directional ones.
10
Output (Continued)
A verified results table, a bar chart built only from that table, and a 2–3 sentence summary that separates confirmed findings from directional ones.
Things to check before trusting MaxDiff output
- State your reference item. If you don’t, the tool will pick one alphabetically, and backwards reference levels will silently flip utility signs. Confirm the reference is what you intended.
- Pair relative ranking with an anchor question when it matters. A list of 12 mediocre features produces a confident ranking just as easily as 12 genuinely important ones. Relative rank alone can’t tell the difference.
- Don’t use a z-score to compare two differently-shaped measures. Preference share from a choice model is skewed; a must-have rate usually isn’t. Rank position is the right unit of comparison.
- A CI excluding zero is not the same as a gap worth reporting. At a few hundred respondents, nearly any consistent difference clears that bar. Pair it with a magnitude check.
- Check convergence yourself. Verify gradient norm at the solution and confirm a second starting point lands in the same place. A solver can flag a correct answer as unresolved just as easily as it can wave through a bad one.