Get long-run state pension spending projections
Source:R/fiscal_sustainability.R
get_pension_projections.RdDownloads (and caches) the OBR Fiscal Risks and Sustainability Report executive summary charts and tables workbook and returns 50-year projections for state pension spending as a share of GDP, under alternative demographic and triple-lock uprating scenarios.
Value
An obr_tbl with the standard v0.4.0 schema plus a
scenario_type column to group scenarios:
- period
Fiscal year, e.g.
"2030-31"(character)- period_type
Always
"fiscal_year"- series
Scenario name, e.g.
"Central projection","Higher life expectancy"(character)- metric_type
Always
"pct"- value
State pension spending as a percentage of GDP (numeric)
- unit
Always
"pct"- scenario_type
Either
"Demographic scenarios"or"Triple lock scenarios"(character)
Details
This data is unique to the Fiscal Risks and Sustainability Report and is not available in any other OBR publication. It illustrates how ageing demographics and pension uprating rules interact to determine the long-run cost of the state pension. The exact vintage is recorded in the returned object's provenance.
Examples
# \donttest{
op <- options(obr.cache_dir = tempdir())
proj <- get_pension_projections()
#> ℹ Downloading fsr_executive_summary.xlsx from OBR...
#> ✔ Saved to cache.
central <- proj[proj$scenario_type == "Demographic scenarios" &
proj$series == "Central projection", ]
tail(central, 10)
#> # obr_tbl: 10 rows x 7 cols
#> # Source: OBR Fiscal Risks and Sustainability Report, July 2025
#> # URL: https://obr.uk/download/july-2025-fiscal-risks-and-sustainability-charts-and-tables-executive-summary/
#> # Retrieved: 2026-05-07 21:08:55 UTC
#> # File MD5: bdf4d8711300
#> # Package: obr 0.5.0
#>
#> period period_type series metric_type value unit
#> 42 2064-65 fiscal_year Central projection pct 7.240896 pct
#> 43 2065-66 fiscal_year Central projection pct 7.344158 pct
#> 44 2066-67 fiscal_year Central projection pct 7.448355 pct
#> 45 2067-68 fiscal_year Central projection pct 7.548574 pct
#> 46 2068-69 fiscal_year Central projection pct 7.640862 pct
#> 47 2069-70 fiscal_year Central projection pct 7.732326 pct
#> 48 2070-71 fiscal_year Central projection pct 7.820863 pct
#> 49 2071-72 fiscal_year Central projection pct 7.769048 pct
#> 50 2072-73 fiscal_year Central projection pct 7.661269 pct
#> 51 2073-74 fiscal_year Central projection pct 7.650863 pct
#> scenario_type
#> 42 Demographic scenarios
#> 43 Demographic scenarios
#> 44 Demographic scenarios
#> 45 Demographic scenarios
#> 46 Demographic scenarios
#> 47 Demographic scenarios
#> 48 Demographic scenarios
#> 49 Demographic scenarios
#> 50 Demographic scenarios
#> 51 Demographic scenarios
dem <- proj[proj$scenario_type == "Demographic scenarios", ]
options(op)
# }