Written and maintained by CASRAI Editorial Board
Last updated
On this page: what conjoint analysis measures and how the traditional full-profile version differs from a discrete choice experiment (DCE); how to build attribute-and-level profiles and put them into an orthogonal main-effects array; how respondents rank or rate those profiles; how dummy-variable regression turns those ratings into part-worth utilities; how to calculate each attribute’s relative importance; and a fully worked example with every number computed directly by script, not asserted.
What conjoint analysis measures, and how it differs from a discrete choice experiment
Conjoint analysis is a family of stated-preference methods for decomposing a respondent’s overall preference for a bundled option into the separate contribution of each underlying attribute. It was brought into market research in the early 1970s by Paul Green at the Wharton School, adapting conjoint-measurement ideas from mathematical psychology into a practical survey technique, and it remains widely used in health-preference research — ISPOR (the International Society for Pharmacoeconomics and Outcomes Research) publishes good-practice task force reports covering conjoint methods broadly, not only the choice-based variant.
This guide covers the traditional, full-profile form of conjoint analysis: respondents see one profile at a time (a hypothetical option built by combining specific attribute levels) and either rank a set of profiles from most to least preferred, or rate each profile individually on a preference scale. That is a different task, and a different analysis, from a discrete choice experiment, where respondents pick one profile from a small set shown side by side, and the resulting choice data is analyzed with conditional logit rather than regression. The two methods share vocabulary — attributes, levels, profiles, part-worth utilities — and in casual usage “conjoint analysis” sometimes refers to both, but the task format and the underlying statistical model are genuinely different:
| Traditional (full-profile) conjoint | Discrete choice experiment | |
|---|---|---|
| Respondent task | Rank or rate individual profiles | Pick one profile from a set (a choice task) |
| Data collected | An ordinal ranking or an interval-scale rating per profile | A single chosen alternative per choice task |
| Underlying model | Linear model (ordinary least squares, dummy/effects-coded) | Random utility theory, conditional (multinomial) logit |
| Utility scale | Directly on the rating/ranking scale used | A latent utility scale, only interpretable in relative or exponentiated (choice-probability) terms |
| Typical design size | An orthogonal main-effects array, often 8–18 profiles rated once each | Multiple paired/grouped choice sets per respondent, usually with a “none” option |
Neither is more “correct” — the choice depends on what better matches real decision behavior for the topic being studied and how much respondent burden the design can tolerate. Full-profile conjoint asks less of each individual task (evaluate one thing) but more profiles overall; a DCE mirrors real trade-off decisions more closely but needs a choice-modeling analysis rather than plain regression.
Building attribute-and-level profiles
A profile is one specific hypothetical option, built by fixing one level for every attribute under study. The same two design failures that undermine a DCE undermine full-profile conjoint at the same stage, before any statistics are involved:
- Too many attributes. Full-profile tasks ask a respondent to evaluate everything about one option at once, which is more cognitively demanding per profile than a DCE’s side-by-side comparison. Applied guidance generally holds full-profile designs to a tighter ceiling than DCEs — commonly 4–6 attributes — because respondents evaluating a single bundled profile (rather than comparing two) are more prone to skimming past attributes they find least important once the profile gets crowded.
- Levels that aren’t independently crossable. Every level of every attribute has to make sense combined with any level of any other attribute, because an orthogonal array will generate combinations nobody hand-picked. A “premium support” attribute level that implicitly assumes a specific price tier will produce internally contradictory profiles once price is varied independently.
As with a DCE, attributes and levels for a full-profile study are normally identified through a qualitative phase — literature review, subject-matter interviews, or a pilot round of open-ended questions — rather than picked from the researcher’s own assumptions about what matters to respondents.
Once attributes and levels are fixed, the profiles themselves are usually generated from an orthogonal main-effects array: a deliberately structured subset of the full factorial (every possible combination of every level) chosen so attribute columns are uncorrelated with each other across the selected profiles. That is the same orthogonality logic a DCE’s fractional factorial relies on, applied here to profiles a respondent ranks or rates individually rather than to paired choice sets. Standard constructions include the classical Addelman-style orthogonal main-effects plans and, for attributes with more than two levels, Taguchi-style arrays (an L9 array handles up to four three-level attributes in nine profiles; an L18 handles larger mixed-level designs); dedicated software (SPSS Conjoint, Sawtooth Software’s CVA module, or R’s support.CEs/DoE.base packages) generates these automatically for anything beyond a small hand-built design. See Design of Experiments for the general orthogonal-array logic this borrows from outside the survey context.
Collecting the ranking or rating data
Once the profile set exists, respondents evaluate it one of two ways:
- Full-profile ranking. Respondents order the complete set of profiles from most to least preferred (a physical or on-screen “card sort” in the original method). This produces an ordinal preference order, analyzed with rank-based regression (e.g., monotonic/ordinal regression) rather than plain OLS, because a ranking is not a rating — it says profile A beats profile B, but not by how much.
- Full-profile rating. Respondents score each profile independently on a fixed scale (commonly 0–10 or 0–100 “likelihood to prefer”). This is the more common variant in current practice specifically because it produces interval-scale data an ordinary least-squares regression can use directly, and because it scales better to larger profile sets than pairwise ranking does.
The worked example below uses the rating variant, since it is the version dummy-variable regression applies to most directly.
Estimating part-worth utilities with dummy-variable regression
A part-worth utility is the specific contribution one attribute level makes to a profile’s overall rating, holding the effect of every other attribute constant. With ratings collected for an orthogonal set of profiles, part-worths are estimated with a linear regression where each attribute is entered as a set of coded variables (dummy coding or, more commonly, effects coding, where each attribute’s levels are coded so their true part-worths sum to zero — this is what makes “the effect of this level relative to the attribute’s own average” the natural interpretation, rather than relative to an arbitrary reference level). The regression’s intercept recovers the grand mean rating across all profiles; each coefficient recovers one level’s deviation from that grand mean.
Because the design is orthogonal, the attribute columns in that regression are uncorrelated by construction — the same property a DCE’s fractional factorial relies on, here protecting the part-worth estimates from being confounded with each other rather than protecting choice-probability estimates. This is also why an orthogonal array specifically is used instead of just any subset of profiles: a non-orthogonal subset would leave the regression’s coefficients partly attributable to the wrong attribute (see multicollinearity in regression for what that failure looks like in a general regression context).
Worked example: profiles, ratings, part-worths, and importance together
The scenario, ratings, and part-worth utilities below are constructed for this page to demonstrate the mechanics end to end. They are not drawn from a real study. Every number that follows — the orthogonal array, the ratings, the regression coefficients, and the importance weights — was computed directly with a short script, not asserted; the full calculation is reproducible from the inputs shown.
Illustrative research question: which combination of features makes researchers most likely to choose a survey-panel vendor for a data-collection project? Four attributes, each at three levels, laid out in a standard nine-profile orthogonal array (a Taguchi L9, which handles up to four three-level attributes with each level appearing exactly three times per attribute and every pair of levels across any two attributes appearing exactly once — confirmed by script, not assumed):
| Attribute | Level 1 | Level 2 | Level 3 |
|---|---|---|---|
| A — Panel size | 500 respondents | 2,000 respondents | 10,000 respondents |
| B — Turnaround time | 14 days | 7 days | 3 days |
| C — Data quality screening | None | Basic attention checks | Basic + speeding/straightlining checks |
| D — Price per complete | $3 | $6 | $12 |
To demonstrate the mechanics with a clean, fully recoverable result, this example assigns disclosed illustrative “true” part-worths first (each attribute’s three level-effects sum to zero, on top of a grand-mean rating of 5.0 on a 0–10 scale), generates each profile’s rating directly from those part-worths with no added noise, and then recovers the part-worths from the ratings by regression — showing that the regression exactly reconstructs the inputs on an orthogonal design:
| Profile | Panel size | Turnaround | Screening | Price | Rating |
|---|---|---|---|---|---|
| 1 | 500 | 14 days | None | $3 | 4.10 |
| 2 | 500 | 7 days | Basic | $6 | 4.40 |
| 3 | 500 | 3 days | Basic + speeding | $12 | 3.80 |
| 4 | 2,000 | 14 days | Basic | $12 | 2.70 |
| 5 | 2,000 | 7 days | Basic + speeding | $3 | 7.20 |
| 6 | 2,000 | 3 days | None | $6 | 5.40 |
| 7 | 10,000 | 14 days | Basic + speeding | $6 | 5.20 |
| 8 | 10,000 | 7 days | None | $12 | 4.00 |
| 9 | 10,000 | 3 days | Basic | $3 | 8.20 |
Running an effects-coded ordinary least-squares regression on these nine ratings recovers the intercept and every part-worth exactly (to four decimal places, the limit of floating-point precision in the script, not rounding error introduced by the method):
| Attribute | Level 1 part-worth | Level 2 part-worth | Level 3 part-worth | Range |
|---|---|---|---|---|
| Grand mean (intercept) | 5.0000 | — | ||
| Panel size | −0.9000 | +0.1000 | +0.8000 | 1.70 |
| Turnaround time | −1.0000 | +0.2000 | +0.8000 | 1.80 |
| Data quality screening | −0.5000 | +0.1000 | +0.4000 | 0.90 |
| Price per complete | +1.5000 | 0.0000 | −1.5000 | 3.00 |
Read a part-worth as a deviation from the grand mean: the $3 price level adds 1.50 rating points relative to the average price effect, while $12 subtracts 1.50. Predicting any specific profile’s rating is just the grand mean plus the four relevant part-worths — e.g. the untested combination of 10,000 respondents, 3-day turnaround, basic + speeding checks, and $3 pricing predicts a rating of 5.0000 + 0.8000 + 0.8000 + 0.4000 + 1.5000 = 8.5000, the highest achievable combination in this design, even though it wasn’t one of the nine profiles actually rated — the point of decomposing ratings into part-worths is exactly this ability to score combinations that were never directly tested.
Calculating relative importance
An attribute’s relative importance answers a different question than any single part-worth does: not “how much does this specific level add or subtract,” but “how much does this attribute, as a whole, drive preference compared to the other attributes in the study.” It’s calculated from each attribute’s range — its highest part-worth minus its lowest — expressed as a share of the sum of every attribute’s range:
Relative importance (attribute i) = Range(attribute i) ÷ ∑ Range(all attributes) × 100%
Applied to the ranges above (1.70, 1.80, 0.90, and 3.00, summing to 7.40):
| Attribute | Range | Relative importance |
|---|---|---|
| Price per complete | 3.00 | 40.54% |
| Turnaround time | 1.80 | 24.32% |
| Panel size | 1.70 | 22.97% |
| Data quality screening | 0.90 | 12.16% |
The four importance weights sum to 100% by construction (confirmed by script: 100.0000%). In this illustrative design, price is the single largest driver of preference — not necessarily because respondents rate it as “most important” if asked directly (self-reported importance and derived importance routinely disagree), but because varying price across its tested range moved the predicted rating further than varying any other attribute across its own tested range. That range-based, revealed-preference reading is the entire reason conjoint analysis is used instead of just asking respondents to rank attributes by importance directly.
Sample size and respondent burden
Unlike a single-mean or single-proportion power calculation, there is no closed-form sample-size formula specific to full-profile conjoint. Two separate constraints matter instead: the orthogonal array itself must contain at least as many profiles as parameters being estimated (a nine-profile L9 array estimates an intercept plus eight effects-coded parameters — four attributes at two degrees of freedom each — using every degree of freedom the design has, which is why L9 handles exactly four three-level attributes and no more without replication or a larger array), and enough respondents must rate the same fixed profile set for the aggregate part-worths to stabilize once individual response noise is averaged out. A single respondent’s nine ratings, as in the worked example above, recover that respondent’s own part-worths from a noiseless input; real respondent data is noisy, and the aggregate (mean or model-based) part-worths reported in an applied study are estimated across the full sample rating the same profiles, not from one person’s responses.
Frequently asked questions
Is conjoint analysis the same thing as a discrete choice experiment?
They’re related but not identical. “Conjoint analysis” is the broader family; traditional (full-profile) conjoint asks respondents to rank or rate individual profiles and is analyzed with linear regression, while a discrete choice experiment asks respondents to pick one profile from a set and is analyzed with conditional logit. In casual usage the terms sometimes get used interchangeably, but the task format and statistical model genuinely differ.
How many attributes and levels can a full-profile design handle?
Most applied guidance holds full-profile designs to roughly 4–6 attributes, tighter than a typical DCE, because a respondent evaluates every attribute of one bundled profile at once rather than comparing two profiles side by side. The number of levels per attribute is limited mainly by which standard orthogonal array is available (L9 handles four three-level attributes; other Taguchi and Addelman arrays cover other level/attribute combinations) or by using design software for a custom size.
What’s the difference between a part-worth utility and relative importance?
A part-worth utility is specific to one level of one attribute (how much that exact level adds or subtracts from the grand-mean rating). Relative importance is calculated per attribute, from the range between that attribute’s highest and lowest part-worths, and expresses how much of the total preference variation in the study that attribute accounts for relative to the other attributes.
Can part-worth utilities be estimated without statistical software?
For a genuinely small orthogonal design (as in the worked example above), the regression can be run by hand or in a spreadsheet, and because the design is orthogonal and balanced, the level-mean approach (each level’s average rating across the profiles it appears in, minus the grand mean) gives the same effects-coded part-worths a full regression would. For anything beyond a small teaching example, standard statistical software (SPSS Conjoint, R, or a dedicated conjoint package) is the practical approach.
Related reading: Research Methods & Statistics · Discrete choice experiments · Design of Experiments · Questionnaire design · Likert scale survey design · Levels of measurement · Regression analysis · Multicollinearity and VIF in regression.








