Fyrimynd:Inflation

22976

Documentation icon Skjalfesting til fyrimyndina

This template takes a country_code, for example, "US" for the United States or "UK" for United Kingdom, a value in that country's currency, a start_year, and applies to it the country's consumer price inflation until "recently" or another end year.[1] For example, this template calls the U.S. inflation table located in the sub-template Template:Inflation/US/dataset to perform the U.S. calculation. This means that whenever a new year arrives and the inflation tables are updated, all articles using this template have their displayed values updated accordingly.

Alternatively, you can provide a second, optional end_year parameter, and the value will be inflated for the period between the two years, providing a convenient way of getting values from different time periods adjusted around the same date.

Usage

{{Inflation|country_code|value|start_year}}{{Inflation|country_code|value|start_year|end_year}}{{Inflation|country_code|value|start_year|r=decimals|fmt=c}}{{Inflation|country_code|value|start_year|r=decimals|fmt=eq}}{{Inflation|country_code|value|start_year|r=decimals|fmt=eq|cursign=X}}

The supported countries are listed below, with their country_code and minimum start_year:

Country namecountry_codeminimum for start_year
Australia[2]AU1901
Canada[3]CA1916
Germany[4]DE1882
India[5]IN1953
Japan[6]JP1946
Philippines[7]PH1985
United Kingdom[8]UK1209
United States[9]US1800

Parameters

  • country_code (parameter 1) can be: AU, CA, DE, IN, JP, PH, UK, US, UKNGDPPC, etc.
  • value (parameter 2) can have commas, but no currency symbol.
  • start_year (parameter 3) depends on years allowed for each country.
  • end_year (parameter 4), if provided, must be higher (later) than start_year, but not higher than the current year, and will default to "recently" if left out;
  • r=digit sets the digit in which the value must be rounded, defaulting to "0" if unspecified, i.e., without cents (see Tips & tricks below for details on how to use this parameter).
  • fmt=c will insert commas into the inflated value.
  • fmt=eq will show an equivalent-to phrase.
  • cursign=X will set the currency symbol when 'fmt=eq' is used (default: $).

Examples

  • Green tickY {{Inflation|US|595|1982}} = 1459
  • Green tickY US $595 (${{Inflation|US|595|1982|fmt=c}} today) = US $595 ($1.459 today)
  • Green tickY US $595 ({{Inflation|US|595|1982|fmt=eq}}) = US $595 (equivalent to $1.459 in 2024)
  • Green tickY {{Inflation|US|800|1942|r=-3|fmt=eq}} = equivalent to $12.000 in 2024
  • Green tickY {{Inflation|US|100|2010|2012|r=2|fmt=eq}} = equivalent to $105,28 in 2012
  • Green tickY $21 million (equivalent to ${{Inflation|US|21|2005|r=2}} million in {{Inflation-year|US}}) = $21 million (equivalent to $25.44 million in 2014)
  • Red XN {{Inflation|UK|1|1323|fmt=eq}} = equivalent to $587 in 2024
  • Green tickY {{Inflation|UK|1|1323|fmt=eq|cursign=£}} = equivalent to £587 in 2024
  • Green tickY {{Inflation|DE|100|2000}} = 117

Entering invalid parameters will result in a link to the NaN article:

  • Red XN {{Inflation}} = 22976
  • Red XN {{Inflation|abc}} = Feilur í frágreiðing: Ókend teknseting "[".{Inflation} - NaN check amount: {{{2}}} or year: {{{3}}}. 
  • Red XN {{Inflation|DE|1000000}} = 1988561
  • Red XN {{Inflation|US|1000000|1200|3000}} =
    {Inflation} - Year: 1200 lower than US minimum, 1800, for amount: 1000000. 
    {Inflation} - End year: 3000 greater than current year, 2024 for amount: 1000000. NaN
  • Red XN {{Inflation|UK|1000000|2005|2004}} =
    {Inflation} - Start year: 2005 greater than end year, 2004 for amount: 1000000. NaN

Tips & tricks

Currency conversion

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 (4062.93) 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:

  • Green tickY {{#expr:({{Inflation|DE|1000|1960|r=2}} / 1.95583) round 2}} = 2077.34

A currency conversion template to ease these conversion tasks is planned. This section will be updated accordingly once it's developed.

Rounding

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

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:

  • Green tickY ${{Inflation|US|1000000000000|1900|r=-11|fmt=c}} = $28.400.000.000.000
  • Red XN ${{Inflation|US|10000000000000|1900|r=-12|fmt=c}} = $284.000.000.000.000
  • Red XN ${{Inflation|US|10000000000|1900|r=-9|fmt=c}} thousand = $284.000.000.000 thousand
  • Green tickY ${{Inflation|US|10000000|1900|r=-6|fmt=c}} million = $284.000.000 million
  • Green tickY ${{Inflation|US|10000|1900|r=-3|fmt=c}} billion = $284.000 billion
  • Green tickY ${{Inflation|US|10|1900|fmt=c}} trillion = $284 trillion

The following section provides an automated way of avoiding this trial and error scenario.

Format price

{{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 milliard", while small numbers have their cents part appearing as expected, "1234.5" being properly shown as "1.23 túsund".

Documenting

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.288 in 2024.[9]

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

  1. 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.
  2. 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

An inflation series represents templates in the following categories:

  • Template:Inflation/name
  • Template:Inflation/name/dataset
  • Template:Inflation/name/startyear
  • Template:Inflation/doc/name (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:

  • Template:Inflation-fn

See also

  • {{Inflation-fn}}
  • {{Format price}}
  • Inflation
  • Consumer price index
  • Harmonised Index of Consumer Prices
  • Lists of country codes
  • List of circulating currencies
  • United States Consumer Price Index
  • Consumer Price Index (United Kingdom)


References