Portland ParksAtlas
How Parks works · site accounts

What golf, the Raceway, the Tennis Center and each center and pool cost and earn

The FY 2026–27 adopted budget names 29 accounts for golf courses, the Raceway, the Tennis Center, community centers and pools. This page lines up each one’s adopted expense, the receipts it is budgeted to earn, and the General Fund support or carried-in balance that fills the gap. The 5 course accounts budget $18.3M of receipts against $16.0M of expense. The 22 center and pool accounts budget $4.4M of receipts against $25.5M.

FY 2026–27 adopted budget (2026-27 Adopted - V56), City Budget Office dashboard archived 2026-09-16 · program counts from the ActiveNet snapshot of September 15, 2026

What is here

  • Adopted expense in each site-named account: personnel, external materials and services, internal City services, capital outlay.
  • Budgeted earned revenue in the same account: fees, concessions, rents, sales.
  • The General Fund allocation, cash transfers and beginning fund balance that make up the rest.
  • Budgeted net: earned revenue minus adopted expense. A budget figure, not an audited result.

What is not here

  • Actual spending or actual collections. The dashboard publishes budget authority.
  • Attendance is not available in any record used here. Neither are drop-in counts or hours open.
  • Utilities and building maintenance, which sit in central accounts without a site.
  • Central administration. Aquatics Program Admin ($4,147,354) and Citywide Recreation ($4,287,780) are not allocated to any site.
01Golf

3 of 5 courses budget more receipts than expense. Rose City and Colwood do not.

The 5 course accounts in the Golf Fund budget $18,252,013 of greens fees, concessions, rents and service charges against $16,016,360 of expense. The fund also starts the year with $5,968,414 in hand, recorded under Golf Admin rather than any course.

Golf courses in the FY 2026–27 adopted budget: expense, budgeted earned revenue, budgeted net and operator on record
CourseDistrictAdopted expenseBudgeted earned revenueBudgeted netOperator on record
Heron Lakes Golf Course
Heron Lakes Golf Course
District 2$5,814,786$7,126,562+$1,311,776Kemper Sports
Eastmoreland Golf Course
Eastmoreland Golf Course
District 4$3,808,100$4,173,311+$365,211Kemper Sports
Rose City Golf Course
Rose City Golf Course
District 3$2,973,071$2,582,106−$390,965Kemper Sports
Colwood Property
Colwood Golf Course
District 2$2,094,966$1,980,491−$114,475Kemper Sports
Red Tail Golf Course
RedTail Golf Course
Outside district boundaries$1,325,437$2,389,543+$1,064,106None in the asset list

Red Tail Golf Course has no operating partner in the asset list. The agreements extract shows a lease with Redtail Inc. (2021 to 2042).

Expense by category for each course
Adopted expense by category for each golf course account
CoursePersonnelExternal materials & servicesInternal City servicesCapital outlayTotal
Heron Lakes Golf Course$1,691,867$3,895,115$227,804$0$5,814,786
Eastmoreland Golf Course$876,311$2,780,720$151,069$0$3,808,100
Rose City Golf Course$791,587$2,028,228$153,256$0$2,973,071
Colwood Property$465,645$1,567,617$61,704$0$2,094,966
Red Tail Golf Course$793,713$398,558$133,166$0$1,325,437

Contingency sits outside these four categories and is left out here; each course carries a few thousand dollars of it.

Adopted expense is the four expense categories of each course account in the Golf Fund. Budgeted earned revenue is greens fees, concessions, rents and service charges budgeted in the same account. Budgeted net is the second minus the first. It is a budget figure, not an audited result. FY 2026–27 adopted budget, City Budget Office dashboard.
  • Kemper Sports is the operator on record at 4 courses. The asset list names it at Heron Lakes, Eastmoreland, Rose City and Colwood. Red Tail has no operating partner in that list; the agreements extract shows a lease with Redtail Inc. (2021 to 2042) instead.
  • Budgeted net is a budget figure. It is budgeted earned revenue minus adopted expense in four categories. It leaves out Golf Admin, debt service, contingency and capital. It is not an audited result and says nothing about rounds played.
  • Two views, one fund. The fund-level total of $24.4M counts the beginning balance and interest once, under Golf Admin. The course rows do not include them. Adding a course net to the fund total would count greens fees twice.
Course accounts, earned revenue
$18,252,013
Golf Admin, beginning balance and interest
$6,168,414
Golf Fund resources, FY 2026–27
$24,420,427

Golf Admin also spends. Its adopted expense is $2,458,200 in the four categories, plus $4,363,863 of contingency, $1,248,520 of fund transfers, $325,535 of debt service. None of it is allocated to a course, so the course table above understates what golf costs the fund.

One transfer out of the fund
The FY 2026–27 adopted budget moved $0.45 million from the Golf Fund’s maintenance reserve to the Small Donor Elections program. The money came from greens fees. It does not appear in the course accounts. Source: Adopted Budget, Summary of Budget Decisions.

Source: City Budget Office adopted-budget dashboard, FY 2026–27, fund 603 revenue by major object and account.

The Golf Fund (603 - Golf Fund) budgets $24,420,427 of resources for FY 2026–27. The first four bars are the five course accounts summed by revenue item; the last two are recorded under Golf Admin, a central account with no course. The two groups are shown together because they are one fund. They are not shown added to the course table above.

For youA course with a positive budgeted net is budgeted to earn more than its own account spends. Whether it did is in the year-end actuals, which are not published by course.

Next · The Raceway
02Portland International Raceway

The Raceway budgets $2.25M of receipts against $2.66M of expense, before $321,418 of debt service.

Portland International Raceway has its own fund of $4.2M, of which $1,969,906 is balance carried in from last year. Spectator fees are the largest budgeted receipt.

Adopted expense, four categories

Adopted expense$2,661,973
Debt service, shown separately
$321,418

Paid from the Raceway Fund. Not in the four categories or the budgeted net.

Also budgeted in the account: contingency $1,057,320, fund transfers $177,544. Total authority $4,218,255.

Budgeted earned revenue, by item

Budgeted earned revenue$2,248,349
Beginning fund balance, carried in$1,969,906
Budgeted net: earned minus the four categories
−$413,624
The same, after debt service
−$735,042

The whole Raceway Fund budgets $4,218,255 of resources: charges for services $2,170,056, beginning fund balance $1,969,906, miscellaneous $78,293. The earned column above counts interest and donations with the receipts; the fund view files them as miscellaneous.

Source: City Budget Office adopted-budget dashboard, FY 2026–27, fund 604 and the Portland International Raceway account.

Portland International Raceway account in the Raceway Fund, FY 2026–27 adopted budget. Bars are to one scale across both columns. Debt service is budgeted in the same account but outside the four expense categories, so it is shown on its own line.
  • The budgeted net is −$413,624. That is earned receipts minus the four expense categories. Debt service is paid from the same fund and widens the gap. The account's $4,218,255 of total authority is matched by $2,248,349 of receipts plus the $1,969,906 carried in.
  • No event-level figures. The budget shows one line for spectator fees and one for rents. Which events earn them, and how many people attend, are not published here. Attendance is not available.
  • 3 agreements on record. The directory extract names a license with AT&T CORP, a lease with Nextstar Media Inc and a lease with State of Oregon at the property. It names no operating partner for the track.
Agreements on record at the Raceway
Agreements on record at Portland International Raceway in the department-provided partnership directory
PartnerAgreementTermDirectory description
AT&T CORPLicense2022 to 2032AT&T license to provide telecommunication services at PIR
State of OregonLease2023 to 2028ODOT property leased for Portland Intenational Raceway
Nextstar Media IncLease2025 to 2028Camera for event broadcasting at PIR

From the department-provided partnership directory (2025-26). Dates are the directory’s own.

Next · The Tennis Center
03Portland Tennis Center

The Tennis Center account recovers a budgeted 59% of its cost. The General Fund covers the other $329,000.

The account sits at Buckman Field in the General Fund. On August 14, 2026 the City announced a lease of the center to USTA Pacific Northwest. The adopted budget and the partnership directory used here both predate that lease.

Portland Tennis Center account: adopted expense, budgeted earned revenue, General Fund support and cost recovery
Adopted expensePersonnel $697,991 · External materials & services $110,032 · Internal City services -$1,799$806,224
Budgeted earned revenueParks & rec. facilities $404,357 · Rents and reimbursements $64,052 · Sales miscellaneous $8,815$477,224
General Fund supportCash Transfer Revenues $268,854 · General Fund Discretionary Ongoing $60,146$329,000
Cost recoveryBudgeted earned revenue as a share of adopted expense59%
Budgeted netEarned minus expense; the General Fund support closes it−$329,000

Source: City Budget Office adopted-budget dashboard, FY 2026–27, Portland Tennis Center account (PKPR000043).

Portland Tennis Center account at Buckman Field, General Fund, FY 2026–27 adopted budget. Cost recovery is budgeted earned revenue divided by adopted expense.

Agreements on record at Buckman Field

Agreements on record at Buckman Field in the department-provided partnership directory
PartnerAgreementTermDirectory description
St Mary's Academy & Portland City United Soccer ClubMOU2010 to 2099Contraction and usage of fields at Buckman Field
PCU Buckamn Field Management & Portland City United Soccer ClubUse Agreement2018 to 2031Define use hours and permitting of premises
Portland City UnitedLease2021 to 2030Portland City United Soccer Lease at Buckman Field
Kids N' Tennis LLC (KNT)Agreement2023 to 2026Support affordable and accessible tennis opportunities for BIPOC youth

Department-provided partnership directory, 2025-26. The Kids N’ Tennis agreement covers several sites, the Tennis Center among them. The soccer agreements concern the fields, not the center. USTA Pacific Northwest is not in this extract.

Announced, not yet verified
The City’s August 14, 2026 announcement describes about $2,300,000 of initial improvements by USTA and $779,000 of expected annual net operating savings to the City. Both are announced forecasts. The executed lease, its annual report and a year of actuals would turn them into results. For comparison, the adopted budget’s General Fund support for the account is $329,000; the two figures measure different things and different periods, so one does not check the other. City announcement.

The access questions, the Board’s record and the evidence checklist are in the Tennis Center review.

Next · Centers and pools
04Community centers and pools

22 center and pool accounts budget $4.4M of receipts against $25.5M of expense. The General Fund covers the rest.

Every property with a named center or pool account is below, largest adopted expense first. Peninsula Park and Montavilla Park carry a center account and a pool account each. Program sections and registrations are counted at the September 15, 2026 ActiveNet snapshot; they are registered sections, not attendance.

Community centers and pools in the FY 2026–27 adopted budget: accounts, expense, earned revenue, General Fund support, cost recovery and registered program sections
PropertyDistrictAccountsAdopted expenseEarnedSupportCost recoverySectionsRegistrations
Gabriel ParkDistrict 4Southwest Community Center$3,974,423$352,535$3,621,8889%133505
Mt Scott ParkDistrict 3Mt. Scott Community Center$3,772,934$376,402$3,396,53210%2161,144
Floyd Light ParkDistrict 1East Portland Community Center$3,639,336$268,913$3,370,4237%2301,077
Matt Dishman Community Center and PoolDistrict 2Matt Dishman Community Center$3,190,117$257,472$2,932,6458%100570
Multnomah Arts CenterDistrict 4Multnomah Arts Center$2,617,070$1,196,356$1,420,71446%2521,628
University ParkDistrict 2Charles Jordan CC$1,557,378$179,896$1,377,48212%45136
Peninsula ParkDistrict 2Peninsula Park Community Center · Peninsula Pool$1,305,258$252,558$1,052,70019%66290
St Johns ParkDistrict 2St. Johns Community Center$1,166,399$281,298$885,10124%54151
Montavilla ParkDistrict 3Montavilla Community Center · Montavilla Pool$1,119,841$142,578$977,26313%35171
Community Music CenterDistrict 3Community Music Center$885,534$153,016$732,51817%41238
Grant ParkDistrict 2Grant Pool$525,476$230,258$295,21844%No matched venue
Ida B Wells-Barnett Outdoor PoolDistrict 4Ida B Wells Pool$513,645$260,482$253,16351%No matched venue
Sellwood ParkDistrict 4Sellwood Pool$470,419$182,790$287,62939%No matched venue
Creston ParkDistrict 3Creston Pool$446,537$160,028$286,50936%No matched venue
Pier ParkDistrict 2Pier Pool$193,776$53,293$140,48328%No matched venue
Woodstock Community CenterDistrict 3Woodstock Community Center$128,576$65,870$62,70651%95549
Columbia Park
Operator on record: Friends of Columbia Cottage in Columbia Park
District 2Columbia Pool$19,308$0$19,3080%No matched venue
Fulton Park
Operator on record: L’Etoile French Immersion School
District 4Fulton CC$8,399$8,198$20198%No matched venue
Hillside Park
Operator on record: Lincoln Youth Soccer
District 4Hillside Community Center$4,001$0$4,0010%No matched venue
Sellwood Community Center
Agreement on record: Friends of Sellwood Community House
District 4Sellwood Community Center$1,423$0$1,4230%No matched venue
20 properties22 accounts$25,539,850$4,421,943$21,117,90717%1,2676,459

Program totals cover the 11 properties with a matched venue. The FY 2026–27 figures are budget authority, not spending or collections.

Source: City Budget Office adopted-budget dashboard, FY 2026–27; ActiveNet program snapshot, September 15, 2026.

22 center and pool accounts at 20 properties, FY 2026–27 adopted budget, sorted by adopted expense. Cost recovery is earned divided by expense. Sections and registrations are counted at the September 15, 2026 ActiveNet snapshot: registered sections, not attendance. Blank program columns mean no venue was matched to the property, not that nothing happens there.
  • 4 accounts are not a full cost. Columbia Pool ($19,308), Fulton CC ($8,399), Hillside Community Center ($4,001) and Sellwood Community Center ($1,423) are under $25,000. Columbia Pool is closed. Fulton Park (L’Etoile French Immersion School), Hillside Park (Lincoln Youth Soccer) and Sellwood Community Center (Friends of Sellwood Community House) are buildings a partner runs or holds under an agreement, so the City account carries only a residual.
  • A low recovery share is not a verdict. Cost recovery compares the account's own receipts with its own expense. It leaves out central aquatics and recreation administration, utilities and building maintenance, and it says nothing about how many people the site serves.
  • 3 centers have no matched venue. Fulton CC, Hillside Community Center and Sellwood Community Center had no ActiveNet venue matched to the property at the snapshot, so their program columns are blank, not zero. Outdoor pools had no sections listed on September 15, 2026. Registered sections are not attendance.

For youIf your center shows a low cost-recovery share, the General Fund pays most of its budget. That number says nothing about how busy the building is, because attendance is not published by site. The district pages put each center next to the parks around it.

Next · What would make these real
05What would make these real

Nine records would turn these budgets into the cost of a service.

Each figure above is a budget line. None of them says what a site cost to run, who used it, or what a resident got. The records below exist inside the bureau; the records request kit asks for them in the smallest useful sample.

  • Attendance and drop-in counts by site. Daily or monthly visits per center, pool and course. Attendance is not available in the budget.
  • Hours open by site. Scheduled and actual public hours, including closure days, by month.
  • Fee revenue actuals. Collections by site and by fee type against the budgeted earned revenue above.
  • Utilities and building maintenance by site. Energy, water and repair costs charged to central accounts, allocated to the building that used them.
  • The allocation of aquatics and citywide recreation admin. How the $4,147,354 and $4,287,780 central accounts spread across pools and centers.
  • Golf rounds and course-level actuals. Rounds by course and month, and year-end revenue and expense by course against the budgeted net.
  • Raceway event revenue. Receipts and attendance by event, so the spectator-fee line can be read.
  • The executed USTA lease. The signed lease and outdoor-court license, with the reporting duties they impose.
  • The USTA annual report. The first annual report under the lease, with realized savings next to the $779,000 forecast.

Start with the records request kit, which pairs each gap with a small sample to ask for. The district pages show which of these sites each council district has.

Next · Sources and downloads
06Sources and downloads

Every figure on this page comes from four public records, listed with the date it was taken.

The tables can be downloaded as CSV. Each file keeps the column definitions of the dataset it came from.

Sources

Source: The Golf Fund transfer to Small Donor Elections is from the Adopted Budget’s Summary of Budget Decisions. The USTA figures are from the City’s August 14, 2026 announcement.

Downloads

  • enterprises.csvGolf courses, the Raceway and the Tennis Center site: expense, earned receipts, budgeted net.
  • facilities.csvOne row per ActiveNet venue at the September 15, 2026 snapshot, with its matched property and account.
  • account-revenues.csvAdopted revenue by account and line item, every fund.
  • fund-revenues.csvAdopted resources by fund and major object, including the Golf and Raceway funds.

Dataset built 2026-10-13 by scripts/build-district-picture.py and scripts/build-annual-service-costs.py.