Template:Inflation
This template defaults to calculating the inflation of Consumer Price Index values: staples, workers' rent, small service bills (doctor's costs, train tickets). For inflating capital expenses, government expenses, or the personal wealth and expenditure of the rich, the US-GDP or UK-GDP indexes should be used, which calculate inflation based on the gross domestic product (GDP) for the United States and United Kingdom, respectively. |
Do not assume that using this template will mean that a calculated value is "current", "as of 2024", "as of 2023" or even necessarily "recent". Per MOS:REALTIME, statements made using this template should either specify an end_year , or rely on |fmt=eq or {{Inflation/year}} to automatically indicate the latest year this template provides an inflation calculation. Do not use {{CURRENTYEAR}} . |
This template employs intricate features of template syntax.
You are encouraged to familiarise yourself with its setup and parser functions before editing the template. If your edit causes unexpected problems, please undo it quickly, as this template may appear on a large number of pages. You can conduct experiments, and should test all major changes, in either this template's sandbox, the general template sandbox, or your user space before changing anything here. |
This template is used on approximately 10,000 pages, so changes to it will be widely noticed. Please test any changes in the template's /sandbox or /testcases subpages, or in your own user subpage. Please consider discussing changes on the talk page before implementing them. |
This template calculates inflation based on several inflation index data sets. The template uses an identification code for an inflation index
(usually a country code), an original value
, an original start_year
and either a specific reference end_year
or by default the latest currently available end year,[1] and calculates the equivalent value from historical economic changes between the original and reference years. For example, this template calls the United States inflation table located in the sub-template Template:Inflation/US/dataset to perform the U.S. calculation.
Aside from a convenient way to calculate values from different specified time periods, this template allows a regularly automatically updated calculation of value based on the most recent available inflation data. Whenever inflation tables are updated, potentially annually, all articles using this template have their displayed values updated accordingly.
Usage[edit source]
{{Inflation|index|value|start_year}}
{{Inflation|index|value|start_year|end_year}}
{{Inflation|index|value|start_year|r=decimals|fmt=c}}
{{Inflation|index|value|start_year|r=decimals|fmt=eq}}
{{Inflation|index|value|start_year|r=decimals|fmt=eq|cursign=X}}
The supported countries are listed below, with their index
and available data periods:
index |
Country | start_year minimum |
end_year maximum
|
---|---|---|---|
AU | Australia[2] | 1901 | 2010 |
AU-road | Australia [...?][3] | 1998 | 2013 |
BD | Bangladesh[4] | 1986 | 2014 |
CA | Canada[5] | 1914 | 2018 |
DE | Germany[6] | 1882 | 2009 |
IN | India[7] | 1953 | 2018 |
JP | Japan[8] | 1946 | 2019 |
PH | Philippines[9] | 1985 | 2013 |
PK | Pakistan[10] | 1960 | 2013 |
UK | United Kingdom[11] | 1209 | 2018 |
UK-GDP | United Kingdom GDP deflator[12] | 1700 | 2016 |
US | United States[13] | 1800 | 2018 |
US-GDP | United States GDP deflator[14] | 1790 | 2018 |
ZAR | South Africa[15] | 1960 | 2016 |
KRW | South Korea[16] | 1951 | 2017 |
Parameters[edit source]
|index=
(parameter 1), required, an index code for one of several available inflation indexes.|value=
(parameter 2), required, original price or value from which to base the inflation calculation on. Will ignore any commas, but must not have a currency symbol.|start_year=
(parameter 3), required, original year from which to base the inflation calculation on. Must be a year available in the chosen inflation index. As an exception to this, if the current year is specified and noend_year
is specified, the template will outputvalue
unchanged, as it can be assumed an inflation of zero.|end_year=
(parameter 4), optional, reference year for which to calculate inflation. Must be higher (later) thanstart_year
, but not higher than the highest (most recent) year available in the chosen inflation index, and will default to the highest (most recent) available year if omitted.|r=digit
sets the digits to which the value must be rounded. A negative value indicates rounding to an upper significant digit, and a positive value indicates a fractional digit including trailing zeros. Defaults to0
, i.e., without cents.|fmt=c
will insert thousands separator commas into the calculated value.|fmt=eq
will show an equivalent-to phrase, in the format, "equivalent tocursign
end_value
inend_year
". Uses thousands separator commas.|cursign=
will set the currency symbol to be shown. Only functions when|fmt=eq
is used. Can use advanced symbol formats, but can only precede the calculated value. Default is$
.
Examples[edit source]
{{Inflation|DE|100|2000}}
→ 60{{Inflation|US|595|1982}}
→ 1545{{Inflation|US|595|1982|fmt=eq}}
→ equivalent to $1,545 in 2018{{Inflation|US|800|1942|fmt=eq|r=-3}}
→ equivalent to $12,000 in 2018{{Inflation|US|100|2010|2012|fmt=eq|r=2}}
→ equivalent to $105.28 in 2012US$595 ({{Inflation|US|595|1982|fmt=eq}})
→ US$595 (equivalent to $1,545 in 2018)US$595 ({{Inflation|US|595|1982|fmt=eq|cursign=[[United States dollar|US$]]}})
→ US$595 (equivalent to US$1,545 in 2018)$21 million (equivalent to ${{Inflation|US|21|2005|r=2}} million in {{Inflation/year|US}})
→ $21 million (equivalent to $26.94 million in 2018){{Inflation|UK|1|1209|fmt=eq|cursign=£}}
→ equivalent to £1,384 in 2018{{Inflation|AU|100|2024|fmt=eq}}
→ equivalent to $100 in 2024${{Inflation|US|100|2024}} in {{Inflation/year|US}}
→ $100 in 2018
It is possible to use the template in incorrect ways without producing error messages. Please read the warnings and appropriate uses of this template at the beginning of the template description.
{{Inflation|UK|10|1971|fmt=eq}}
→ equivalent to $139 in 2018 (Omitting the|cursign=
parameter will show the $ symbol by default, which is the wrong currency symbol for British currency){{Inflation|UK|10|1971|fmt=eq|cursign=£}}
→ equivalent to £139 in 2018$595 (${{Inflation|US|595|1982|fmt=c}} today)
→ $595 ($1,545 today) (Misleading time reference)$595 (${{Inflation|US|595|1982|fmt=c}} in {{CURRENTYEAR}})
→ $595 ($1,545 in 2024) (Misleading time reference)$100 (${{Inflation|US|595|1982|fmt=c}} adjusted for inflation)
→ $100 ($1,545 adjusted for inflation) (Misleading time reference)$595 ({{Inflation|US|595|1982|fmt=eq}})
→ $595 (equivalent to $1,545 in 2018)$595 (equivalent to ${{Inflation|US|595|1982|fmt=c}} in {{Inflation/year|US}})
→ $595 (equivalent to $1,545 in 2018)Jane Doe amassed a fortune of $1 billion in 1975, making her worth ${{Inflation|US|1|1975|fmt=c}} billion in {{Inflation/year|US}}.
→ Jane Doe amassed a fortune of $1 billion in 1975, making her worth $5 billion in 2018. (CPI is not for personal wealth of the wealthy – use GDP deflator instead)Jane Doe amassed a fortune of $1 billion in 1975, equivalent to ${{Inflation|US|1|1975|fmt=c}} billion in {{Inflation/year|US}}.
→ Jane Doe amassed a fortune of $1 billion in 1975, equivalent to $5 billion in 2018. (CPI is not for personal wealth of the wealthy – use GDP deflator instead)Jane Doe amassed a fortune of $1 billion in 1975, equivalent to ${{Inflation|US-GDP|1|1975|fmt=c}} billion in {{Inflation/year|US-GDP}}.
→ Jane Doe amassed a fortune of $1 billion in 1975, equivalent to $4 billion in 2018
Entering invalid parameters or omitting required parameters will result in an error message and categorization into Category:Pages with errors in inflation template.
{{Inflation}}
→ Error when using {{Inflation}}:|index=
(parameter 1),|value=
(parameter 2) and|start_year=
(parameter 3) must be specified.{{Inflation|abc}}
→ Error when using {{Inflation}}:|value=
(parameter 2) and|start_year=
(parameter 3) must be specified.{{Inflation|AU}}
→ Error when using {{Inflation}}:|value=
(parameter 2) and|start_year=
(parameter 3) must be specified.{{Inflation|AU|100}}
→ Error when using {{Inflation}}:|start_year=
(parameter 3) must be specified.{{Inflation|abc|€100|1980}}
→ Error when using {{Inflation}}:|index=abc
(parameter 1) not a recognized index.{{Inflation|DE|€100|1980}}
→ Error when using {{Inflation}}: NaN, check parameters for non-numeric data:|value=€100
(parameter 2).{{Inflation|DE|€100|zzzz|zzzz|r=zzzz}}
→ Error when using {{Inflation}}: NaN, check parameters for non-numeric data:|value=€100
(parameter 2),|start_year=zzzz
(parameter 3),|end_year=zzzz
(parameter 4) and|r=zzzz
.{{Inflation|AU|100|1200|2025}}
→ Error when using {{Inflation}}:|start_year=1200
(parameter 3) is lower than the earliest available year (1901) in index "AU" and|end_year=2025
(parameter 4) is greater than the latest available year (2010) in index "AU".{{Inflation|AU|100|2005|2004}}
→ Error when using {{Inflation}}:|start_year=2005
(parameter 3) is greater than|end_year=2004
(parameter 4).{{Inflation|AU|100|2005|2025|fmt=eq}}
→ Error when using {{Inflation}}:|end_year=2025
(parameter 4) is greater than the latest available year (2010) in index "AU".{{Inflation|AU|100|2024|2025|fmt=eq}}
→ Error when using {{Inflation}}:|end_year=2025
(parameter 4) is greater than the latest available year (2010) in index "AU".{{Inflation|AU|100|2024|1905|fmt=eq}}
→ Error when using {{Inflation}}:|start_year=2024
(parameter 3) is greater than|end_year=1905
(parameter 4).{{Inflation|AU|100|2025|fmt=eq}}
→ Error when using {{Inflation}}:|start_year=2025
(parameter 3) is greater than the latest available year (2010) in index "AU".
Tips & tricks[edit source]
Currency conversion[edit source]
This template is currency agnostic, which means it doesn't convert between different currencies. Thus, if you wanted to know how much DM 1,000.00 marks in 1960 are worth nowadays, entering {{Inflation|DE|1000|1960|r=2}}
would provide a result (2069.05) still in marks, not in euros.
Consequently, if you need a result in another currency than the one in which the original value is stated, for now you must do the conversion manually, as in the following example which uses the defined conversion rate of € 1 = DM 1.95583:
{{#expr:({{Inflation|DE|1000|1960|r=2}} / 1.95583) round 2}}
→ 1057.89
ToDo A currency conversion template to ease these conversion tasks is planned. This section will be updated accordingly once it's developed.
Non-decimal inputs[edit source]
The template does not accept non-decimal inputs such as £sd; these must be decimalized beforehand. For example, if you wanted to know the value of three shillings and sixpence (3s 6d) Sterling in 1950 in 2018, you must convert to the appropriate decimal value (in this case £0.175) for use in the template:
{{Inflation|GBP|0.175|1950|2018}}
→Error when using {{Inflation}}:
|index=GBP
(parameter 1) not a recognized index.
For £sd specifically {{Pounds, shillings, and pence}} can be used to convert to decimal; for other non-decimal currencies, such as the old Indian rupee, templates can be made for decimalization upon request.
Rounding[edit source]
By default the values are calculated to the unit, as for all but very low values cents are undesirable. You can specify rounding with the |r=
parameter which determines the number of decimals. To obtain cents use |r=2
, but other values can be used, including negative ones: |r=-3
, for example, will round to the nearest thousand, |r=-6
to the nearest million, and so on. It is advisable to avoid excessive precision; even if the start value is known to be exact, the template's result will not be because the inflation index tables are rarely accurate to more than about 1%, and a granularity of whole years is used.
Very large results[edit source]
Very large results are expressed in scientific notation ("1.2E+14" instead of "120000000000000") which is normally not desirable. A workaround is to express the value to be inflated with fewer digits, adding a multiplier text such as "trillion" after the result, using the "Show preview" button as many times as needed, changing parameters until the best result is found:
${{Inflation|US-GDP|1000000000000|1900|r=-11|fmt=c}}
→ $25,500,000,000,000${{Inflation|US-GDP|10000000000000|1900|r=-12|fmt=c}}
→ $2.55e+14${{Inflation|US-GDP|10000000000|1900|r=-9|fmt=c}} thousand
→ $255,000,000,000 thousand${{Inflation|US-GDP|10000000|1900|r=-6|fmt=c}} million
→ $255,000,000 million${{Inflation|US-GDP|10000|1900|r=-3|fmt=c}} billion
→ $255,000 billion${{Inflation|US-GDP|10|1900|fmt=c}} trillion
→ $255 trillion
The following section provides an automated way of avoiding this trial and error scenario.
Format price[edit source]
{{Format price}}
is a template specifically designed to display price values, both big and small, in a readable way. For example, instead of showing the whole of a huge number such as "953,783,409,856.12", it would show it as "954 billion", while small numbers have their cents part appearing as expected, "1234.5" being properly shown as "1.23 thousand".
${{Format price|{{Inflation|US-GDP|10000000000000|1900}}}}
→ $255 trillion${{Format price|{{Inflation|US-GDP|1000000|1990}}}}
→ $1.73 millionDM {{Format price|{{Inflation|DE|1000000|1957|1978}}}}
→ DM 2.01 million£{{Format price|{{Inflation|UK-GDP|1000|1323}}}}
→ £646 thousand
Documenting[edit source]
It's a good practice to provide a valid reference for the prices calculated with this template in articles where it's used. The template {{Inflation/fn}} was developed to ease this task. It accepts as its single parameter the same country codes used here, and will generate one or more appropriate footnotes. Typically, this is how a piece of text using it looks like:
In 1985 a unit cost on average $1,040. This is {{Inflation|US|1040|1985|fmt=eq}}}}.{{Inflation/fn|US}}
Resulting in this converted code (notice the footnote link at the end):
- In 1985 a unit cost on average $1,040. This is equivalent to $2,423 in 2018.[13]
The footnote thus generated appears whenever {{reflist}}
or <references />
is used in an article, usually in its "References" section. See below for the live example in this document's own References section, or click the above generated footnote to jump to it.
Limitations[edit source]
- Currently it isn't possible to "de-inflate" a value to what it would have been in a previous year. If you need this functionality, please request it at the talk page. Adding it won't be difficult, but there's no point in doing so before someone actually needs it.
- Substitution isn't supported at all. Trying to
{{subst:Inflation|...}}
would only result in a long sequence of embedded parser code without any direct benefit. If you need to obtain an inflated price only once, please use the special ExpandTemplates page then copy the result and paste it at the desired location.
Developer documentation[edit source]
An inflation series represents templates in the following categories:
- Template:Inflation/index
- Template:Inflation/index/dataset
- Template:Inflation/index/startyear
- Template:Inflation/doc/index (Which is then displayed at Inflation/name/dataset as the documentation, and needs to refer to the original data source)
Modifications need to be made to:
Current subpages:
In this templatespace:
Inflation |
- Inflation/AU
- Inflation/AU-road
- Inflation/AU-road/startyear
- Inflation/AU/startyear
- Inflation/BD/startyear
- Inflation/CA
- Inflation/CA/startyear
- Inflation/DE
- Inflation/DE/startyear
- Inflation/IN
- Inflation/IN/startyear
- Inflation/JP
- Inflation/JP/startyear
- Inflation/KRW
- Inflation/KRW/startyear
- Inflation/PH
- Inflation/PH/startyear
- Inflation/PK
- Inflation/PK/startyear
- Inflation/UK
- Inflation/UK-GDP
- Inflation/UK-GDP/startyear
- Inflation/UK/dataset
- Inflation/UK/startyear
- Inflation/US
- Inflation/US-GDP
- Inflation/US-GDP/dataset
- Inflation/US-GDP/startyear
- Inflation/US/dataset
- Inflation/US/startyear
- Inflation/ZAR
- Inflation/ZAR/startyear
- Inflation/doc
- Inflation/doc/USGDP
- Inflation/doc/cpi
- Inflation/doc/cpi-uk
- Inflation/doc/startyear
- Inflation/doc/table
- Inflation/fn
- Inflation/fn/doc
- Inflation/update warning
- Inflation/year
- Inflation/year/doc
TemplateData[edit source]
TemplateData for Inflation
This template calculates inflation based on several inflation index data sets. Note that this template defaults to calculating the inflation of Consumer Price Index values: staples, workers' rent, small service bills (doctor's costs, train tickets). For inflating capital expenses, government expenses, or the personal wealth and expenditure of the rich, the US-GDP or UK-GDP indexes should be used, which calculate inflation based on the [[gross domestic product]] (GDP) for the [[United States]] and [[United Kingdom]], respectively.
Parameter | Description | Type | Status | |
---|---|---|---|---|
Index | index 1 | An index code for one of several available inflation indexes. One of AU, AU-road, BD, CA, DE, IN, JP, PH, PK, UK, UK-GDP, US, US-GDP, ZAR.
| String | required |
Value | value 2 | Original price or value from which to base the inflation calculation on. Will ignore any commas.
| Number | required |
Start year | start_year 3 | Original year from which to base the inflation calculation on. Must be a year available in the chosen inflation index. As an exception to this, if the current year is specified and no 'End year' is specified, the template will output value unchanged, as it can be assumed an inflation of zero.
| Number | required |
End year | end_year 4 | Reference year for which to calculate inflation. Must be higher (later) than 'Start year', but not higher than the highest (most recent) year available in the chosen inflation index, and will default to the highest (most recent) available year if omitted.
| Number | optional |
Number of digits | r | Sets the digits to which the value must be rounded. A negative value indicates rounding to an upper significant digit, and a positive value indicates a fractional digit including trailing zeros. Defaults to 0.
| Number | optional |
Format | fmt | "c" will insert thousands separator commas into the calculated value. "eq" will show an equivalent-to phrase, in the format, "equivalent to (cursign)(end_value) in (end_year)". Uses thousands separator commas.
| String | optional |
Currency sign | cursign | Sets the currency symbol to be shown. Only functions when Format "eq" is used. Can use advanced symbol formats, but can only precede the calculated value. Default is $.
| String | optional |
See also[edit source]
- {{Inflation/year}}
- {{Inflation/fn}}
- {{Format price}}
- Category:Currency templates
- Inflation
- Consumer price index
- Consumer Price Index (United Kingdom)
- Harmonised Index of Consumer Prices
- Lists of country codes
- List of circulating currencies
- United States Consumer Price Index
- GDP deflator
References[edit source]
- ↑ How recently depends on how the data set for each country is constructed, and on the internal tables being updated accordingly every January. Some data tables provide inflation data up to December 31, 2023, others up to roughly June-July 2023, and others yet up to December 31, 2022.
- ↑ Australian Consumer Price Inflation figures follow the Long Term Linked Series provided in Australian Bureau of Statistics (2011) 6461.0 – Consumer Price Index: Concepts, Sources and Methods, 2011 as explained at §§3.10–3.11; this series comprises "from 1901 to 1914, the A Series Retail Price Index; from 1914 to 1946–47, the C Series Retail Price Index; from 1946–47 to 1948–49, a combination of the C Series Index, excluding rent, and the housing group of the CPI; and from 1948–49 onwards, the CPI." (3.10). Retrieved May 4, 2015
- ↑ Inflated values automatically calculated using the "3101 Road and bridge construction Australia" series provided in Australian Bureau of Statistics (2014) 6427.0 – Producer Price Indexes, Australia, Mar 2014: Table 17 Output of the Construction industries, subdivision and class index numbers. Retrieved 14 June 2014.
- ↑ Bangladesh – Consumer price index, International Monetary Fund, International Financial Statistics and data files.[dubious ]
- ↑ Canadian inflation numbers based on Statistics Canada tables 18-10-0005-01 (formerly CANSIM 326-0021) "Consumer Price Index, annual average, not seasonally adjusted". Statistics Canada. January 18, 2019. Retrieved March 6, 2019. and 18-10-0004-13 "Consumer Price Index by product group, monthly, percentage change, not seasonally adjusted, Canada, provinces, Whitehorse, Yellowknife and Iqaluit". Statistics Canada. Retrieved March 6, 2019.
- ↑ German inflation numbers based on data available from Deutsches Statistisches Bundesamt.
- ↑ Historic inflation India – CPI inflation, Inflation.eu, retrieved 24 January 2017
- ↑ Japanese Historical Consumer Price Index numbers based on data available from the Japanese Statistics Bureau. Japan Historical Consumer Price Index (CPI) – 1970 to 2014 Retrieved 30 July 2014. For between 1946 and 1970, from "昭和戦後史". Retrieved 2015-01-24.
- ↑ Consumer Price Index,Inflation Rate and Purchasing Power of the Peso (national averages)
- ↑ Pakistan – Consumer price index, International Monetary Fund, International Financial Statistics and data files.[dubious ]
- ↑ UK Retail Price Index inflation figures are based on data from Clark, Gregory (2017). "The Annual RPI and Average Earnings for Britain, 1209 to Present (New Series)". MeasuringWorth. Retrieved January 27, 2019.
- ↑ United Kingdom Gross Domestic Product deflator figures follow the Measuring Worth "consistent series" supplied in Thomas, Ryland; Williamson, Samuel H. (2018). "What Was the U.K. GDP Then?". MeasuringWorth. Retrieved January 5, 2018.
- ↑ a b Federal Reserve Bank of Minneapolis. "Consumer Price Index (estimate) 1800–". Retrieved January 2, 2019.
- ↑ Thomas, Ryland; Williamson, Samuel H. (2019). "What Was the U.S. GDP Then?". MeasuringWorth. Retrieved April 6, 2019. United States Gross Domestic Product deflator figures follow the Measuring Worth series.
- ↑ South Africa – Consumer price index, International Monetary Fund, International Financial Statistics and data files.[dubious ]
- ↑ Consumer Price index from Statistics Korea. Consumer Price Index by year. Retrieved 3 April 2018
External links[edit source]
- Template:Inflation at Wikipedia, the free Terran encyclopedia that anyone can edit.
The above documentation is transcluded from Template:Inflation/doc. (edit | history) Editors can experiment in this template's sandbox (create | mirror) and testcases (create) pages. Please add categories to the /doc subpage. Subpages of this template. |