Boulder Reporting Lab’s interactive budget tool invited readers to close the city’s $6.3 million General Fund gap by adjusting spending, taxes and other revenue.

Thank you to the 216 readers who completed my challenge to balance Boulder’s budget. On Oct. 15, Boulder City Council approved a $552.6 million budget for 2027, cutting police and fire spending, raising the marijuana tax and shifting expenses to close a $6.3 million gap in the city’s General Fund. But how would BRL readers have closed the gap?

Read: Think you can balance Boulder’s budget? Try closing the city’s $6.3 million gap.

Readers overwhelmingly favored cuts over raising new revenue. The largest proposed cuts were to the police department ($1.59 million), followed by other General Fund spending ($1.1 million), general government ($1.1 million) and the city manager’s office ($920,000). 

It’s important to emphasize that this was not a representative survey of Boulder residents. Rather, the participatory budgeting exercise was intended to illustrate some of the trade-offs and tensions of balancing a municipal budget.

There was no clear consensus among readers. Instead, they pursued a range of strategies, from maxing out the widget’s sliders at their 25% limits to making more incremental cuts. The median reader changed nine sliders and arrived at a surplus of $310,000. About 30% of readers pushed at least one slider to its limit, most often the marijuana tax. Another 32% kept every change small, within 10 percentage points of where it started, and the remaining 38% made large changes without maxing anything out.

Beyond police cuts, readers agreed on two other moves: cutting the city manager’s office (83%) and raising the recreational marijuana tax (66%). The city manager’s office and other general government functions lack the built-in constituencies of departments like police, fire, housing and parks, which may make them easier targets for cuts. The marijuana tax increase is also part of the approved budget, which raises the rate from 3.5% to 5.5%. And 57% of readers proposed an increase at least that large.  

Readers were far less willing to touch the big taxes. Only 26% raised the property tax, which would also be used to repay the $400 million recreation-and-safety bond on the Nov. 3 ballot, and only 13% raised the sales tax.

Readers differed most from the city’s budget over police funding. The city trimmed the police budget by 0.6%, but 93% of readers proposed a different level of police spending, with cuts averaging $1.27 million more than the city’s plan. Readers also reversed the 2027 plan’s 2.3% increase for Housing and Human Services, cutting it by $480,000 on average, and largely spared Fire-Rescue, which the city is trimming by $860,000.

Would a crowdsourced budget have even worked? The “wisdom of the crowd” effect describes how aggregating individuals’ diverse judgments can produce more accurate estimates than those of any single expert. This effect works best when opinions are independent and vary widely; social influence and conformity tend to discourage the outlier proposals that are crucial for collective “wisdom” to emerge. 

In our exercise, the averaged crowd response produced a budget surplus. The combined average cuts totaled $6.52 million, enough to close the General Fund gap on their own. But our crowd of readers went further and proposed $1.03 million in new revenue and $350,000 in cost shifts, producing a $1.6 million surplus. Of course, raising taxes in a TABOR state like Colorado is easier said than done.

To visualize the variation in readers’ proposals, I used a machine learning technique called dimensionality reduction. Just as a shadow is a two-dimensional representation that preserves much (but not all) of a three-dimensional object’s shape, I used a method called UMAP to convert the 16-dimensional data from each respondent into two dimensions for visualization. 

This projection of the 216 survey responses is colored by clusters of similar responses, which were distinguished by the size of proposed police budget cuts relative to cuts elsewhere. The green cluster at the top spared the police budget and spread cuts elsewhere. The orange cluster cut police spending alongside other departments, while the blue and red clusters proposed deeper police cuts but differed in how much new revenue they raised.

The last question was what these budgets would mean for city staffing. To get a sense of scale, Claude Opus 5.5 helped me convert each reader’s proposed departmental budget changes into equivalent General Fund positions, using each department’s cost per position. The median reader landed close to the recommended budget, at 24 fewer positions compared to the recommended 25. 

Among the 9% of readers who proposed cutting departmental budgets by more than $10.3 million, the median proposal would eliminate the equivalent of 69 positions. On average, 31 of those would come from the police department’s 273 current full-time equivalent positions. 

I hypothesized that homeowners and older residents would be overrepresented in this self-selected survey compared to Census data. Homeowners made up 84% of respondents, compared to 42% of city residents in the 2024 American Community Survey (ACS). Forty percent of respondents were over 55, compared to 25% of Boulder’s population. And 64% of respondents had graduate degrees compared to 40% in Census data.

This skew illustrates just how biased a self-selected online sample can be (though Boulder City Council’s public commenters are even less representative). Many of us still remember the “unskew the polls” discourse from the 2020 election. Data quality matters for policymaking. The elected officials arriving after Nov. 3 should commit to making decisions based on statistically valid evidence in their 2027 workplans. 

I also expected those overrepresented readers to favor cuts over new revenue. They didn’t, at least not more than anyone else. Homeowners got 16% of their budget fix from new revenue on average, the same as renters. Readers 55 and older got 17%, compared with 16% for younger readers. Splitting readers by housing type, age bracket or household income turned up no difference larger than chance would produce. The one sizable gap: readers with graduate degrees were more willing to raise revenue. They got 18% of their budget fix from new revenue, compared with 12% for everyone else.

Still, this was only a simulation. Readers did not have to weigh the real-world consequences of cutting services or raising taxes or consider how their choices would affect essential operations and project timelines. Changing sliders on a widget is nothing like balancing a half-billion-dollar municipal budget. But the exercise showed how many ways there are to close a budget gap, and how those choices depend on what a community is willing to give up. 

The code for replicating these analyses can be found on the Charting Boulder GitHub.

Brian C. Keegan, Ph.D., is a computational social scientist and an associate professor in the Department of Information Science at the University of Colorado Boulder. He teaches courses on data storytelling, network science, and web data science, and his research examines high-tempo online collaborations, the governance of online communities, and public-interest data science. He is a member of the City of Boulder’s Cannabis Licensing and Advisory Board, a board member of Boulder Progressives, and serves on the editorial board of the Boulder Housing Network.

Leave a comment

Boulder Reporting Lab comments policy
All comments require an editor's review. BRL reserves the right to delete or turn off comments at any time. Please read our comments policy before commenting.

Your email address will not be published. Required fields are marked *