{
 "metadata": {
  "source": "CT Office of Policy and Management — Municipal Fiscal Indicators, Uniform Chart of Accounts",
  "dataset_id": "e2qt-k238",
  "dataset_name": "Municipal Fiscal Indicators: Uniform Chart of Accounts, 2020-2023",
  "landing_page": "https://data.ct.gov/d/e2qt-k238",
  "source_url": "https://data.ct.gov/resource/e2qt-k238.json",
  "pulled": "2026-08-25",
  "dataset_last_updated": "2026-03-03",
  "recipe": "python Data/fetch_ct_ucoa.py (Python 3, standard library, no API key)",
  "row_count_source": 17632,
  "fiscal_year_note": "OPM year Y = the fiscal year ending June 30 of year Y. 2023 = FY 2022-23.",
  "basis_note": "Audited actual expenditures cross-walked to the state Uniform Chart of Accounts, split into salaries/wages, employee benefits, and all other costs. Same basis as ct_ucoa_town_indicators.json — actuals across funds, not the adopted budget.",
  "structure_note": "`function_totals` holds each town's function-level subtotal rows (the source's '<Function> Total' and 'Total Expenditures' rows), so figures are not double counted. `target_departments` holds every row the source publishes for West Haven, including department detail.",
  "town_scope_note": "`function_totals` covers West Haven and its hand-built peer groups only, to keep the browser download small. All 170 entities are in Data/ct_ucoa/mfi_ucoa_by_function_2020-2023.csv.",
  "gap_note": "The source omits some town-years entirely; those years are absent rather than zero. Missing for West Haven: 2020, 2021.",
  "merge_note": "`function_totals` is not in this file. It is statewide and identical for every town, so it is published once at /data/ct_ucoa_function_totals.json and merged onto this payload at runtime by TownCharts.load(). `target_departments` below is this town's own department detail and appears nowhere else."
 },
 "target": "West Haven",
 "years": [
  "2020",
  "2021",
  "2022",
  "2023"
 ],
 "fiscal_years": [
  "19-20",
  "20-21",
  "21-22",
  "22-23"
 ],
 "target_departments": {
  "2022": [
   {
    "function": "General Government Total",
    "department": "General Government Total",
    "wages": 3853190,
    "benefits": 2227534,
    "other": 5349227,
    "total": 11429951
   },
   {
    "function": "General Government",
    "department": "General Government",
    "wages": 3853190,
    "benefits": 2227534,
    "other": 5349227,
    "total": 11429951
   },
   {
    "function": "Public Safety Total",
    "department": "Public Safety Total",
    "wages": 17117104,
    "benefits": 10004803,
    "other": 6573287,
    "total": 33695194
   },
   {
    "function": "Public Safety",
    "department": "Police",
    "wages": 13236211,
    "benefits": 7651871,
    "other": 1322979,
    "total": 22211061
   },
   {
    "function": "Public Safety",
    "department": "Fire",
    "wages": 2268395,
    "benefits": 1420745,
    "other": 4603899,
    "total": 8293039
   },
   {
    "function": "Public Safety",
    "department": "Other Public Safety",
    "wages": 1612498,
    "benefits": 932187,
    "other": 646409,
    "total": 3191094
   },
   {
    "function": "Public Works Total",
    "department": "Public Works Total",
    "wages": 6473833,
    "benefits": 3742531,
    "other": 5424306,
    "total": 15640670
   },
   {
    "function": "Public Works",
    "department": "Highways/Streets",
    "wages": 2632698,
    "benefits": 1521966,
    "other": 1343736,
    "total": 5498400
   },
   {
    "function": "Public Works",
    "department": "Waste Management",
    "wages": 0,
    "benefits": 0,
    "other": 36150,
    "total": 36150
   },
   {
    "function": "Public Works",
    "department": "Sewer",
    "wages": 2346774,
    "benefits": 1356673,
    "other": 1619544,
    "total": 5322991
   },
   {
    "function": "Public Works",
    "department": "Other Public Works",
    "wages": 1494361,
    "benefits": 863892,
    "other": 2424876,
    "total": 4783129
   },
   {
    "function": "Health and Welfare Total",
    "department": "Health and Welfare Total",
    "wages": 864901,
    "benefits": 500000,
    "other": 306580,
    "total": 1671481
   },
   {
    "function": "Health and Welfare",
    "department": "Public Health Admin",
    "wages": 370811,
    "benefits": 214366,
    "other": 4179,
    "total": 589356
   },
   {
    "function": "Health and Welfare",
    "department": "Social Services",
    "wages": 494090,
    "benefits": 285634,
    "other": 302401,
    "total": 1082125
   },
   {
    "function": "Health and Welfare",
    "department": "Other Health & Welfare",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Culture and Recreation Total",
    "department": "Culture and Recreation Total",
    "wages": 742088,
    "benefits": 429002,
    "other": 1568140,
    "total": 2739230
   },
   {
    "function": "Culture and Recreation",
    "department": "Libraries",
    "wages": 0,
    "benefits": 0,
    "other": 1435692,
    "total": 1435692
   },
   {
    "function": "Culture and Recreation",
    "department": "Recreation",
    "wages": 742088,
    "benefits": 429002,
    "other": 132448,
    "total": 1303538
   },
   {
    "function": "Culture and Recreation",
    "department": "Other Culture/Recreation",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Education Total",
    "department": "Education Total",
    "wages": 49856688,
    "benefits": 18822966,
    "other": 21280767,
    "total": 89960421
   },
   {
    "function": "Education",
    "department": "Board of Education",
    "wages": 49856688,
    "benefits": 18822966,
    "other": 21280767,
    "total": 89960421
   },
   {
    "function": "Education",
    "department": "Regional School District",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Debt Service Total",
    "department": "Debt Service Total",
    "wages": 0,
    "benefits": 0,
    "other": 17900579,
    "total": 17900579
   },
   {
    "function": "Debt Service",
    "department": "Debt Service",
    "wages": 0,
    "benefits": 0,
    "other": 17900579,
    "total": 17900579
   },
   {
    "function": "Capital Outlay Total",
    "department": "Capital Outlay Total",
    "wages": 0,
    "benefits": 0,
    "other": 812317,
    "total": 812317
   },
   {
    "function": "Capital Outlay",
    "department": "Capital Outlay",
    "wages": 0,
    "benefits": 0,
    "other": 812317,
    "total": 812317
   },
   {
    "function": "Other Total",
    "department": "Other Total",
    "wages": 0,
    "benefits": 0,
    "other": 4697479,
    "total": 4697479
   },
   {
    "function": "Other",
    "department": "Other",
    "wages": 0,
    "benefits": 0,
    "other": 4697479,
    "total": 4697479
   },
   {
    "function": "Total Expenditures",
    "department": "Total Expenditures",
    "wages": 78907804,
    "benefits": 35726836,
    "other": 63912682,
    "total": 178547322
   }
  ],
  "2023": [
   {
    "function": "General Government Total",
    "department": "General Government Total",
    "wages": 4135894,
    "benefits": 2821546,
    "other": 2260443,
    "total": 9217883
   },
   {
    "function": "General Government",
    "department": "General Government",
    "wages": 4135894,
    "benefits": 2821546,
    "other": 2260443,
    "total": 9217883
   },
   {
    "function": "Public Safety Total",
    "department": "Public Safety Total",
    "wages": 18749062,
    "benefits": 12736320,
    "other": 1990307,
    "total": 33475689
   },
   {
    "function": "Public Safety",
    "department": "Police",
    "wages": 14601755,
    "benefits": 9961457,
    "other": 1260704,
    "total": 25823916
   },
   {
    "function": "Public Safety",
    "department": "Fire",
    "wages": 2377090,
    "benefits": 1567204,
    "other": 0,
    "total": 3944294
   },
   {
    "function": "Public Safety",
    "department": "Other Public Safety",
    "wages": 1770217,
    "benefits": 1207659,
    "other": 729603,
    "total": 3707479
   },
   {
    "function": "Public Works Total",
    "department": "Public Works Total",
    "wages": 6546151,
    "benefits": 4316248,
    "other": 15358571,
    "total": 26220970
   },
   {
    "function": "Public Works",
    "department": "Highways/Streets",
    "wages": 2632902,
    "benefits": 1796191,
    "other": 798324,
    "total": 5227417
   },
   {
    "function": "Public Works",
    "department": "Waste Management",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Public Works",
    "department": "Sewer",
    "wages": 2516822,
    "benefits": 1567401,
    "other": 8458860,
    "total": 12543083
   },
   {
    "function": "Public Works",
    "department": "Other Public Works",
    "wages": 1396427,
    "benefits": 952656,
    "other": 6101387,
    "total": 8450470
   },
   {
    "function": "Health and Welfare Total",
    "department": "Health and Welfare Total",
    "wages": 968031,
    "benefits": 660399,
    "other": 244206,
    "total": 1872636
   },
   {
    "function": "Health and Welfare",
    "department": "Public Health Admin",
    "wages": 428964,
    "benefits": 292643,
    "other": 7747,
    "total": 729354
   },
   {
    "function": "Health and Welfare",
    "department": "Social Services",
    "wages": 539067,
    "benefits": 367756,
    "other": 236459,
    "total": 1143282
   },
   {
    "function": "Health and Welfare",
    "department": "Other Health & Welfare",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Culture and Recreation Total",
    "department": "Culture and Recreation Total",
    "wages": 864422,
    "benefits": 589717,
    "other": 1689891,
    "total": 3144030
   },
   {
    "function": "Culture and Recreation",
    "department": "Libraries",
    "wages": 0,
    "benefits": 0,
    "other": 1575374,
    "total": 1575374
   },
   {
    "function": "Culture and Recreation",
    "department": "Recreation",
    "wages": 864422,
    "benefits": 589717,
    "other": 114517,
    "total": 1568656
   },
   {
    "function": "Culture and Recreation",
    "department": "Other Culture/Recreation",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Education Total",
    "department": "Education Total",
    "wages": 49860365,
    "benefits": 18218573,
    "other": 21881621,
    "total": 89960559
   },
   {
    "function": "Education",
    "department": "Board of Education",
    "wages": 49860365,
    "benefits": 18218573,
    "other": 21881621,
    "total": 89960559
   },
   {
    "function": "Education",
    "department": "Regional School District",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Debt Service Total",
    "department": "Debt Service Total",
    "wages": 0,
    "benefits": 0,
    "other": 12443434,
    "total": 12443434
   },
   {
    "function": "Debt Service",
    "department": "Debt Service",
    "wages": 0,
    "benefits": 0,
    "other": 12443434,
    "total": 12443434
   },
   {
    "function": "Capital Outlay Total",
    "department": "Capital Outlay Total",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Capital Outlay",
    "department": "Capital Outlay",
    "wages": 0,
    "benefits": 0,
    "other": 0,
    "total": 0
   },
   {
    "function": "Other Total",
    "department": "Other Total",
    "wages": 0,
    "benefits": 0,
    "other": 3449335,
    "total": 3449335
   },
   {
    "function": "Other",
    "department": "Other",
    "wages": 0,
    "benefits": 0,
    "other": 3449335,
    "total": 3449335
   },
   {
    "function": "Total Expenditures",
    "department": "Total Expenditures",
    "wages": 81123925,
    "benefits": 39342803,
    "other": 59317808,
    "total": 179784536
   }
  ]
 }
}