← 2. Comparing groups
Factorial design
Try this analysis →

Factorial Design (DOE)

A way to analyze the main effects and interactions of several experimental conditions together, to see which combinations change the outcome.

Full factorial designMain effectsInteractionsRandomization & replication

505560657054.559.555.570.5160°C180°COperating temperature20 bar30 barStrength (MPa)

To make a factory's product stronger, should you adjust the temperature first? What happens if you raise the pressure? And could raising temperature and pressure together have a bigger effect than changing each one on its own?

Factorial design is a way to combine several experimental conditions systematically and analyze the effect of each condition and how they influence one another. It is the most widely used design in the design of experiments (DOE).

Where one-way ANOVA looks at mean differences across a single factor, a factorial design handles two or more factors at once. What matters most is that it can detect interactions, where the effect of one factor depends on the level of another.

It is used in research where several conditions have to be tuned, such as manufacturing processes, food development, agricultural experiments, and service operations. In this article we'll walk through a single example covering the basic idea of factorial design, main effects and interactions, the run layout and results table, interpreting the ANOVA, how it differs from other analyses, and what to watch out for.

SECTION 1

What is factorial design (DOE)?

It changes two or more experimental conditions at the same time and evaluates how they affect the outcome.

Factorial design is a way of designing and analyzing experiments that combines the levels of several experimental factors systematically to estimate the main effect of each factor and the interactions between factors. A full factorial design runs every combination, while a fractional factorial design runs only a selected subset.

Key question: Which of temperature, pressure, and processing time has the biggest effect on product strength, and does the effect of temperature depend on the pressure level?
SECTION 2

Why is this better than changing one factor at a time?

If you change only one condition at a time, it's easy to miss interactions.

If you vary only temperature while holding pressure and processing time fixed, you learn the effect of temperature only under those conditions. But if raising the temperature has a bigger effect at high pressure, that difference is a temperature × pressure interaction.

Because a factorial design observes combinations of conditions, it can analyze not only the average effect of each factor but also cases where performance improves or worsens under particular combinations. The catch is that the cost of the experiment grows quickly as the number of combinations increases.

SECTION 3

How does factorial design work?

You first plan the factors, levels, combinations, replicates, and random assignment.

① Choose the factors and levels

In this example we set two levels for each of three factors: temperature (160/180°C), pressure (20/30 bar), and processing time (20/30 min).

② Lay out every combination

With three two-level factors, there are 2³ = 8 experimental conditions. Replicating each combination with 3 independent production batches gives 24 runs.

③ Randomize the run order

Randomize the run order so it isn't confounded with equipment wear, operators, or dates, and record blocks (day, machine, etc.) separately where needed.

④ Estimate main effects and interactions

A model evaluates the mean difference for each factor, the two-factor interactions, and the three-factor interaction.

SECTION 4

Real-world example: optimizing product strength in a manufacturing process

We compare every combination of temperature, pressure, and processing time.

A hypothetical factory evaluated the tensile strength (MPa) of its product under different process conditions. Assume 24 independent batches were randomly assigned to the 8 conditions, with three measurements per condition. The values below are data constructed for learning purposes.

ConditionTemperaturePressureTimeStrength, 3 measurements (MPa)Mean
1160°C20 bar20 min52.0, 53.0, 54.053.0
2160°C20 bar30 min55.0, 56.0, 57.056.0
3160°C30 bar20 min53.0, 54.0, 55.054.0
4160°C30 bar30 min56.0, 57.0, 58.057.0
5180°C20 bar20 min56.0, 57.0, 58.057.0
6180°C20 bar30 min61.0, 62.0, 63.062.0
7180°C30 bar20 min67.0, 68.0, 69.068.0
8180°C30 bar30 min72.0, 73.0, 74.073.0

The example was generated with fixed rules to illustrate the effects between factors. It is not data that validates a real process or proves a causal effect.

SECTION 5

How do you calculate a main effect?

Compare the overall means at the high and low levels of one factor.

Averaging over all levels of the other factors, the mean strength is 55 MPa at 160°C and 65 MPa at 180°C. So the main effect of temperature is +10 MPa.

FactorLow-level meanHigh-level meanMain effect
Temperature55 MPa65 MPa+10 MPa
Pressure57 MPa63 MPa+6 MPa
Processing time58 MPa62 MPa+4 MPa

A main effect here is a mean difference that depends on the levels included in the analysis and on how the other factors were laid out. Significance has to be tested separately, using the error from the replicate runs.

SECTION 6

How do you interpret an interaction?

Check whether the effect of one factor depends on the level of another.

Mean strength by temperature × pressureAveraged over both levels of processing time · hypothetical example · MPa455055606570160°C180°COperating temperature54.559.555.570.5Pressure 20 barPressure 30 bar
Hypothetical interaction plot in which the change in mean strength across temperatures differs by pressure level. Processing time is averaged over its two levels.

At 20 bar, raising the temperature from 160°C to 180°C increases strength from 54.5 MPa to 59.5 MPa, a gain of 5 MPa; at 30 bar it rises from 55.5 MPa to 70.5 MPa, a gain of 15 MPa.

Interpretation: The effect of raising the temperature depends on the pressure level. The temperature × pressure interaction, as a difference in effects (a difference of differences), is 10 MPa. Keep this separate from the interaction coefficient in an effect-coded model (+2.5), which is on a different scale.
SECTION 7

How do you tell main effects from interactions?

An average effect is not the same as an effect that changes from condition to condition.

EffectPattern seen in the exampleKey interpretation
Temperature main effect180°C averages 10 MPa higher than 160°CTemperature difference averaged over all conditions
Pressure main effect30 bar averages 6 MPa higher than 20 barPressure difference averaged over all conditions
Time main effect30 min averages 4 MPa higher than 20 minTime difference averaged over all conditions
Temperature × pressureEffect of raising temperature: 5 MPa at 20 bar, 15 MPa at 30 barThe temperature effect depends on pressure

If an interaction is large or statistically important, don't justify the process choice with a single main-effect number; it's better to check the simple effects within each condition.

SECTION 8

What do you look for in the ANOVA table?

Compare the variation from each effect with the error between replicate runs.

In a balanced 2³ full factorial design you can estimate the main effects A, B, and C, the two-factor interactions AB, AC, and BC, and the three-factor interaction ABC. With 24 independent runs, the model effects have 7 degrees of freedom and the residual has 16.

EffectdfWhat to check
Temperature (A)1F, p, effect size
Pressure (B)1F, p, effect size
Processing time (C)1F, p, effect size
A×B, A×C, B×C1 eachHow effects change across conditions
A×B×C1Whether a two-factor interaction depends on the third factor
Error16Variation between replicate runs

The example focuses on understanding the effects by designing the data pattern. Real significance testing should be done only after reviewing model choice, residual assumptions, and the independence of the runs.

SECTION 9

Which settings matter when you design the experiment?

Run order, replication, and blocking determine how much you can trust the results.

SettingMeaningPractical tip
ReplicationApply the same condition to independent experimental unitsDon't count re-measuring the same sample as an independent replicate
RandomizationArrange the run order of conditions at randomReduce systematic effects of time trends or equipment changes
BlockingGroup runs by nuisance factors such as day or machineDesign so that conditions and blocks don't fully overlap
Choice of levelsSet a low and high level for each factorChoose a range that is practical and safe to run
Sample sizeConsider the error and the power you wantState the cost, effect size, and interaction-detection goals

Experimental design isn't something you change after you see the results. The variables and levels, the number of replicates, and the randomization method must be set before the experiment.

SECTION 10

What to watch out for in factorial design

Check independence of observations, constant variance, and the scope of the model together.

① Check the residuals and variance

Review the residuals for normality, equal variance, outliers, and process drift. If needed, consider a transformation or a different model.

② Identify the independent experimental units

Measuring the same batch several times is not the same as producing several independent batches. Avoid pseudoreplication.

③ Don't ignore interactions

If interactions matter and you pick the best condition from main effects alone, you can make the wrong process decision.

④ Verify the best condition separately

The maximum in a factorial design is a result within the factor levels you chose this time. Verify the recommended condition with a separate confirmation run, and don't rush to generalize beyond the range of the experiment.

SECTION 11

How does it differ from other analyses?

They differ in how the factors are laid out and in what the study is for.

AnalysisMain purposeDifference from DOE
One-way ANOVACompare group means across one factorDoesn't handle other factors or interactions
Two-way ANOVATest the main effects and interaction of two factorsDOE also emphasizes the design itself, including factor levels, combinations, randomization, and replication
Full factorial designRun every combination of factor levelsCan estimate every main effect and interaction
Fractional factorial designRun a subset of combinations to save on experimentsSome effects may be confounded with each other (aliasing)
Response surface methodology (RSM)Explore curvature and the optimum for continuous factorsModels curvature that is hard to detect with two-level designs alone

Effects in a factorial design can be tested with ANOVA or linear regression. Design of experiments is the framework for the design, and ANOVA is one of the tools for analyzing the resulting data.

SECTION 12

How do you report factorial design results?

Connect everything from the design to the effects and interactions to follow-up verification.

In a paper or technical report, first present the factors and their levels, whether the design is full or fractional factorial, the number of replicates and the independent experimental units, the randomization and blocking setup, and the response variable. Then report the main-effect and interaction estimates, confidence intervals, F-tests, and p-values as appropriate.

Example report: A 2³ full factorial design was used, with temperature (160/180°C), pressure (20/30 bar), and processing time (20/30 min) of the manufacturing process each set at two levels. Three independent runs were carried out at each condition, and tensile strength was measured for a total of 24 batches. In the learning data, the average main effect was +10 MPa for temperature, +6 MPa for pressure, and +4 MPa for processing time. In particular, the gain in strength from raising the temperature was 5 MPa at 20 bar and 15 MPa at 30 bar. The statistical significance of these effects should be evaluated separately through residual checks and a factorial ANOVA.

In a real report, add the standard errors and confidence intervals of the estimates, appropriate test statistics, model diagnostics, and the results of confirmation runs.

SECTION 13

Where can you use factorial design?

It fits fields where you test several conditions at once and look for the best combination.

FieldExample factorsResponse variable
ManufacturingTemperature, pressure, timeProduct strength, defect rate
FoodBaking temperature, moisture, mix ratioTexture, quality score
AgricultureFertilizer level, irrigation, lightYield
Service operationsStaffing, operating hours, proceduresWait time, throughput
Online experimentsDesign, offer, messageConversion rate, click-through rate

If the response variable isn't continuous, you can estimate the factors and interactions with a suitable generalized linear model such as binomial or Poisson. The principles of experimental design stay the same, but the analysis model is chosen to fit the nature of the outcome data.

✓ Wrap-up

Factorial design looks at the effects of individual conditions and the interactions between them together.

To find the best conditions, you need to check not only which factors matter but also which combinations change the outcome.


In the manufacturing example, we set temperature, pressure, and processing time at two levels each and compared all eight conditions. Temperature had the largest average main effect, but the gain in strength from raising the temperature differed between high and low pressure. So there are limits to choosing the best condition from the average effect of a single factor.

In real research you need to check whether the experiment had enough replication and randomization, and whether the residual and variance assumptions hold. Interpret main effects and interactions together, and even the condition that gave the best result in the experiment should not be declared the optimum for the whole process without a separate confirmation run.

KEY TAKEAWAY

Factorial design combines the levels of several factors to estimate main effects and interactions together. When there is an interaction, the effect of one factor depends on the level of another, so you need to check the results condition by condition. Randomization, independent replicates, and assumption checks are important, and the best condition should be verified with a confirmation run.