INFORMATION REPOSITORY

14. Error Propagation

Updated on February 20, 2026
In analytical chemistry, reported results are often derived from indirectly measured variables rather than direct observations. In this lesson, we learn about the principles of error propagation, explaining how random measurement errors transfer through mathematical relationships to influence final results. We learn to quantify uncertainties, construct confidence intervals, and report results with appropriate significant digits, with particular emphasis on applications in common analytical calculations and linear calibration models.

Developed by Dr. Johan Westerhuis (University of Amsterdam)

Learning Goals #

  • Explain how random measurement errors propagate through mathematical relationships used to derive analytical results.
  • Apply general rules of error propagation to sums, products, ratios, logarithmic functions, and linear models commonly used in analytical chemistry.
  • Quantify uncertainty by calculating variances, standard deviations, and confidence intervals for derived results.
  • Report analytical results using an appropriate number of significant digits, consistent with the associated uncertainty.

1. Introduction #

In Lesson 2 we have learned about precision, which depends on random errors in measurements. If we know the standard deviation in our measurement (or if we have performed a very large number of replicates) we can use the normal or Gaussian distribution to determine a confidence interval. If we estimate the standard deviation from a limited number of experiments (n_\text{exp}) we can use the t distribution (Lesson 3) with the appropriate number of degrees of freedom (\nu).

Analytical results are often indirect

Very often our analytical results are not measured directly, but are computed from one or more indirect measurements. For example:

  • We measure a voltage and convert this to a pH value;
  • We often subtract a measured background from measured signal to obtain a net signal;
  • We may measure peak area as a function of peak height and peak width;
  • We measure the amount of light transmitted (measuring a light intensity of a sample relative of a measurement of the background) and we convert this to an absorbance (and ultimately a concentration);
  • We measure retention times and unretained times to report retention factors. We may also add measurement of retention times of standards to obtain retention indices.

In all such instances it is not immediately clear how the random errors in our measurements are reflected in our reported data, or – in other words – how our measurement errors are propagated. To determine the errors in our reported values we need to learn the concept and the rules of error propagation. This is the subject of the present lesson.

Analytical Separation Science by B.W.J. Pirok and P.J. Schoenmakers
READ MODULE 9.7

ERROR PROPAGATION

2. Rules of error propagation #

We start with an analytical result  that is related to two variables that are measured x_1 and x_2 through a function f (for example, y = f(x_1,x_2) = 3x_1 + x_2). If we perform just one measurement of x_1 and x_2 and the respective errors in these measurements are \delta_{x_1} and \delta_{x_2}, then we have for the error in y

\delta_y = \left(\frac{\partial f}{\partial x_1}\right)\delta_{x_1} + \left(\frac{\partial f}{\partial x_2}\right)\delta_{x_2}

If we have many measurements and want to have a general expression for the average size of the errors in y, we must square and average across all measurements, which results in

\delta_y^2 = \left[\left(\frac{\partial f}{\partial x_1}\right)\delta_{x_1} + \left(\frac{\partial f}{\partial x_2}\right)\delta_{x_2}\right]^2

or

\overline{\delta_y^2} = \left(\frac{\partial f}{\partial x_1}\right)^2\overline{\delta_{x_1}^2} + \left(\frac{\partial f}{\partial x_2}\right)^2\overline{\delta_{x_2}^2} + 2\left(\frac{\partial f}{\partial x_1}\right)\left(\frac{\partial f}{\partial x_2}\right)\overline{\delta_{x_1}\delta_{x_2}}

The last term is equal to zero if the errors in x_1 and x_2 are independent. In that case we can write

\sigma_y^2 = \left(\frac{\partial f}{\partial x_1}\right)^2\sigma_{x_1}^2 + \left(\frac{\partial f}{\partial x_2}\right)^2\sigma_{x_2}^2

which is the general rule of error propagation. If we have a function that is related to a single or to multiple factors x_1, x_2, …, x_m through a function f, then we may find the variance of y from

Equation 9.113: \sigma_y^2 = \left(\frac{\partial f}{\partial x_1}\right)^2\sigma_{x_1}^2 + \left(\frac{\partial f}{\partial x_2}\right)^2\sigma_{x_2}^2 + \cdots + \left(\frac{\partial f}{\partial x_m}\right)^2\sigma_{x_m}^2

presuming that the errors in x_1, x_2, …, x_m are all independent. The confidence interval then becomes

Equation 9.115: \text{CI}_y=y±z_{\text{crit}} \alpha/2 \cdot \sigma_y

2.1. Sum function #

Some basic rules for error propagation follow from this general equation. For example, in case of a sum function

y = f(x_1,x_2) = ax_1 + bx_2

it yields that variances can be added as follows

\sigma_y^2 = a^2\sigma_{x_1}^2 + b^2\sigma_{x_2}^2

A constant coefficient (a or b) gets its squared value (a^2 or b^2) when adding variances.

EXERCISE 1: SEVENTEEN

Given a function y=3x_1+x_2 and a standard deviation for x_1 of \sigma_{x_1} at x_1=5 and for x_2 of \sigma_{x_2} at x_2=2, calculate a 95% confidence interval around y=17.

Start answering the exercise above.

Given that the standard deviations are known, you can use the normal distribution. This implies a critical value of 1.96 for a two-sided 95% confidence interval (see Lesson 3).

Note that with the sum equation (y=f(x_1,x_2)=ax_1+b x_2, with a=3 and b=1) we obtain

\sigma^2_y=9 \sigma^2_{x_1}+\sigma^2_{x_2}

If we use the equation from the previous hint, we obtain

\sigma_y^2 = 9 \cdot 0.01^2 + 0.02^2=0.0009+0.0004=0.013

and

\sigma_y=\sqrt{0.013}=0.036

Now we use Equation 9.115.

Enter the 95% confidence interval here. Two decimals are expected.

2.2. Product function #

In case of a product function

y = f(x_1,x_2) = x_1 x_2

we find

\sigma_y^2 = x_2^2\sigma_{x_1}^2 + x_1^2\sigma_{x_2}^2

or

\left(\frac{\sigma_y}{y}\right)^2 = \frac{x_2^2}{x_1^2 x_2^2}\sigma_{x_1}^2 + \frac{x_1^2}{x_1^2 x_2^2}\sigma_{x_2}^2 = \left(\frac{\sigma_{x_1}}{x_1}\right)^2 + \left(\frac{\sigma_{x_2}}{x_2}\right)^2

i.e. relative variances may be added. The same result is obtained from a division

y = f(x_1,x_2) = \frac{x_1}{x_2}

as is evident from

\sigma_y^2 = \frac{1}{x_2^2}\sigma_{x_1}^2 + \left(\frac{-x_1}{x_2^2}\right)^2\sigma_{x_2}^2

or

\left(\frac{\sigma_y}{y}\right)^2 = \frac{x_2^2}{x_1^2}\left[\frac{1}{x_2^2}\sigma_{x_1}^2 + \left(\frac{-x_1}{x_2^2}\right)^2\sigma_{x_2}^2\right] = \left(\frac{\sigma_{x_1}}{x_1}\right)^2 + \left(\frac{\sigma_{x_2}}{x_2}\right)^2

These and more rules are summarized in Table 1.

Table 1. Overview of error propagation rules for different functions.
Function Variance
y = ax
\sigma_y^2 = a^2\sigma_x^2
y = ax_1 + bx_2
\sigma_y^2 = a^2\sigma_{x_1}^2 + b^2\sigma_{x_2}^2
y = x_1 x_2 \quad \text{or} \quad y = \frac{x_1}{x_2}
\left(\frac{\sigma_y}{y}\right)^2 = \left(\frac{\sigma_{x_1}}{x_1}\right)^2 + \left(\frac{\sigma_{x_2}}{x_2}\right)^2
y = e^x
\sigma_y^2 = (e^x)^2\sigma_x^2
y = 10^x
\sigma_y^2 = (2.303 \cdot 10^x)^2\sigma_x^2
y = \ln x
\sigma_y^2 = \left(\frac{1}{x}\right)^2\sigma_x^2
y = \log_{10} x
\sigma_y^2 = \left(\frac{1}{2.303 \cdot x}\right)^2\sigma_x^2
EXERCISE 2: TRANSMISSION

The absorbance (A) of light is the negative logarithm of the transmission (T)

A = -^{10}\log T

If the absolute standard deviation in the transmission is 0.005 (0.5%), what is

  1. The confidence interval for the absorbance at 50% transmission?
  2. The confidence interval for the absorbance at 1% transmission?

Start answering the exercise above. The hints gradually lead to the answer, if needed.

First we try to define the standard deviation using the rules from Table 1.

Realizing that

A = -^{10}\log T = -\frac{1}{2.303}\ln T

we obtain

\sigma_A^2 = \left(\frac{\partial f}{\partial T}\right)^2\sigma_T^2 = \left(\frac{-1}{2.303 \cdot T}\right)^2\sigma_T^2

At T = 0.5 we find

\sigma_A^2 = \left(\frac{-1}{2.303 \cdot 0.5}\right)^2 \cdot 2.5 \cdot 10^{-5} = 1.89 \cdot 10^{-5}

and at T = 0.01 we find

\sigma_A^2 = \left(\frac{-1}{2.303 \cdot 0.01}\right)^2 \cdot 2.5 \cdot 10^{-5} = 0.047

The hints lead like the previous exercise to the following answers. For T = 0.5, we find

\sigma_A = 0.0043

and

A = 0.301 \pm 1.96 \cdot 0.0043 = 0.301 \pm 0.009

And for T = 0.01 this yields

\sigma_A = 0.22

and

A = 2.00 \pm 1.96 \cdot 0.22 = 2.00 \pm 0.43

The same absolute error in the transmission results in a narrow confidence interval when the absorbance is low (T=0.5, A=0.3), but a wide confidence interval at low transmission (T=0.01, A=2).

Note that the critical value of 1.96 for a two-sided 95% confidence interval originates from the normal distribution, which we may use if the variance in measured value is known or if the number of measurements is very large. If the number of measurements is smaller we need to apply a t-test and the critical value is larger (see Figure 1). When the number of experiments runs in the dozens (or more), an approximate critical value of 2 may be used.

Figure 1. Critical value of the two-sided Student’s t-test (95% confidence level) as a function of the number of degrees of freedom. The dashed line indicates the corresponding normal distribution value (1.96). See also Lesson 3.

3. Significant digits #

To determine the number of digits in which to report results, the following rules apply
Table 2. Overview of rules for significant digits.
Number Rule
Rule 1
If the variance in the measurement is unknown, the number of significant digits in the result is the same as that in the measurement(s).
Rule 2
If the variance in the measurement is known, the first digit of the absolute uncertainty is the last significant digit in the answer.
Rule 3
In multiplication and division, when the answer lies between 1 and 2, keep an extra digit.

An example of the application of Rule 1 are the weights measured by an analytical balance. If this yield weights in grams with for decimal digits, than we maintain four decimals if there is no information available on the actual precision. 

EXERCISE 3: DIGITS
The analytical result (y) is a function of x_1 and x_2 according to

y = \frac{x_1}{x_2}

Given the following measurements x_1=2.364 and x_2=25.00, we obtain

y = \frac{2.364}{25.00}=0.9456

Determine the number of significant digits to report for y in case the variation in both x_1 and x_2 is not known. Note that your answer should be an integer value, you are not asked to report the result with the correct number of digits.

Determine the number of significant digits to report for y in case the variation in both x_1 and x_2 are known to be \sigma_{x_1}=0.003 and \sigma_{x_2}=0.05.

Use

\frac{\sigma_y^2}{y^2} = \frac{\sigma_{x_1}^2}{x_1^2} + \frac{\sigma_{x_2}^2}{x_2^2}

We obtain from Hint 1

\frac{\sigma_y^2}{0.09456^2} = \frac{0.003^2}{2.364^2} + \frac{0.05^2}{25.00^2}

and

\sigma_y^2 = 5.02 \cdot 10^{-8}

\sigma_y = 0.00022

Finally, we obtain

y = 0.09456 \pm 1.96 \cdot 0.00022 = 0.0945 \pm 0.0004

Now, we use Rule 2.

In Hint 3 we end up with four decimals, i.e. three significant digits (Rule 2).

4. Linear models #

In this section we will consider what the concept of error propagation means for the linear models that we learned about in Lesson 11. For example, if we regard the equation

y = b_0 + b_1 x

where b_0 is the intercept (value at x=0) and b_1 is the slope. Constructed from a number of n individual datapoints (i=1,2,\ldots ,n), for which

y_i = b_0 + b_1 x_i + e_i

The predicted value at x_i is

EQUATION 9.71

\hat{y}_{i} = b_0 + b_1 x_i

and e_i is the residual (or error)

e_i = y_i – \hat{y}_{i}

In previous lessons we have already learned about building and applying linear models (Least-Squares Regression, Lesson 11, and Calibration and Model Variance, Lesson 12). We learned there that, when building a model, y is the dependent variable and x is the independent variable. We very commonly encounter models like this as calibration curves in analytical chemistry and the slope is the al-important sensitivity of the analytical method.

After building the model (i.e. creating a calibration curve) we commonly invert the model (see Lesson 12, Section 4) to predict the concentration or amount x that corresponds to a measurement y.

Practical Examples of Direct Linear Modeling

There are also many examples of the direct use of linear models to replace difficult, tedious measurements of properties by performing relatively simple instrumental analysis. For example:

  • Relaxation times measured by low-field (time-domain) NMR are used to determine polymer properties, such as viscosity and average molecular weight;
  • Measuring the speed at which ultrasonic waves pass though media is used to determine density;
  • Intrinsic fluorescence can be measured to rapidly determine the chemical oxygen demand (COD) of water samples;
  • Measuring the current through a tin-dioxide sensor is commonly used in breathalysers to determine alcohol in exhales breath.

In all such cases errors in the measurement (x_i) are propagated to errors in the predicted value \hat{y}_i. Following our convention to use Greek symbols when describing the entire population, we can write for n measurements

\begin{bmatrix} y_1 \\ y_2 \\ \vdots \\ y_i \\ \vdots \\ y_n \end{bmatrix} = \begin{bmatrix} 1 & x_1 \\ 1 & x_2 \\ \vdots & \vdots \\ 1 & x_i \\ \vdots & \vdots \\ 1 & x_n \end{bmatrix} \begin{bmatrix} \beta_0 \\ \beta_1 \end{bmatrix} + \begin{bmatrix} \varepsilon_1 \\ \varepsilon_2 \\ \vdots \\ \varepsilon_i \\ \vdots \\ \varepsilon_n \end{bmatrix}

or

\mathbf{y} = [1\ \mathbf{x}] \begin{bmatrix} \beta_0 \\ \beta_1 \end{bmatrix} + \boldsymbol{\varepsilon} = \mathbf{X}\mathbf{\beta} + \boldsymbol{\varepsilon}

where \mathbf{X} = [1\ \mathbf{x}] and \mathbf{\beta} = \begin{bmatrix} \beta_0 \\ \beta_1 \end{bmatrix}. The least-squares solution for \mathbf{\beta} is

\mathbf{b} = (\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{y}

To establish how errors in \boldsymbol{y} propagate in \mathbf{\beta} we should realize that the errors in \varepsilon are represented by  and that

EQUATION 9.82

\sigma_e^2 = \frac{\sum_i e_i^2}{n – (m + 1)}

where m is the number of variables (in this case just 1, i.e. x). The sum of squares is often denoted as Q, i.e. Q = \sum_i e_i^2. In that case we may write

\sigma_e^2 = \frac{Q}{n – (m + 1)}

If we then apply the general rule of error propagation, we have

\sigma_b^2 = \left(\frac{\partial\left((\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{y}\right)}{\partial \mathbf{y}}\right)^2 \sigma_e^2 = \left((\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\right)^2 \sigma_e^2

Because \mathbf{X}^2 = \mathbf{X}^T\mathbf{X} and thus also (\mathbf{X}^T)^2 = \mathbf{X}^T\mathbf{X} we obtain

\sigma_b^2 = (\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{X}(\mathbf{X}^T\mathbf{X})^{-1}\sigma_e^2 = (\mathbf{X}^T\mathbf{X})^{-1}\sigma_e^2

This provides a simple way to translate the variance in the residuals to uncertainty in the coefficients b_0 and b_1.

5. Mean centring #

It is attractive to centre the calibration curve around the mean value of x (i.e. \bar{x}), as shown in Figure 2.

Figure 2. Mean-centred calibration curve. \bar{x} is the average x value and \bar{y} is the average y value. Z is the centre point of the curve.

Mean centring x results in a new variable z = x – \bar{x} and if we substitute this in our calibration curve we have

y_i = b_0 + b_1 x_i + e_i = b_0 + b_1 \bar{x} + b_1 z_i + e_i = \bar{y} + b_1 z_i + e_i = b_0 + b_1 z_i + e_i

where b_0 = \bar{y} is the intercept at z=0. The slope of the calibration curve (b_1) remains unaffected. For the sum of squares Q we can write

Q = \sum_i e_i^2 = \sum_i (y_i – \hat{y_i})^2 = \sum_i (y_i – b_0 – b_1 z_i)^2

The advantage of this transformation is that the covariances between b_0 and b_1 are zero (unlike the covariances between b_0 and b_1), so that the errors in b_0 and b_1 are independent. If it may be assumed that all y values (i.e. y_1, y_2, \ldots, y_i, \ldots, y_n) have equal variance the variance in the average (b_0 = \bar{y}) becomes

\sigma_{b_0}^2 = \frac{\sigma_y^2}{n} = \frac{\sigma_{y-\bar{y}}^2}{n} = \frac{\sigma_e^2}{n}

The error in any other point depends on the error in b_0, as well as that in b_1, since

\hat{y}_i = b_0 + b_1 (x_i – \bar{x})

we obtain

s_{\hat{y}_i}^2 = \left(\frac{\partial\left(b_0 + b_1(x_i – \bar{x})\right)}{\partial b_0}\right)^2 s_a^2 + \left(\frac{\partial\left(b_0 + b_1(x_i – \bar{x})\right)}{\partial b_1}\right)^2 s_{b_1}^2

or

s_{\hat{y}_i}^2 = {s_{b_0}}^2 + (x_i – \bar{x})^2 s_{b_1}^2 = {s_{b_0}}^2 + z_i^2 s_{b_1}^2

Showing that the error in the predicted y value is lowest at the central point (x_i=\bar{x}) and increases the further one gets away from this (i.e. if x_i – \bar{x} increases). This is illustrated in Figure 3.

Figure 3. Illustration of the confidence intervals around a linear model of the form y=b_0+b_1 x.

When x=0 we obtain the error in the y-axis intercept (b_0), i.e.

s_{b_0}^2 = s_a^2 + \bar{x}^2 s_{b_1}^2

Finally, if we invert the mean-centred model, we have for a newly measure  value (y_\text{new})

z_{\mathrm{new}} = \frac{y_{\mathrm{new}} – b_0}{b_1}

And we can again apply the general rule or error propagation

s_{\hat{z_i}}^2 = \left(\frac{\partial\left(\frac{y_{\mathrm{new}} – b_0}{b_1}\right)}{\partial y_{\mathrm{new}}}\right)^2 s_{y_{\mathrm{new}}}^2 + \left(\frac{\partial\left(\frac{y_{\mathrm{new}} – b_0}{b_1}\right)}{\partial b_0}\right)^2 {s_{b_0}}^2 + \left(\frac{\partial\left(\frac{y_{\mathrm{new}} – b_0}{b_1}\right)}{\partial b_1}\right)^2 s_{b_1}^2

which yields

s_{z_{\mathrm{new}}}^2 = \left(\frac{1}{b_1}\right)^2 s_{y_{\mathrm{new}}}^2 + \left(\frac{-1}{b_1}\right)^2 {s_{b_0}}^2 + \left(\frac{-(y_{\mathrm{new}} – b_0)}{b_1^2}\right)^2 s_{b_1}^2

= \left(\frac{1}{b_1}\right)^2 \left(s_{y_{\mathrm{new}}}^2 + s_{{b_0}}^2 + z_{\mathrm{new}}^2 s_{b_1}^2\right)

Thus, if we use a calibration curve to determine concentration (x values) from measured  values, the error also increases the further we move away from the centre point, defined by the average (\bar{x}) of all concentrations used to construct the model. We can finally express the error in the determined x values in terms of the variance of the residuals, by realizing that  

{\sigma_{b_0}}^2 = \frac{\sigma_e^2}{n}

and if we perform k replicates of the new measurement y_{\text{new}}

\sigma_{y_{\mathrm{new}}}^2 = \frac{\sigma_e^2}{k}

As described above, we also have

\sigma_{b_1}^2 = (\mathbf{Z}^T\mathbf{Z})^{-1}\sigma_e^2

Substitution in the above equation yields

s_{z_{\mathrm{new}}}^2 = \left(\frac{\sigma_e^2}{b_1}\right)^2\left(\frac{1}{k} + \frac{1}{n} + (\mathbf{Z}^T\mathbf{Z})^{-1} z_{\mathrm{new}}^2\right)

Finally, if we realize that

z_{\mathrm{new}}^2 = \frac{(y_{\mathrm{new}} – \bar{y})^2}{b_1^2}

and that

\mathbf{Z}^T\mathbf{Z} = (\mathbf{x} – \bar{x})^T(\mathbf{x} – \bar{x})

so that

\mathbf{Z}^T\mathbf{Z} = \sum_i (x_i – \bar{x})^2

we obtain

s_{z_{\mathrm{new}}}^2 = \left(\frac{\sigma_e^2}{b_1}\right)^2\left(\frac{1}{k} + \frac{1}{n} + \frac{(y_{\mathrm{new}} – \bar{y})^2}{b_1^2 \sum_i (x_i – \bar{x})^2}\right)

This allows us to determine confidence intervals for  values (e.g. concentrations) obtained from inverted calibration curves.

Concluding remarks #

In this lesson, we have shown how random measurement errors propagate through mathematical relationships to affect derived analytical results. General rules of error propagation were introduced and applied to common operations and to linear calibration models. Particular attention was given to how uncertainty behaves around calibration curves and how it increases when concentrations are obtained by inversion. Mean centring was shown to simplify error propagation by decorrelating model parameters and minimizing prediction uncertainty at the central point. Together, these concepts provide a rigorous basis for reporting uncertainties, confidence intervals, and significant digits in quantitative analytical chemistry.

Is this article useful?