Brighton’s Visitor-Funded Budget Is Strong Today but Vulnerable to a Bad Winter

Fiscal sustainability and public communication review | FY2027

Author

Bryce Nelson

Show R code
budget = read.csv("Dim_BudgetFY2027_1.csv")
property = read.csv("Dim_PropertyTaxBase_1.csv")
annual = read.csv("Fact_AnnualRevenues_1.csv")
monthly = read.csv("Fact_MonthlyRevenues_1.csv")
sales = read.csv("Fact_TaxableSales_1.csv")
snow = read.csv("Fact_SNOTEL_1.csv")

budget_total = sum(budget$Amount)
visitor_taxes = sum(budget$Amount[budget$Category == "Visitor Tax"])
visitor_share = visitor_taxes / budget_total
taxable_base = sum(property$TaxableAssessedValue)
cabins_share = property$TaxableAssessedValue[1] / taxable_base
levy = 250000
tax_rate = levy / taxable_base
annual_cost = levy * property$TaxableAssessedValue / taxable_base / property$UnitCount

annual_local = subset(annual, PeriodType == "Fiscal Year" & TaxType == "LS: Local Sales & Use Tax")
annual_resort = subset(annual, PeriodType == "Fiscal Year" & TaxType == "RR: Resort Community Tax")
ImportantBuffering the Budget: Establishing a Property Tax Floor in a Visitor-Dependent Resort Town

Brighton’s FY2027 budget balances $3.83 million in General Fund revenue and spending, includes no operating debt-service expenditure, and transfers $1.49 million to capital improvements. Its principal weakness is concentration: visitor-sensitive resort, sales, and lodging taxes provide $2.41 million, or 62.9%, of General Fund revenue. This structure asks recreation consumers to help finance the services they use, but a poor snow year, canyon closure, or recession could weaken the revenue that supports Brighton’s capital program. A modest, Truth in Taxation-compliant property tax could establish a dependable local revenue floor while preserving the visitor-funded model.

Fiscal setting and current budget

The Town of Brighton uses a July 1 through June 30 fiscal year. Its FY2027 adopted General Fund totals $3,831,800. The town’s operating presentation shows no debt-service expenditure, and the FY2027 budget directs a $1,494,000 General Fund transfer to the Capital Improvement Fund (CIP). Brighton reported a $5.02 million accumulated CIP balance entering FY2027, plus $253,649 in interest earnings. This capital position is important because the town programs the carryforward balance and annual transfer toward planned capital work rather than treating it as an unallocated reserve.

The revenue mix efficiently charges visitors for a share of the services they use, but it gives Brighton less stability. The $1.51 million resort-community sales tax, $740,000 local-option sales tax, and $160,000 municipal transient-room tax together supply $2.41 million. This approach follows the benefits principle: visitors who create congestion, require public safety, and use local amenities help pay for services. Tourism spending, however, falls when weather, road access, or household budgets worsen.

Show R code
budget_colors = c("#2F6690", "#2F6690", "#2F6690", "#8C8C8C", "#8C8C8C")
barplot(budget$Amount / 1000000,
        names.arg = c("Resort\ncommunities", "Local\noption", "Transient\nroom", "MSD\ninterlocal", "Other\nrevenue"),
        col = budget_colors, border = NA,
        ylab = "Millions of dollars", main = "Nearly two-thirds of General Fund revenue is visitor-sensitive")
abline(h = visitor_taxes / 1000000, lty = 2, col = "#C0392B")
text(4.6, visitor_taxes / 1000000 + .12, labels = "Visitor taxes: $2.41M (62.9%)", col = "#C0392B", cex = .85)

Figure 1. FY2027 General Fund revenue portfolio. Blue bars show visitor-tax categories; gray bars show non-visitor revenue.

Revenue trend and fiscal condition

Brighton’s principal visitor-tax streams grew rapidly as the new municipality’s tax base developed, then began to level off. Local-option sales-tax distributions rose from $220,000 in FY2020 to $725,000 in FY2026, while resort-community tax distributions rose from $11,000 - in the first reported quarter - to $1.45 million. FY2024 through FY2026 show a steadier pattern than the early ramp-up, but town leaders should not treat that pattern as guaranteed growth. Tourism demand can decline abruptly when winter access, snow conditions, or household spending change.

Brighton starts FY2027 with strong capital capacity: no debt service appears in the operating budget, and the town reports a $5.02 million CIP balance. Its capital plan programs approximately $7.65 million for utility improvements, property acquisition and land preservation, infrastructure, facility improvements, trails, and wayfinding. Brighton can meet current commitments, but a repeated visitor-tax shortfall would first reduce the $1.49 million annual CIP transfer. That change could delay maintenance or future projects before it affects core operating services. The town also relies on interlocal partners, so future service costs and service availability will affect its fiscal position.

Show R code
plot(1:length(annual_local$Distribution), annual_local$Distribution / 1000000,
     type = "o", pch = 16, col = "#2F6690", ylim = c(0, 1.6),
     xaxt = "n", xlab = "Fiscal year", ylab = "Distributions (millions of dollars)",
     main = "Visitor-tax growth has recently moderated")
axis(1, at = 1:length(annual_local$Period), labels = annual_local$Period)
lines(1:length(annual_resort$Distribution), annual_resort$Distribution / 1000000,
      type = "o", pch = 16, col = "#E59F23")
legend("topleft", legend = c("Local-option sales tax", "Resort-community tax"),
       col = c("#2F6690", "#E59F23"), lty = 1, pch = 16, bty = "n")

Figure 2. Fiscal-year distributions for Brighton’s two principal visitor-tax streams. FY2020 resort-tax collections reflect the limited initial period in the source data.

Nestled in the mountains

Brighton sits in eastern Salt Lake County, in Big Cottonwood Canyon. Snow and terrain make it a popular winter resort destination. Alpine meadows and miles of trail appeal to warmer weather recreators.

Figure 3. Brighton municipal boundary and its location in Utah. Source: Utah Geospatial Resource Center municipal and state boundary services.

Climate exposure and fiscal resilience

Taxable sales follow a sharply seasonal pattern. The source data show a $27.6 million peak in March 2026 and $26.4 million in February, compared with $1.3 million in May. Visitor-tax distributions arrive about two months after the underlying sales; the figure aligns them to the month in which sales occurred. The same period also illustrates the climate connection: April 2026 snow-water equivalent measured 3.0 inches, compared with a 20.9-inch historical median.

These data do not prove that snowpack alone determines revenue. They do show why Brighton should treat winter conditions, avalanche closures on SR-190, and economic downturns as budget risks rather than routine variation. FY2026 visitor-tax collections totaled $2.31 million, 4.3% below the FY2027 visitor-tax budget. The accumulated CIP balance provides capacity, but repeating a shortfall during a major winter disruption would reduce the town’s flexibility to execute programmed capital work.

Show R code
local = subset(monthly, TaxType == "Local Option 1% Sales Tax")
resort = subset(monthly, TaxType == "Resort Communities Sales Tax")
room = subset(monthly, TaxType == "Transient Room Tax")
snow_2026 = subset(snow, Date >= "2025-10-01" & Date <= "2026-08-01")

par(mar = c(7, 4, 3, 4))
bars = rbind(local$MonthlyRevenue, resort$MonthlyRevenue, room$MonthlyRevenue)
barplot(bars / 1000000, beside = FALSE,
        names.arg = format(as.Date(local$SalesMonthDate), "%b\n%Y"),
        col = c("#81C3D7", "#2F6690", "#3A7CA5"), border = NA,
        ylab = "Visitor-tax distributions (millions)",
        main = "Winter sales fund most visitor-tax distributions")
legend("topleft", legend = c("Local option", "Resort communities", "Transient room"),
       fill = c("#81C3D7", "#2F6690", "#3A7CA5"), bty = "n", cex = .75)

par(new = TRUE)
plot(1:length(snow_2026$AvgSWE_in), snow_2026$AvgSWE_in,
     type = "l", lwd = 2, col = "#E59F23", axes = FALSE, xlab = "", ylab = "",
     ylim = c(0, 25))
lines(1:length(snow_2026$MedianSWE_1991_2020_in), snow_2026$MedianSWE_1991_2020_in,
      lwd = 2, lty = 2, col = "#8C8C8C")
axis(4, col.axis = "#555555")
mtext("Snow-water equivalent (inches)", side = 4, line = 2.5)
legend("topright", legend = c("WY2026 SWE", "Historical median"),
       col = c("#E59F23", "#8C8C8C"), lty = c(1, 2), lwd = 2, bty = "n", cex = .75)

Figure 3. Visitor-tax distributions by underlying sales month, aligned with snow-water equivalent (SWE).
Show R code
par(mar = c(5, 4, 4, 2))

Property tax as a revenue floor, not a replacement

Brighton currently sets a 0.00% town property tax rate. The supplied property-base file is an illustrative aggregate, not county-assessor data. It still shows how a small levy would affect two major residential groups. Secondary residential or seasonal cabins represent 690 of 875 units and 87.1% of taxable assessed value. Primary residences receive Utah’s 45% residential exemption, so they account for 12.9% of the taxable base.

A $250,000 levy would require an estimated 0.0287% rate under this illustrative base. It would raise about $217,872 from secondary cabins and $32,128 from primary residences, or approximately $316 and $174 per unit annually. This option better follows the ability-to-pay principle than a uniform charge because higher taxable value carries a larger share. It also gives the town a less volatile revenue source without abandoning the visitor taxes that fit a resort community.

Show R code
par(mfrow = c(1, 2))
barplot(property$TaxableAssessedValue / 1000000,
        names.arg = c("Secondary\ncabins", "Primary\nresidences"),
        col = c("#2E7D32", "#81C3D7"), border = NA,
        ylab = "Taxable assessed value (millions)",
        main = "87.1% of taxable value is in cabins")
barplot(annual_cost,
        names.arg = c("Secondary\ncabins", "Primary\nhouseholds"),
        col = c("#2E7D32", "#81C3D7"), border = NA,
        ylab = "Estimated annual tax per unit ($)",
        main = "A $250,000 illustrative levy")
text(c(1, 2), annual_cost + 18, labels = paste0("$", round(annual_cost)), cex = .9)

Figure 4. Illustrative property-tax base and estimated annual cost of a $250,000 levy.
Show R code
par(mfrow = c(1, 1))

Communication assessment and recommendation

Brighton meets the basic transparency requirement by publishing adopted budgets and related records. To understand the fiscal story, however, a resident must piece together budget documents, tax-distribution reports, and state reporting sites. Those sources do not clearly show the degree of revenue concentration, the seasonal timing of visitor revenue, or how a tourism shock could affect the CIP transfer.

Brighton should publish a short annual Budget in Brief alongside the formal budget. It should lead with the General Fund total, visitor-tax share, debt status, and CIP transfer. It should also include a seasonal-revenue chart and one clearly labeled property-tax scenario. This format would help residents understand the choices before a Truth in Taxation hearing and help policymakers explain the equity and resiliency tradeoffs.

Point-of-sale taxable sales per capita

The Utah State Tax Commission’s 2025 annual-sales workbook provides a same-year comparison of gross taxable sales. Brighton reported $132.1 million, compared with $44.0 billion countywide and $108.8 billion statewide. Brighton’s General Plan estimates a permanent population of approximately 180 to 200 residents. The 190-resident midpoint produces an estimated $695,394 in taxable sales per resident. The 180-to-200 resident range produces $660,624 to $734,027. This comparison does not measure the exact share paid by visitors, but it does document an exceptionally visitor-intensive taxable-sales base.

Jurisdiction CY2025 gross taxable sales Population basis Taxable sales per resident
Brighton $132.1 million 190 midpoint estimate $695,394
Salt Lake County $44.0 billion 1,220,916 $36,011
Utah $108.8 billion 3,538,904 $30,750

Brighton’s estimated taxable sales per resident are about 19 times the county benchmark and 23 times the statewide benchmark. This supports the benefits-principle rationale for visitor-sensitive revenues, but it also reinforces the resilience concern: the town’s unusually concentrated retail base depends on recreation and visitor activity rather than the spending of its small permanent population.

Data limitation: property assessment classification

The supplied property table remains an illustrative two-category residential aggregate. It identifies neither the required split among all locally assessed property classes nor Brighton’s centrally assessed value. Utah centrally assesses mining, oil and gas, utility, and transportation property based on where the property sits. The absence of a large industrial facility cannot establish a zero centrally assessed value. The town must obtain County Assessor and Tax Commission assessment data before this report can quantify the local-versus-central split.

Sources

AirROI Market Analytics, & Town of Brighton. (2026). Brighton short-term rental occupancy and active licensing database. Town of Brighton, Utah.

Bardach, E., & Patashnik, E. M. (2020). A practical guide for policy analysis: The eightfold path to more effective problem solving (6th ed.). CQ Press.

Kem C. Gardner Policy Institute. (2018). A visual guide to sales tax modernization in Utah. David Eccles School of Business, University of Utah. https://d36oiwf74r1rap.cloudfront.net/wp-content/uploads/Nov2018-TaxBook-Final.pdf

Kem C. Gardner Policy Institute. (2022). A visual guide to tax modernization in Utah: Understanding property taxes. David Eccles School of Business, University of Utah. https://le.utah.gov/interim/2022/pdf/00002830.pdf

Kem C. Gardner Policy Institute. (2024). Utah property tax myth busters: Trends and choices. David Eccles School of Business, University of Utah. https://d36oiwf74r1rap.cloudfront.net/wp-content/uploads/2024/01/Utah-Property-Tax-Myth-Busters-Presentation-Jan2024.pdf

Kem C. Gardner Policy Institute. (2025a). Goal of the tax system brief: Tradeoffs in tax policy. David Eccles School of Business, University of Utah.

Kem C. Gardner Policy Institute. (2025b). Tax system reliability brief: Revenue volatility and earmarks. David Eccles School of Business, University of Utah.

Kem C. Gardner Policy Institute. (2026). Truth in Taxation fact sheet (U.C.A. § 59-2-919). David Eccles School of Business, University of Utah. https://d36oiwf74r1rap.cloudfront.net/wp-content/uploads/2026/08/TruthInTaxation-FS-Aug2026.pdf

Mikesell, J. L. (2018). Fiscal administration: Analysis and applications for the public sector (10th ed.). Cengage Learning.

Salt Lake County Assessor. (2026). Computer-Assisted Mass Appraisal (CAMA) parcel records and residential property classifications. Salt Lake County, Utah. https://www.saltlakecounty.gov/assessor/parcel-data/

Schwabish, J. A. (2014). An economist’s guide to visualizing data. Journal of Economic Perspectives, 28(1), 209–234. https://doi.org/10.1257/jep.28.1.209

Tax Foundation. (2019). Modernizing Utah’s sales tax: A guide for policymakers (J. Walczak, Ed.). Tax Foundation. https://files.taxfoundation.org/20190611134106/Modernizing-Utahs-Sales-Tax-A-Guide-for-Policymakers-PDF.pdf

Town of Brighton. (2020). Town of Brighton Code: Title 3—Revenue and finance (Ordinance No. 3.04). Town of Brighton, Utah.

Town of Brighton. (2022). Town of Brighton General Plan. Adopted November 2022.

Town of Brighton. (2025a). Resolution No. 2025-R-6-1: Adopting final property tax rates (.000000) and FY 2026 final budget. Town of Brighton, Utah.

Town of Brighton. (2025b). Resolution No. 2025-R-12-1: Adopting the amended budget for FY 2026. Town of Brighton, Utah.

Town of Brighton. (2025c). Statutory study and economic analysis for appropriation to Silverfork Skimo (U.C.A. § 10-8-2). Town of Brighton, Utah.

Town of Brighton. (2025d). Utah State Auditor Fraud Risk Assessment questionnaire. Office of the State Auditor.

Town of Brighton. (2026a). Ordinance No. 2026-O-3-1: Procurement and purchasing regulations (Chapter 3.75). Town of Brighton, Utah.

Town of Brighton. (2026b). Resolution adopting the FY 2027 final budget and setting the property tax rate at 0.00%. Adopted June 9, 2026. Town of Brighton, Utah.

USDA Natural Resources Conservation Service. (2026). SNOTEL Site 366: Brighton Loop daily snow water equivalent (SWE) and snowpack report. Water and Climate Center. https://wcc.sc.egov.usda.gov/nwcc/site?sitenum=366

Utah Department of Transportation. (2026). Cottonwood Canyons SR-190 traffic volume counters and avalanche road closure logs. UDOT Operations. https://cottonwoodcanyons.udot.utah.gov/road-information/

Utah State Tax Commission. (2026a). Local option and resort communities sales tax monthly distribution spreadsheets. State of Utah. https://tax.utah.gov/business/sales-tax/other-sales-tax/distribution/

Utah State Tax Commission. (2026b). Quarterly and annual taxable sales reports by locality and industry. State of Utah. https://tax.utah.gov/commission/econstats/sales/

Utah State Tax Commission. (2026c). Utah calendar year gross taxable sales and purchases—2025 [Data workbook].

U.S. Census Bureau. (2026a). QuickFacts: Salt Lake County, Utah. https://www.census.gov/quickfacts/fact/table/saltlakecountyutah/PST045217

U.S. Census Bureau. (2026b). QuickFacts: Utah. https://www.census.gov/quickfacts/ut

Volcker Alliance. (2022). A cloudy crystal ball: Revenue forecasting in uncertain times (Issue Paper Series). The Volcker Alliance.

Wang, X., Dennis, L., & Tu, X. S. (2007). Measuring financial condition: A study of U.S. states. Public Budgeting & Finance, 27(2), 1–21. https://doi.org/10.1111/j.1540-5850.2007.00872.x

Data note: The source files accompanying this report are the authority for dollar figures. The property-tax base is explicitly illustrative and must not be represented as an assessor-certified roll.