TURF Analysis

How to Do TURF Analysis in Excel (and Why You Shouldn't)

6 min read

A walkthrough of building TURF analysis in Excel for learning purposes, plus why dedicated tools produce better results for real studies.

How to Do TURF Analysis in Excel (and Why You Shouldn't)

Can You Run TURF in Excel?

Yes, for small item sets. Excel can calculate TURF reach for any combination of items if you set up the data correctly. For learning how TURF works or running a quick analysis on 8-12 items, Excel does the job. For real studies with 15+ items, Excel becomes impractical and error-prone.

This guide shows you both: how to build TURF in Excel so you understand the mechanics, and why you should use a proper tool for production research.

Excel TURF: Step by Step

Step 1: Set Up the Data Matrix

Create a table where each row is a respondent and each column is an item. Enter 1 if the respondent accepts that item, 0 if not.

Respondent Chocolate Vanilla Strawberry Mint Mango Cucumber
R1 1 1 0 0 0 0
R2 1 0 1 1 0 0
R3 0 0 0 0 1 1
R4 1 1 1 0 0 0
R5 0 0 1 0 1 0
... ... ... ... ... ... ...

Step 2: Calculate Individual Item Reach

For each item, reach = SUM of the column / total respondents.

=SUM(B2:B201)/COUNTA(A2:A201)

This gives you each item's individual acceptance rate. In a real study with 200 respondents, you'd see numbers like Chocolate: 62%, Vanilla: 58%, Strawberry: 51%, etc.

Step 3: Calculate Combination Reach

For a specific combination (say, Chocolate + Mint + Mango), create a helper column that checks whether each respondent accepts at least one of the three:

=IF(OR(B2=1, E2=1, F2=1), 1, 0)

Then sum the helper column and divide by total respondents. That's the unduplicated reach for that combination.

Step 4: Test All Combinations

Here's where Excel gets painful. For 6 items choosing 3, there are 20 combinations. You'd create 20 helper columns (or use a lookup table), calculate reach for each, and pick the highest.

For 15 items choosing 5, there are 3,003 combinations. For 20 items choosing 8, there are 125,970. You can't build that many helper columns.

Step 5: Find the Optimal Combination

For small sets (under 15 items), you can enumerate all combinations using a systematic approach: list all possible combinations in rows, calculate reach for each (using SUMPRODUCT and OR logic), and sort by reach.

For the chocolate example with 6 items choosing 3:

Combo Item 1 Item 2 Item 3 Reach
1 Chocolate Vanilla Strawberry 78%
2 Chocolate Vanilla Mint 76%
3 Chocolate Strawberry Mango 82%
... ... ... ... ...
20 Mint Mango Cucumber 71%

Sort by reach, and the top row is your TURF-optimal combination.

Why Excel Breaks Down

Scale

The number of combinations grows exponentially. At 20 items choosing 6, you're evaluating 38,760 combinations. At 30 items choosing 8, it's over 5 million. Excel can't handle this without VBA macros, and even then, computation time becomes impractical.

Error Risk

Manually building 3,003 combination formulas is error-prone. One misreferenced cell skews an entire combination's reach calculation, and you'd never notice among thousands of rows. Dedicated tools eliminate this by computing combinations programmatically.

No Incremental Analysis

TURF's most useful output is the incremental reach curve (what does each additional item contribute?). Building this in Excel requires running the analysis at portfolio size 1, then 2, then 3, and so on, each time re-evaluating all combinations. It's tedious to build and slow to modify.

No Segment Analysis

If you want TURF results for different customer segments, you'd need to duplicate the entire analysis for each segment. With a proper tool, segment-level TURF is a single configuration change.

No Constraints

Real studies often need "must include" and "must exclude" constraints. In Excel, you'd need to manually filter which combinations to evaluate. Dedicated tools handle constraints natively.

When Excel Is Fine

Learning

Building TURF in Excel once is an excellent way to understand the mechanics. Create a small dataset (6 items, 20 respondents), calculate reach for a few combinations manually, and verify the results make intuitive sense. This builds the understanding that makes you a better user of automated tools.

Tiny Studies

If you have 8 items choosing 3-4 and don't need segment analysis, Excel works. There are 56-70 combinations, which is manageable. The setup takes 30 minutes and produces valid results.

Quick Validation

If you've run TURF in a dedicated tool and want to verify a specific combination's reach, Excel is a fast way to cross-check. Pull the data matrix, calculate reach for that combination, and confirm it matches.

Better Alternatives

Survey Platforms with Built-In TURF

Quali-Fi, Displayr, and several other platforms include TURF as a native analysis module. You collect the data through the platform, click to run TURF, and get reach curves, optimal combinations, incremental tables, and segment breakdowns in seconds. No formula building required.

R

The tuRf package and custom scripts handle TURF on datasets of any size. The computation runs in seconds even for 40+ items. R also handles constraints, segment analysis, and sensitivity testing natively.

Python

Using itertools.combinations and numpy, TURF is about 15 lines of Python code for the basic version. Libraries like pandas handle data preparation, and the analysis scales to large item sets.

Sawtooth Software

Sawtooth's Discover platform includes TURF optimization as a built-in module, designed for MaxDiff data. It handles the MaxDiff-to-TURF pipeline automatically: collect MaxDiff data, set an acceptance threshold, and run TURF on the derived acceptance matrix.

A Template for Small-Scale Excel TURF

If you want to build a working Excel TURF for learning purposes, here's the structure:

Sheet 1: Data Matrix

  • Column A: Respondent IDs
  • Columns B-N: Items (1/0 acceptance)

Sheet 2: Combination Generator

  • Each row lists a combination (e.g., Items B, D, F)
  • A formula calculates reach for that combination using SUMPRODUCT

Sheet 3: Results

  • Sort combinations by reach
  • Top row = optimal combination
  • Chart: portfolio size vs. reach

Key formula for reach of a 3-item combination (items in columns B, E, G):

=SUMPRODUCT(SIGN(Data!B2:B201 + Data!E2:E201 + Data!G2:G201)) / COUNTA(Data!A2:A201)

The SIGN function converts any sum >= 1 to 1, effectively creating an OR condition across the selected items.

Frequently Asked Questions

Can I use Excel VBA to automate the combination evaluation?

Yes. A VBA macro can enumerate all combinations, calculate reach for each, and output the optimal set. This extends Excel's practical limit from ~15 items to ~25 items. Beyond that, even VBA becomes slow. For a quick VBA approach, use nested loops to generate combinations and SUMPRODUCT in each iteration to calculate reach.

Are there free TURF calculators online?

A few exist, but most are limited. Sawtooth offers a TURF calculator for specific use with their software. Some online tools handle basic TURF on small datasets. For serious research, a platform subscription or R/Python is more reliable.

How accurate is Excel TURF compared to dedicated tools?

If your formulas are correct, the results are identical. TURF is a deterministic algorithm; there's no approximation or model fitting. The risk with Excel isn't accuracy but completeness (missing combinations due to formula errors) and scalability.


Skip the spreadsheet -- try Quali-Fi free for 14 days.

Frequently Asked Questions

Related Guides

Put it into practice

Ready to apply this in your research?

Quali-Fi makes it easy to run surveys, conjoint studies, and more, all in one platform.