Village vs Town — per-capita comparison
Comparison table
| Function | Village total | Village / resident | Town-outside total | Town-outside / resident | Δ / resident |
|---|---|---|---|---|---|
Streets, DPW & lighting | $164K | $83 | $543K | $78 | +$5 |
General government | $262K | $133 | $102K | $15 | +$118 |
Planning, zoning & building | $14K | $7 | $85K | $12 | −$5 |
Population: Village of Red Hook 1,975 · Town outside villages 6,966 (Town total 9,953 minus Village RH and Tivoli). 2020 Decennial Census, via NYS Open Data.
Δ / resident is Village minus Town-outside. Positive (red) means Village residents pay more for the same function on a per-capita basis. Negative (green) means Town-outside residents pay more.
What each row covers
Streets, DPW & lighting
Road maintenance, snow removal, street lighting, brush & weeds, sidewalks. Village taxpayers fund their own Village streets; Town-outside taxpayers fund Town-outside roads (Town DB highway + Town B streetlights/sidewalks). The Town A + DA highway-wide costs are paid by everyone in the Town (Village included) proportional to assessed value — those are shown as a context row.
- A51101 Maint of Streets, Pers Serv$66K
- A51104 Maint of Streets, Contr Expend$52K
- A51824 Street Lighting, Contr Expend$36K
- A51424 Snow Removal, Contr Expend$8K
- A51421 Snow Removal, Pers Serv$1K
- DB51122 Perm Improve Highway, Equip & Cap Outlay$126K
- DB51101 Maint of Streets, Pers Serv$107K
- DB51421 Snow Removal, Pers Serv$80K
- DB51104 Maint of Streets, Contr Expend$79K
- DB51424 Snow Removal, Contr Expend$62K
- DB51304 Machinery, Contr Expend$39K
- DB51401 Brush And Weeds, Pers Serv$35K
- DB51301 Machinery, Pers Serv$11K
- DB51404 Brush And Weeds, Contr Expend$4K
- A50101 Street Admin, Pers Serv$48K
- A51324 Garage, Contr Expend$16K
- A51322 Garage, Equip & Cap Outlay$14K
- A51824 Street Lighting, Contr Expend$10K
- A50104 Street Admin, Contr Expend$2K
General government
Clerk, treasurer, mayor/supervisor, board operations, legal, audit, insurance, IT. Village A is paid by Village residents; Town B is paid by Town-outside residents. The Town A general-government overhead is paid by everyone in the Town (Village included).
- A19894 Other General Govt Support, Contract Exp$72K
- A10101 Legislative Board, Pers Serv$30K
- A16204 Operation of Plant, Contr Expend$24K
- A19104 Unallocated Insurance, Contr Expend$23K
- A14204 Law, Contr Expend$23K
- A11101 Municipal Court, Pers Serv$20K
- A13251 Treasurer, Pers Serv$14K
- A80101 Zoning, Pers Serv$9K
- A14101 Clerk,pers Serv$9K
- A16404 Central Garage Contr Expend$8K
- A14104 Clerk,contr Expend$5K
- A80104 Zoning, Contr Expend$5K
- A13201 Auditor, Pers Serv$4K
- A12101 Mayor, Pers Serv$4K
- A16201 Operation of Plant, Pers Serv$3K
- A16202 Operation of Plant, Equip & Cap Outlay$3K
- A13254 Treasurer, Contr Expend$3K
- A12104 Mayor, Contr Expend$2K
- A11104 Municipal Court, Contr Expend$2K
- A10104 Legislative Board, Contr Expend$1K
- A14604 Records Mgmt, Contr Expend$100
- B80204 Planning, Contr Expend$36K
- B80104 Zoning, Contr Expend$19K
- B80904 Environmental Control, Contr Expend$14K
- B19104 Unallocated Insurance, Contr Expend$14K
- B80101 Zoning, Pers Serv$13K
- B80201 Planning, Pers Serv$4K
- B80202 Planning, Equip & Cap Outlay$1K
- B80901 Environmental Control, Pers Serv$651
- B80102 Zoning, Equip & Cap Outlay$365
- A14101 Clerk,pers Serv$53K
- A12201 Supervisor,pers Serv$49K
- A13551 Assessment, Pers Serv$46K
- A11101 Municipal Court, Pers Serv$44K
- A16204 Operation of Plant, Contr Expend$23K
- A19104 Unallocated Insurance, Contr Expend$15K
- A10101 Legislative Board, Pers Serv$14K
- A16804 Central Data Process, Contr Expend$12K
Planning, zoning & building
Zoning enforcement, planning board operations, building/safety inspection. The Town's planning/zoning work covers the unincorporated area (Fund B); the Village's covers properties inside Village limits (Fund A). Both jurisdictions run their own planning boards and ZBAs.
- A80101 Zoning, Pers Serv$9K
- A80104 Zoning, Contr Expend$5K
- B80204 Planning, Contr Expend$36K
- B80104 Zoning, Contr Expend$19K
- B80101 Zoning, Pers Serv$13K
- B36201 Safety Inspection, Pers Serv$10K
- B80201 Planning, Pers Serv$4K
- B36204 Safety Inspection, Contr Expend$1K
- B80202 Planning, Equip & Cap Outlay$1K
- B80102 Zoning, Equip & Cap Outlay$365
- B36202 Safety Inspection, Equip & Cap Outlay$305
Methodology
The cost-base split. The two jurisdictions divide responsibility for similar services across multiple funds. NYS OSC uses a letter-prefix convention on account codes:
- Village A fund — paid by Village taxpayers only. Funds Village streets, Village government, Village planning/zoning.
- Town A fund — paid by ALL Town residents, including those who live inside a village. Funds Town-wide services like the Supervisor's office, court operations, the Town highway garage.
- Town B fund — paid by Town residents who live OUTSIDE a village. Funds services the Town provides only to that population: planning/zoning for unincorporated areas, sidewalk maintenance, streetlights outside Village limits.
- Town DA / DB funds — Town highway. DA is Town-wide highway (paid by everyone), DB is highway services for Town-outside-villages only.
The per-capita denominator. Each fund is divided by the population that actually pays into it:
- Village A → divided by Village population (1,975)
- Town B + DB → divided by Town-outside population (6,966)
- Town A + DA (context only, not in the comparison column) → divided by total Town population (9,953)
What this does NOT capture. Village residents pay the Town tax line on their bill too — that covers their share of Town A + DA, weighted by assessed value. The comparison column above shows what each set of residents uniquely funds; the Town-wide context row (where present) shows the spending paid by both, weighted evenly per resident for simplicity.
FY mismatch. Village fiscal year runs June–May; Town fiscal year is calendar year. The latest available AFR actuals for each were used — Village FY99/00, Town FY99/99 — but they don't cover identical periods.
Source rows are pulled from fiscal_lines; mapping logic is in site/src/lib/getCrossJurisdictionComparison.ts.