1. Overview

In other parts of the technical guidance on consumer prices indices, we have explained how to calculate elementary aggregates – the “building blocks” of our inflation statistics – from a variety of data sources.

In this methodology article, we show how we can combine aggregates (including elementary aggregates) together to calculate higher- and higher-level aggregates, eventually giving our headline inflation measures. We also discuss how weights are used in this process, along with the data sources for these weights.

How we compile measures of inflation

This methodology article is part of a set explaining how consumer price inflation and associated indices are compiled. Other related articles include:

This set of articles replace components of our previous Consumer Prices Indices Technical Manual, 2019.

Nôl i'r tabl cynnwys

2. A summary of aggregation

As described in our Scope and coverage of consumer prices indices methodology article, our inflation measures are separated into components called “aggregates” (or sometimes “strata”). These exist within a hierarchy where “elementary aggregates” form the lowest level.

Aggregates in each level can be combined to produce progressively higher-level aggregates. This process of combining is called “aggregation”.

Within the technical guidance, we have shown several methods for combining prices (and in some cases quantities) to calculate elementary aggregates price indices. These methods vary across:

Scope and coverage of consumer prices indices also describes “consumption segments”. For areas of the basket where we are not using alternative data, a consumption segment corresponds to a single representative basket item. When using alternative data, consumption segments are typically broader than items, allowing us to capture a wider range of products, and are represented by one or more items.

Because of the different way in which consumption segments are used, aggregation occurs differently depending on the data sources we are using. When not using alternative data, we aggregate:

  • retailer to region
  • region to consumption segment (where the consumption segment is equivalent to a single item)

When using alternative data, we aggregate:

  • item to retailer (for local collection data)
  • extra strata to retailer (for alternative data)
  • retailer to region
  • region to consumption segment (where the consumption segment is represented by one or more items)

Once our indices have been aggregated to the consumption segment level, subsequent aggregation follows the international Classification of Individual Consumption According to Purpose (COICOP) standard. These steps are the same for all data sources:

  • consumption segment to subclass (COICOP-5)
  • subclass to class (COICOP-4)
  • class to group (COICOP-3)
  • group to division (COICOP-2)
  • division to all-index (COICOP-1)

To give an example of aggregation, regional Rice strata such as “Rice, Wales”, “Rice, London” and “Rice, Yorkshire” are aggregated with the other regional strata into a single “Rice” consumption segment.

Some levels in our aggregation structure are optional. For example, some areas of the basket may not be stratified by region. In these cases, the region level is represented by a single UK stratum, resulting in a one-to-one aggregation to the consumption segment.

Central item aggregates (discussed in our Traditional data aggregates in consumer prices methodology article) follow a bespoke aggregation process. This is discussed in more detail in Section 5: Central items aggregation and weights.

Nôl i'r tabl cynnwys

3. Methods for aggregation

In this section we discuss the methods we use in the aggregation module of our Reproducible Analytical Pipeline to combine elementary aggregates into higher-level aggregates (which include our headline inflation measures).

Data loading

The aggregation process begins with loading the elementary aggregates and weights (the weights are described further in Section 4: Weights).

As described in our Alternative data aggregates in consumer prices methodology article, our alternative data elementary aggregates are referenced to January of two years before the production year. Before aggregation, we use re-referencing (see Section 6: Re-referencing and chaining) to create annual January reference periods, ensuring consistency with our traditional data indices.

Invalid strata weight redistribution

We calculate thousands of alternative data sources elementary aggregates across our groceries, second-hand cars, and rail fares data sources.

Some aggregates may contain too few products to produce a reliable index throughout the year. Therefore, aggregates that are likely to frequently fail to calculate are removed to avoid imputation having a disproportionate effect. The aggregates we remove are described as “invalid strata” (see our Alternative data aggregates in consumer prices methodology article for more details).

Once invalid strata are removed, we must adjust the weights of the remaining aggregates. We describe this process as weight redistribution.

There are two forms of weight redistribution. Weight balancing redistributes the invalid stratum’s weight across the remaining strata while preserving the weight ratios between them. This is the most used method.

Example

Weights of 20:20:60 become 0:25:75 after redistribution of the first stratum, preserving the weight ratio of 1:3 between the latter two strata.

The second form of weight redistribution, weight shifting, involves transferring the entire weight of the invalid stratum to one other stratum. This is used when there is one stratum that is more representative of the invalid stratum than others (for example, we use weight shifting to transfer the weight of an invalid scanner supermarket stratum to the “multiples” stratum).

Example

Weights of 20:20:60 become 0:20:80 after redistribution of the first stratum, with the entire weight assigned to the last stratum.

Aggregate imputation

Most of our elementary aggregates (whether it is the GEKS-Törnqvist with alternative data, or Jevons, Dutot and Carli with traditional data) are “matched-model” index methods. These methods rely on being able to compare the price of a product across two months.

For example, if a pack of apples costs £1 in January, and £1.20 in March, then we can “match” these prices and observe a 20% price increase between the two months. However, if products enter or leave the market, we may lack a price in one of the two months and the match fails. If we cannot create any matches in our sample, then we may be unable to calculate the index.

We have some protections against a lack of product matches. In traditional data, we can find comparable replacements or incorporate non-comparable replacements with an imputed base price. In alternative data, the larger sample of products reduces the risk of being unable to perform any matching.

Despite these safeguards, there is a risk that some of these aggregates may not be calculable in a month, and we will need a method to account for this missing index. In particular, economic shocks can result in a substantial drop in product availability and result in more missing indices. When an elementary aggregate cannot be calculated, we apply “month-on-month aggregate imputation” to fill the gap:

  • we aggregate the available strata, redistributing the weight of the missing strata proportionally
  • we then use the month-on-month rate of the consumption segment (or the class level or higher, if the consumption segment cannot be calculated) to adjust the previous month for the missing stratum

This approach means imputed strata have a consistent monthly rate with the parent aggregate they draw the adjustment rate from, resulting in the monthly growth rate being unaffected by the imputation.

To give a synthetic example, consider a rice consumption segment that has 100 underlying elementary aggregates and two of these need to be imputed. We perform the following steps:

  • the 98 observed elementary aggregates are aggregated to the rice consumption segment in both the previous and current months
  • we observe the rice consumption segment index rising from 105 to 107.1, a 2% increase
  • one of the missing aggregates had an index of 110 in the previous month; this is increased by 2% to 112.2 (the second aggregate is imputed in the same way)

Once all missing elementary aggregates have been imputed, we can re-aggregate, now with the post-imputed indices and the original unadjusted weights, to give a final aggregation.

Note that if we were unable to receive data from one of our data suppliers, then our contingency planning involves using these imputation techniques to fill the gap until the next annual basket update, at which point we can review our collection methods for this area of the basket.

We also use this method to impute for highly seasonal parts of the basket where a sustained monthly collection of prices is not feasible. See our Special case aggregates in consumer prices methodology article for more information on seasonal items.

Aggregating up a level

Once imputation is complete, we have valid indices for all our elementary aggregates and can aggregate throughout the hierarchy. Aggregation is a weighted arithmetic average of lower-level indices (a Laspeyres-type index) – the formula for this is given in Formula 1.

Formula 1: Aggregation with a Laspeyres-type index

where:

  • a is the base month

  • b is the measurement month

  • Ihigher(a:b) is the higher-level aggregate to be calculated

  • Ii(a:b) is a lower-level aggregate

  • wia is the weight for the lower-level aggregate in month a

For example, consider two lower-level aggregates indices between January and March 2024:

  • aggregate 1: index 104, weight 1.2
  • aggregate 2: index 103, weight 3.2

Then to calculate the higher-level index:

Double-weights aggregation (CPI and CPIH)

When aggregating up to the consumption segment level in the Consumer Prices Index (CPI) and Consumer Prices Index including owner occupiers’ housing costs (CPIH), or when aggregating at all levels within the Retail Prices Index (RPI), we use a single set of weights and aggregate using the standard aggregation formula given in Formula 1.

For aggregation above the consumption segment level within the CPI and CPIH, we use two weights reference periods each year:

  • January weights (used for February to December)
  • December weights (used for January)

You can read more about the introduction of “double weights” in our Assessing the impact of methodological improvements on the Consumer Prices Index methodology article.

For aggregating above the consumption segment level in the CPI and CPIH, when aggregating February to December, we use the standard aggregation formula given in Formula 1.

However, when aggregating January, we use a modified formula – shown in Formula 2 – which first re-references the index reference period to match the new weights period.

Formula 2: The modified Laspeyres-type index used for aggregating January indices when using double weight for COICOP aggregation within the CPIH and CPI

A worked example of using double weights in aggregation is given in Section 7: Worked example of double weights.

Calculating monthly and annual rates

For each aggregate, we calculate the monthly (and annual) growth rates, describing the percentage change in the index compared with one month (or one year) ago.

If the two periods we are comparing use different index reference periods, we first chain these index series together (see Section 6: Re-referencing and chaining for more information on chaining).

The formula used to calculate the rates is given in Formula 3.

Formula 3: The formula for calculating monthly or annual rates

where:

  • I(t0:t) is the chained index from t0 to the current month

  • I(t0:t-x) is the chained index from t0 to the reference month x months before the current month

For example, if the chained index is 125 in March 2024 and 150 in March 2025 (both indices referencing January 2024), then:

This means there has been a 20% increase in the index between March 2024 and March 2025.

Contributions

Rates tell us about the proportional change in an index, whereas contributions tell us the influence that each of the underlying “child” aggregates has on its parent aggregate’s rate.

Contributions are often used to interpret the sectors of the economy that are most responsible for changes in our headline inflation rates.

To give a synthetic example:

  • a parent aggregate has a monthly rate of 2%
  • two child aggregates have contributions of 2.3% and negative 0.3% (summing to the 2% monthly rate)

In this example, we can see that the first child aggregate has a greater influence over its parent aggregate’s monthly rate.

The formula for monthly contributions is given in Formula 4.

Formula 4: The formula for calculating the contribution of a child aggregate to its parent aggregate’s monthly rate

Where:

  • wi is the weight of child aggregate i
  • Iit0,t is the index from t0 to t for child aggregate i
  • Ipt0,t-1 is the index from from t0 to t-1 for the parent aggregate

To give an example, suppose we have two child aggregates:

  • aggregate A: April index = 104, May index = 106, weight = 1.2
  • aggregate B: April index = 102, May index = 103, weight = 1.4

We first aggregate these to the parent index and calculate the monthly rate:

  • parent aggregate: April index = 102.92, May index = 104.38, monthly rate = 1.42

We can then calculate contributions for each of the child aggregates:

Note that the sum of these contributions is 1.42, equivalent to the parent aggregate monthly rate.

Annual contributions follow the same principles of breaking down the annual rate of a parent aggregate into child aggregate contributions but require extra steps because of the different reference periods used between the two periods being compared in the rate. See Section 8: Calculating annual contributions for more details on this.

Note that contributions are additive and so lower-level contributions can be summed to give higher-level contributions. For example, the contribution of the food division to the headline rate is the same as the sum of all contributions of all consumption segments within the food division to the headline rate.

Nôl i'r tabl cynnwys

4. Weights

Overview of weights

Consumer price indices measure changes in the cost of a representative basket of goods and services. This involves weighting together aggregated prices for different categories of goods and services so that each takes its appropriate share within household budgets.

For instance, as most people spend far more on electricity than on baked beans, a price rise for electricity must have a greater effect on overall price rises than a similar-sized increase for baked beans. At the lowest level, therefore, each elementary aggregate should receive a weight equal to the ratio of total expenditure on that good or service to all expenditure in the UK on goods and services within the scope of the index.

The Consumer Prices Index including owner occupiers’ housing costs (CPIH) and Consumer Prices Index (CPI) weights cover monetary expenditure within the UK on goods and services that are part of household final consumption expenditure (HHFCE). The weights are based on expenditure within the domestic territory by all private households, foreign visitors to the UK and residents of institutions (such as nursing homes, retirement homes and university halls of residence).

We use these weights when aggregating up the hierarchy (see Formula 1). This means we will need to calculate and use the following weights:

  • item (traditional data aggregating to retailer)
  • extra strata (alternative data aggregating to retailer)
  • retailer (where relevant)
  • region (where relevant)
  • consumption segment
  • Classification of Individual Consumption According to Purpose (COICOP)

Calculating fixed basket weights

The first step of our weight calculation process is to calculate (price-updated) expenditure shares for each of the classes and subclasses of COICOP. For most of the basket, these expenditure shares are calculated using HHFCE data. There are a few exceptions where some areas of the basket use other data sources:

  • the Living Costs and Food Survey is used in the calculation of weights for air travel, package holidays and (actual) rentals
  • the International Passenger Survey is used in the calculation of the weight for air travel
  • national accounts are used in the calculation of the weight for passport fees

Because of the processing requirements of HHFCE and similar data sources, we only receive these data on a one-year lag. To make the expenditure shares better represent the period within which the basket is introduced, we price-update the weights to the basket introduction month.

Most countries update both their basket and their COICOP weights in December. By contrast, we make two updates, introducing new COICOP weights in December and a new basket in January. The outcome is that we must produce two sets of weights each year:

  • weights in December, to be used in January
  • weights in January, to be used in February to December

These two sets of weights use the same base expenditure figures from HHFCE, but the price-updating is done to different months (you can read more about the introduction of double weights in our Assessing the impact of methodological improvements on the Consumer Prices Index methodology article).

Formula 5 shows the formula for calculating the price-updated weights for classes and subclasses. The weights are calculated in parts per 1,000. Class weights are rounded to the nearest integer, while subclass weights are rounded to one decimal place.

Formula 5: The formula used to calculate price-updated expenditure weights for classes and subclasses within COICOP

where:

  • wir is the weight of the i-th class (or subclass) in reference month r
  • Vib is the expenditure of the i-th class (or subclass) measured at time b
  • Ii(b,r) is the index of the i-th class (or subclass) between the expenditure period (b) and the reference period (r), used to price-update the expenditure to the reference period

To give a (synthetic) example, consider a simplified version of COICOP, which only has two subclasses (“flour” and “cereals”) and much lower expenditure levels. Suppose:

  • flour has £4,500 expenditure within the 2023 HHFCE; prices between 2023 and December 2024 rise by 10%, and prices between 2023 and January 2025 rise by 12%
  • cereals has £7,500 expenditure within the 2023 HHFCE; prices between 2023 and December 2024 rise by 6%, and prices between 2023 and January 2025 rise by 4%

Then the subclass weights for December 2024 are:

Whereas the subclass weights for January 2025 are:

Item weights

In the previous step, we calculated weights for each of the subclasses of COICOP. We now need to create a sample of items (for which we will sample prices and measure price change) to represent each of these subclasses.

Consider a simplified example where we use two items, “Basmati rice, 500 grammes to 1 kilogramme” and “Dried pasta, 500 grammes”, to represent the entire cereals subclass. While this means restricting price collection to these two items, the price movements of these two items will then be taken to be reflective of cereals more generally (in our actual CPI and CPIH, we would use more items).

As the subclass weights fluctuate each year, we add, remove, or change items to ensure that the items we collect are reflective of the subclass expenditure shares. This process is done as part of our annual basket review and is explained more in our Scope and coverage of consumer prices indices methodology article.

Item weights are derived from several data sources, including:

  • the Living Costs and Food Survey
  • national accounts expenditure
  • market research data
  • administrative data sources

These sources are used to apportion subclass weights to their underlying items. In the earlier synthetic example, the cereals subclass had a January 2025 weight of 392.5. If this subclass were represented by only two items, we may use LCF data to allocate 212.5 to “Basmati rice, 500 grammes to 1 kilogramme” and 180 to “Dried pasta, 500 grammes”. This ensures the total remains consistent with the subclass weight of 392.5, and that all items collectively sum to the overall basket weight of 1,000.

Since the basket is updated once a year, in January, there should be no structural changes in which items exist when the COICOP weights change in December. Therefore, we can calculate the December weights for each item by adjusting the January weights by the change in the subclass weights. The formula we use for this is shown in Formula 6.

Formula 6: How we calculate December item weights, based on the January-to-December weights ratio of its parent subclass

where:

  • wit is the weight of item i in month t
  • wSt is the weight of subclass S to which item i belongs, in month t

For example, if the cereals subclass weight increases from 392.5 to 402, then the two item weights for December (given in the previous section) can be calculated as:

By applying this adjustment, note that the new December item weights sum up to the new December subclass weights.

Although we create two sets of item weights, the double-weighting process is only used when aggregating from consumption segment to the COICOP subclass level, and for aggregation between levels of COICOP. When aggregating from the item level to the corresponding region stratum, we simply use the January weights for the full year.

Extra strata weights

As discussed in our Scope and coverage of consumer prices indices methodology article, a consumption segment may be represented partially or fully by alternative data. If this is the case, the alternative data retailer stratum may be stratified by additional “extra strata”, which work to partition the alternative data consumption segments. For example, whereas alternative data retailers are not being additionally stratified within groceries and rail fares, they are within second-hand cars, and we have extra strata for the age group of the second-hand car, and the make.

Where we have extra strata, their weights are calculated directly from the alternative data source as the expenditure share for that stratum over the previous year. For example, within second-hand cars, we calculate the one- to two-year-old car stratum weight by dividing the annual expenditure of cars within this age group by the expenditure of cars across all of our age groups.

Retailer weights

At the retailer level, some consumption segments are split by shop type into “multiples” (retailers with 10 or more outlets) and “independents” (retailers with fewer than 10 outlets). Retailers are identified in this way using an outlet count marker from the Inter-Departmental Business Register, then expenditure shares for the shop-types are calculated at the COICOP class level using data from the Annual Business Survey (note that there is a three-year lag because of processing requirements).

These shop-type weights are then propagated to any consumption segment within the Classification of Individual Consumption According to Purpose (COICOP) class. If a consumption segment is not stratified by shop-type, then this step is skipped as we only have a single traditional data stratum. In some cases, especially groceries, we may be using both scanner and traditional data. In this case, the retailer for which we have scanner data will be separated into their own retailer stratum and the weight of a scanner retailer will only be counted once.

For example, if multiples collectively have an 80% market share, and retailer X is a multiple with a 15% market share for which we have scanner data, then the retailer X stratum would have a weight of 15% and the multiples stratum would have its weight reduced to 65%. The underpinning multiples stratum is then based on traditional data and is split by item and measured using traditional data methods, whereas the retailer X stratum is based on scanner data and uses alternative data methods.

Region weights

Region weights are calculated by apportioning expenditure measured in the Living Costs and Food Survey (LCF) by region for broad product groups. Since the Retail Prices Index (RPI) relies on LCF data for its source of expenditure weights, we use RPI sections to define these broad product groups.

For the Consumer Prices Index (CPI) and Consumer Prices Index including owner occupiers’ housing costs (CPIH), these weights are then mapped onto the CPI aggregation structure at consumption segment level. Where a consumption segment is not stratified by region, this appears in the aggregation structure as a singular region stratum with a weight of 1 (note also that central items are calculated at the consumption segment level and so have no underlying region aggregates).

Consumption segment and COICOP weights

The process described in Section 3: Methods for aggregation resulted in creating item weights which, when summed, equal the subclass weights from which the item weights are proportioned. In fact, this is exactly how the COICOP and consumption segment weights are then calculated for aggregation at higher levels. For consumption segments, subclasses, classes, groups and divisions, we calculate their weight by summing together the weights of all the constituent items underpinning the stratum.

For example, if the Rice consumption segment contains Basmati rice with a weight of 0.7 and Microwavable rice with a weight of 0.5, then the Rice consumption segment weight would be 1.2. On a much bigger scale, if 100 items underpin the “food” division, then its weight would be the sum of the weights of all 100 items.

In Section 3 we described the creation of two sets of item weights: one referencing January and one referencing December. When aggregating from item to retailer level, we only use the January weights throughout the whole year. However, for aggregation above the consumption segment level, we use both sets of weights, using the January weights for February to December and the December weights for January. Therefore, we sum together the relevant item weights to create two sets of weights each year for consumption segment level and above.

Nôl i'r tabl cynnwys

5. Central items aggregation and weights

Central items (see our Traditional data aggregates in consumer prices methodology article) typically have bespoke calculation processes for calculating the elementary aggregates.

For some central items, no weight information is available, and we use an unweighted index method to calculate the central item index as a single stratum. However, if weight information is available, we may calculate some subaggregates for the central item (for example, based on varieties and suppliers). Wherever possible, weights used are calculated in expenditure terms, but where this information is not available, weights based solely on market shares are used as the closest available proxy.

Once the central item index is calculated, this is loaded into the aggregation hierarchy at the consumption segment level and can be used similar to other aggregates for aggregation to higher levels.

Nôl i'r tabl cynnwys

6. Re-referencing and chaining

Re-referencing

Index methods measure the price change of a group of products or aggregates from a reference month to a measurement month. For example, if we were to talk about measuring an index from January 2024 to December 2024, then January 2024 would be described as the reference month and December 2024 the current month. The resulting index would then reflect the proportional change in prices from the former to the latter.

Now suppose that:

  • the index from January 2024 to December 2024 was 110
  • the index from January 2024 to January 2025 was 112.2

Currently the December 2024 and January 2025 indices have a common reference month of January 2024. However, we can change the reference month easily. To re-reference an index to a new period, we perform the following calculation.

Formula 7: The formula used to re-reference an index

where:

  • I(tx:ty) measures the index from reference month x to current month y

For example, the January 2025 index can be re-referenced to December 2024 by calculating:

That is, prices are 2% higher in January 2025 in reference to December 2024.

Note that doing this has changed the index reference period, but it has not changed the price reference period, as the price comparisons used to calculate the indices used January base prices.

Chaining

Consider the example given previously. Note that prices from January 2024 to December 2024 are 10% higher, and prices from December 2024 to January 2025 are 2% higher. To calculate price change from January 2024 to January 2025, it would be natural to multiply these two numbers. Doing so would give that prices from January 2024 to January 2025 are 12.2% higher, consistent with the original January-to-January index we started with.

This process is described as “chaining” and in this instance behaves as the inverse of re-referencing. With re-referencing we are splitting a single index series into multiple parts, whereas with chaining we are combining multiple index series into one.

To chain two index series together we perform the following calculation.

Formula 8: The formula used to chain an index

So in the previously stated example, to calculate the index from January 2024 to January 2025:

Re-referencing and chaining allow us to change the index reference month as needed.

Reference periods when publishing

When the Harmonised Index of Consumer Prices (HICP) was launched, it was referenced on 1996 equals 100. Starting with the publication of the January 2006 index, it was referenced on 2005 equals 100.

The change of reference period was accompanied by a full re-referencing of all HICP indices back to 1996. This resulted in widespread revisions to 1-month and 12-month rates of change. This is because the rates of change with the 1996 reference period are calculated from indices rounded to one decimal place and are therefore subject to rounding errors. This is not the case for the rates of change referenced to 2005 that are calculated from unrounded indices; therefore, there will be no widespread revisions in future re-referencing exercises.

The index was then referenced to 2015 starting with the publication of the January 2016 index. This re-referencing will continue periodically for both the Consumer Prices Index including owner occupiers’ housing costs (CPIH) and the Consumer Prices Index (CPI).

Nôl i'r tabl cynnwys

7. Worked example of double weights method

Within the Consumer Prices Index (CPI) and Consumer Prices Index including owner occupiers’ housing costs (CPIH), aggregation from consumption segment level to subclass (the lowest level of Classification of Individual Consumption According to Purpose (COICOP)), and then between different levels of the COICOP hierarchy, involves the use of two weights per year.

The first is a December weight (used for January aggregation); the second is a January weight (used for February to December aggregation). To make use of these two weights, we will need to perform the aggregation calculations using two reference periods, then chain these indices together to obtain longer-term results.

For example, consider two second-hand cars consumption segments, one for petrol cars, one for diesel.

For petrol cars:

  • January 2024 to December 2024: index 111
  • January 2024 to January 2025: index 114
  • January 2024: weight 5.4
  • December 2024: weight 5.8

For diesel cars:

  • January 2024 to December 2024: index 115
  • January 2024 to January 2025: index 120
  • January 2024: weight 6.2
  • December 2024: weight 5.6

Our goal is to aggregate these into a single second-hand cars subclass index. Before aggregating we must re-reference the January 2025 indices to match the December 2024 weights period:

We will now aggregate both the December and January indices up a level, using their corresponding weights:

To calculate the January 2024 to January 2025 index for the second-hand cars index, we then need to chain these indices:

Nôl i'r tabl cynnwys

8. Calculating annual contributions

In Section 2: A summary of aggregation, we described how to calculate monthly rates. Annual contributions follow similar principles but are more complex since they compare two periods that use different weights in their aggregation. This means we need to break down the contributions into different parts and sum them together. The number of parts we use depends on whether we have used one or two weight reference periods (see Section 2 for more information on the use of double weights).

If we use a single set of weights per year, then our annual contributions use two parts:

  • one part from 12 months ago to January
  • one part from January to the current month t

Whereas if we use double weights, then our annual contributions use three parts:

  • from 12 months ago to December
  • from December to January
  • from January to the current month

The formulae for calculating the contribution of a child aggregate to its parent aggregate’s annual rate when using single and double weights are given in Formulas 9 and 10, respectively.

Formula 9: Formula for annual contributions (single weights)

Formula 10: Formula for annual contributions (double weights)

To give an example, we will aggregate two consumption segments together to give a subclass (Classification of Individual Consumption According to Purpose: COICOP-5) index. Note that aggregation from consumption segment to subclass uses the double weights approach, so we use the Formula 10 formula.

Suppose we have the following indices and weights for child aggregate A:

  • January 2025 to March 2025: index 104, weight 1.5
  • January 2025 to December 2025: index 108, weight 1.5
  • December 2025 to January 2026: index 101, weight 1.4
  • January 2026 to March 2026: index 102, weight 1.2

Also the following indices and weights for child aggregate B:

  • January 2025 to March 2025: index 110, weight 2.2
  • January 2025 to December 2025: index 112, weight 2.2
  • December 2025 to January 2026: index 103, weight 2.4
  • January 2026 to March 2026: index 101, weight 2.6

Then we can calculate the parent-level indices (using Formula 1):

We can calculate the chained index from January 2025 to March 2026 (using Formula 8):

Then calculate the annual rate between March 2025 and March 2026 (using Formula 3):

Now we can use our contributions formula (using Formula 10) to calculate the contribution for consumption segment A to the subclass:

And we can do the same for consumption segment B:

And as can be seen, these two contributions can be summed and rounded to equal the annual rate of the parent aggregate.

Nôl i'r tabl cynnwys

9. Definitions

All-items index 

An index that is constructed using price indices that represent every type of expenditure within the scope of the consumer price statistic. It is an average measure of the change in the prices of goods and services bought for the purpose of consumption in the UK. 

Annual Business Survey 

The Annual Business Survey (ABS) is our main structural business survey. The ABS supplies data on sales by retailer, broken down into commodity and service groups. 

Aggregates 

Aggregates (or "strata") are classifications into which the raw data can be separated. The strata "region" and "shop type" within item are generally used for the Consumer Prices Index including owner occupiers' housing costs (CPIH), Consumer Prices Index (CPI), Retail Prices Index (RPI) and the Household Costs Indices (HCIs). The data within each stratum are combined, and the resulting indices for each of the strata are then combined using stratum weights. 

Alternative data 

These are larger, automatically collected data sources. We have introduced several alternative data sources into the calculation of our consumer price indices since the early 2020s. 

Basket 

A convenient way to understand the nature of consumer price inflation statistics is to envisage a very large shopping basket comprising all the different kinds of goods and services bought by a typical household. As the prices of individual items in this basket vary, the total cost of the basket will also vary -- consumer price statistics measure the change from month to month in this total cost. 

Base prices 

Our index methods measure price change between two months: the base month and the current month. Base prices are the prices that are used to represent the price of a product in the base month. This representative price may be a single sampled price, or an average of many different prices. 

Carli Index 

In line with international best practice, we consider the use of Carli to be inappropriate. The Carli index is an unweighted index number formula, which is the arithmetic mean of price relatives. 

Central items 

About 150 items for which the prices are collected centrally, where the index calculation is carried out separately from the processing of the local collection data. 

Consumption segment 

A consumption segment is broader in scope than individual items but is still intended to be relatively homogenous, with respect to price change.  

For example, the consumption segment "rice" includes various representative items, such as dry rice, microwaveable rice, and rice snacks (like rice cakes) from the traditional data collection. For alternative data sources, the consumption segment includes all rice products that have been sold.  

In areas of the basket where we are not using alternative data, a consumption segment matches one of our representative items exactly.  

Chain linking 

A "chain link" is the mechanism we use for connecting indices with different baskets or weights. The calculation relies on a link period (December and January in CPI, CPIH and the HCIs). Subsequent index movements are "chained" to this link period by multiplication.  

Class 

In the CPIH, the CPI and the HCIs, all categories of expenditure on which significant amounts of money are spent are arranged into 12 divisions, which are subdivided into groups and then into classes. Examples of classes are bread and cereals, water supply, and transport insurance.  

We publish price indices for each class. 

Coverage 

Those transactions that can be identified and measured in practice. This is determined by the expenditure categories for which weights are compiled. 

Current price 

Our index methods measure price change between two months: the base month and the current month. Current prices are the prices that are used to represent the price of a product in the current month. This representative price may be a single sampled price, or an average of many different prices. 

Democratic weights 

The weight of each component in the "fixed basket" is based on the average household's share of expenditure. So, if each household had equal weight in the calculations, then the weights would be democratic.  

Democratic weights are used in the calculation of the HCIs. 

Division 

In the CPIH, CPI and HCIs, all categories of expenditure on which significant amounts of money are spent are arranged into 12 divisions, such as clothing and footwear, transport, and recreation and culture.  

We publish price indices for each division. 

Dutot Index 

An unweighted index number formula, which is the ratio of average prices. 

Elementary aggregates 

The set of indices calculated at the very first stage of aggregation. 

Enumeration 

Detailed listing of all outlets in a location, giving address, size, outlet type, and range of products sold. 

GEKS-Törnqvist: 

The GEKS-Törnqvist is described as a "multilateral" index method. It uses information from all months within a window, rather than comparing only two months at a time. This allows the index to capture the influence of price movements for products that appear or disappear within the window that may not have been captured by comparing only two months. 

Group 

In the CPIH and CPI, all categories of expenditure on which significant amounts of money are spent are arranged into 12 divisions, which are subdivided into groups. Examples of groups are food, postal services and insurance.  

In the Retail Prices Index (RPI), all categories of expenditure on which significant amounts of money are spent are arranged into 14 groups, such as food, housing and motoring costs.  

We publish price indices for each CPIH/CPI and RPI group. 

Independents 

Outlets are usually classified into two shop types: multiples and independents. Retailers with fewer than 10 outlets in the UK are classified as independents. 

Index day 

The specific Tuesday within index week when price collectors collect the majority of prices for traditional data sources. This maximises consistency in month‑to‑month comparisons. 

Index week 

The designated week, at or near the middle of each month, during which local price collectors gather prices. Index day falls within Index week. 

Index households 

Index households are all households that are included in the scope of the RPI. These are all private households in the UK, except pensioner households, that derive at least three-quarters of their income from state pensions and benefits, and high-income households whose total household income is in the top 4%, as measured by our Living Costs and Food Survey (LCF). 

Indicator codes 

Codes entered by price collectors into the handheld device if there are any special features in the prices recorded. For example, collectors enter an "S" if the item is on sale or special offer. 

Inflation rate 

The percentage change of a price index between two points in time. We typically refer to the annual inflation rate (comparing the current month with the same month a year earlier), or the monthly inflation rate (comparing the current month with the previous month). This term is usually used to mean the all-items inflation rate. 

Inter-Departmental Business Register 

The Inter-Departmental Business Register (IDBR) is a comprehensive list of UK businesses used by government for statistical purposes. The IDBR provides retailer outlet counts, which are used to determine whether outlet types are independents or multiples. 

Items 

Any type of consumer good or service that can be purchased, for example, apples. Several different varieties of that item may be available, for example, Granny Smith and Braeburn apples.  

Laspeyres Index 

A base-weighted index, where the prices are combined using weights derived from data from the base period. 

Laspeyres-type Index 

A fixed base weight index, such as the CPIH, CPI, RPI, or HCIs that has the basic characteristics of a Laspeyres Index. It is the price of the basket at a given time, as a percentage of its price on the base date. The CPIH, CPI, RPI and HCIs are not true Laspeyres Indices, as the underlying quantities do not coincide with the base date, but is the most recent available 12 months. 

Multiples 

Outlets are usually classified into two shop types: multiples and independents. Retailers with 10 more outlets are classified as multiples. 

Reference period 

A price index expresses price levels at a given point in time as a percentage of the level at some previous date, known as the reference period. The level at the reference period is 100. 

Representative items 

Representative items are those items that are in the basket of goods and services. 

Section 

In the RPI, all categories of expenditure on which significant amounts of money are spent are arranged into 14 groups, which are then subdivided into about 85 sections. Examples of sections are bread, cigarettes, postage, footwear, and rail fares.  

We publish price indices for each section. 

Strata (stratum) 

Strata (or "aggregates") are classifications into which the raw data can be separated. The strata "region" and "shop type" within item are generally used for the CPIH, CPI, RPI and HCIs. The data within each stratum are combined, and the resulting indices for each of the strata are then combined using stratum weights. 

Traditional data 

Prices that are manually collected through traditional sources (in-store, online and by phone). This applies to most areas of the consumer prices basket.  

Weight 

A factor by which a component is multiplied to reflect the level of consumers' expenditure on that component.

Nôl i'r tabl cynnwys

11. Cite this methodology article

Office for National Statistics (ONS), published 25 March 2026, ONS website, methodology article, Higher-level aggregation and weights in consumer prices

Nôl i'r tabl cynnwys

Manylion cyswllt ar gyfer y Methodoleg

Consumer Price Inflation team
cpi@ons.gov.uk
Ffôn: +44 1633 456900