PORTLAND PARKS ATLAS — ANNUAL SERVICE BUDGET EVIDENCE

These files describe adopted budgets, not actual expenses, complete park costs,
net subsidies, or the resources needed to meet a defined service standard.
All monetary fields are US dollars, not thousands or cents. Blank cost fields
mean unavailable. Zero is a recorded net budget amount within the stated scope.

SOURCE
City Budget Office, FY2026-27 Adopted Budget Dashboard; author-enabled workbook:
https://public.tableau.com/workbooks/FY2026-27AdoptedBudgetDashboard.twb?showVizHome=no
Context, budget books and July 2026 supplement:
https://www.portland.gov/budget/2026-2027-budget/development/adopted
Original workbook archived September 16, 2026; later amendments are not applied.
The fiscal year is July 1–June 30. All three periods are ADOPTED snapshots.
They must not be relabeled as actuals or year-end results.

FILES
adopted-budget-source-rows.csv — Public expense and revenue rows used by the calculation.
  The original archive's CSV line number is retained. Employee/position data is
  excluded. Original fields are preserved in the allowlisted extract.
accounts.csv — Every financial account and its monetary categories by year.
park-budgets.csv — All 318 Atlas properties in each period, including blanks.
district-budgets.csv — Partial totals located at named accounts in each district.
account-property-crosswalk.csv — Reviewed account-to-parent-property matches.
account-revenues.csv — Adopted revenue budget by account and revenue item. Item codes
  starting 400001 (beginning fund balance), 487 (General Fund discretionary) and
  640 (cash transfers in) are support, not earned receipts. Receipts are budgets,
  not collections.
fund-revenues.csv — Adopted revenue by fund and major object.

FILTERS AND RECONCILIATION
Use Bureau=PK, Account Name=Expense, Included in Adopted=1.
Match BOTH Budget Fiscal Year and Fiscal Year to the same adopted period:
2025 / 2024-25 Adopted Budget
2026 / 2025-26 Adopted Budget
2027 / 2026-27 Adopted - V56
The Tableau export repeats records across Fiscal Year labels. Summing without
the period filters is incorrect. Posting Code includes adopted-budget versions;
no ACTUAL postings exist in this extract. Retain negative budget adjustments.

For FY2026-27, personnel ($141,161,691), external materials/services
($114,573,958), internal City services ($38,761,222) and capital outlay
($45,318,562) reconcile to $339,815,433. These four expense categories can include
staff and services for capital projects; the first three are not a measure of
recurring operations alone. Debt, transfers, contingency and reserves bring
all-funds requirements to $493,724,866. Those financial categories stay separate.
They are not all service spending, and a transfer is not a second delivery cost.

In FY2026-27, $47,339,599 of the four expense categories is linked through 30
named site accounts to 28 properties. $292,475,834 remains unallocated to parks.
Every account is counted once. A center and pool on one property are aggregated;
their costs are not repeated as both facility and parent-park totals.

GEOGRAPHY AND COVERAGE
The crosswalk identifies the location of a named account, not every place that
its staff serve. Named accounts are incomplete site costs: they may omit shared
crews, fleet, trades, centralized bills, administration, capital projects and
partner expenditure. A small budget for a partner-operated or closed facility
is not its full operating cost. No arbitrary distribution of shared costs is made.
Council districts use each property's primary official-boundary assignment,
greatest land overlap. Multi-district sites are counted once, not in both totals.
Unassigned/outside-city properties remain in Unknown, including Red Tail.
Maintenance operational zones are not Council districts. Facility users can live
elsewhere. These district subtotals CANNOT rank total spending or equity.

EXPENSES VERSUS ACTIVITIES
Personnel/materials/services describe WHAT was purchased; gardening, cleaning,
repair and recreation describe WHY it was used. These are two dimensions of the
same dollars. Never add an activity breakdown to an expense breakdown.
Debt service is financing; show principal and interest separately when actuals
become available. Annual asset-renewal provision is a different measure from
current-year capital spending and a historical backlog; do not add them together.
Property revenue, partner costs, City reimbursements and donated labor need their
own columns. Revenue reduces net subsidy, not the gross cost of providing service.

REPRODUCE
python3 scripts/build-annual-service-costs.py
After the first archival extraction the script can run from the public source
rows alone. data/datasets/annual-service-costs/annual-costs.json records their
SHA-256. Exact filters and the reviewed crosswalk are defined in the build script.
Tests reconcile rows, accounts, properties, district/unassigned totals and the
published bureau control totals. No private correspondence informs these amounts.

LICENSE
CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Credit:
Portland Parks Atlas, Portland Civic Lab (parks.portlandciviclab.org), CC BY 4.0.
Facts from City records stay public records; see ../LICENSE.txt for the scope.
