What happened?

A month and a half has passed since the election. I’m incredibly proud of the campaign we ran, particularly speaking out on the issues of inclusive housing and the city’s inadequate plan to address affordable housing options for middle and working class people. Though our message resonated with a lot of folks in the community, several major dynamics played a large role in the election outcome that brought a loss to one incumbent and several candidates who wanted more progressive positions on housing.

So what mattered most? The largest factor not only in Boulder but in Colorado this fall was to elect candidates who wanted to drastically slow growth of cities: “Election 2017: Voters apply brakes to growth in Denver suburbs.” PLAN Boulder candidates ran on a message aligned with that sentiment, causing other candidates significant disadvantage. “Boulder City Council election delivers new slow-growth majority.”

Another large factor in the front range, women ran exceptionally well — “Lafayette’s City Council: Microcosm of ‘women in politics’ in Trump era.” In the Boulder race—out of 14 candidates, five women ran vs. nine men, producing an outcome where four of five women were elected. I’m happy to see a city council that has a majority of women and our community would be better served by enabling more women to run for office. I hope to help more women run in the future.

The other major factor particular to the Boulder election centered on Ballot Measure 2L which determined whether Boulder would continue to fund the Boulder Electric Utility project. The measure passed 52% to 48%, and all five candidates elected to Boulder City Council were in favor of the measure. The analysis later in the article will tell the story with data, but to summarize—older, “slow growth” candidates benefitted by getting votes from people who opposed Measure 2L, while younger, more “pro growth” candidates who opposed the muni effort saw only a minor benefit from their stance opposing Measure 2L, and suffered losses with younger/newer voters who more largely voted for pro-muni candidates.

Of the three issues listed above, only one was truly in my control—my position on the municipalization project. I wrote a widely-read piece on “Why I’ve changed my mind on municipalization” where I outlined why I would not be supporting Measure 2L. While it’s too early to say whether I was correct or not on the policy of the issue, I can say that I was probably wrong about the politics of it. If climate change is the defining issue of our time, voters asked, were you really doing all you could if you didn’t support the effort? While candidates against the muni could talk about what we’d do instead, we didn’t offer a compelling vision or plan that resonated with younger voters. Even though Alex Burness at the Daily Camera noted that I was the only “City Council candidate who targeted young voters,” my positions didn’t align well enough to win a significant number of those votes.

Given the broad field of candidates, I don’t think a positive stance on municipalization was enough to allow me to win a council seat. At best, I think a positive stance could have grossed me 2,000-3,000 votes, but likely would have cost me 1,000-2,000 votes—I believe a decent number of my votes would have instead gone to candidates Ed Byrne or Matt Benjamin, who opposed Measure 2L.

Boulder will fund the energy utility effort for another three years. I hope the result shows a benefit to the city. If Boulder is to proceed in creating its own utility, voters will have to vote again to authorize funding in two to four years, and future candidates should fully understand the effects of a position for or against that effort. My analysis below should paint a clear picture.

Thanks everyone who supported me and took an interest in the election. Read further if you want a data-driven analysis of what happened!

In-depth Analysis Sections:


  • Data Sources – Key sources of data for analysis
  • Who Ran – Names, votes, demographics, positions, endorsements
  • Turnout information – how many people voted in large demographic blocks?
  • Candidate correlations – which candidates were most positively and negatively correlated with other candidates?
  • Endorsing Groups – how closely did candidates/groups correlate with other candidates in groups that endorsed?
  • Voter Age – how did each candidate’s votes correlate with voters of various age groups?
  • Voting history and turnout likeliness – how did each candidates vote compared to the turnout history of voters and likeliness of turnout?
  • Boulder’s Energy Utility – how did a candidate’s position on Boulder’s energy utility affect voter choices?
  • Boulder’s Energy Utility – where did the votes come from in Boulder?
  • Party affiliation – how did a voter’s registration status compare with votes for each candidate?
  • Field plan correlation – how did voter contacts by various methods improve votes for Eric Budd (and various relations) through a strong field campaign?
  • PLAN Boulder performance compared to Engage Boulder – what was the affect of unaligned candidates?
  • How did controversial issues affect voting in nearby precincts? (Hogan-Pancost, CU South, Co-operative housing, Municipal Electric Utility, Twin Lakes)


Data Sources – Key sources of data for analysis

  1. 2017 Election Results and Records – Used for basic precinct-level vote counts for candidates and issues.
  2. Colorado voter registration list – Used for age, gender, party, and voting history data.
  3. Data generated on voter contacts through my campaign

Who Ran – Names, votes, demographics, positions, endorsements.

Basic information about the candidates, demographics, and positions. Winners highlighted. Note: I’ve made my best determination on “growth” positions to try to better guide the analysis. Individual candidates may have more nuanced positions than what I’m capturing here.

Screenshot 2017-12-18 21.27.00.png

Various endorsements and groupings. Note: “Unaligned” candidates simply means candidates that were not endorsed by either Engage Boulder or PLAN Boulder.

Screenshot 2017-12-18 21.28.17.png

Turnout information – how many people voted in large demographic blocks?

    1. Total Ballots cast – 31,765 (43% turnout)
      • Ballots returned before election day – 18,109
      • Ballots returned on election day – 13,148
    2. Men / Women breakdown of voters – 48% vs 52%
    3. Votes cast for Men / Women
      • Votes for Men – 71,539 (52%), 7,949 on average
      • Votes for Women – 64,743 (48%), 12,949 on average
    4. Votes cast for various slates:
      • Engage Boulder endorsed candidates – 52,484 (10,497 on average)
      • PLAN-Boulder endorsed candidates – 66,054 (13,210 on average)
      • Independent candidates – 17,744 (4,436 on average)
    5. Votes cast candidates by support for energy utility:
      • Pro energy utility candidates – 82,590 (10,323 on average)
      • Against energy utility candidates – 53,692 (8,948 on average)

Candidate correlations – which candidates were most positively and negatively correlated with other candidates?

I’ll start by looking at which candidates were most positively or negatively correlated with other candidates. Each voter could vote for up to five candidates – voters on average used 4.3 of these 5 votes.

Screenshot 2017-12-14 12.28.15

    • Bill Rigler – Most positively correlated with Jan Burton (second-highest vote-getter on slate, incumbent, on the same Engage Boulder slate). Most negatively correlated with Adam Swetlik. Both are younger white men, although Bill’s votes general came from older, anti-muni voters which was largely the opposite of Adam’s base.
    • Mark McIntyre – Most positively correlated with Jan Burton, for similar reasons to Bill Rigler. Most negatively correlated with Adam Swetlik, probably also for similar reasons.
    • Eric Budd – Most strongly correlated with Bill Rigler (similar positions, demographics, on the same slate). Most negatively correlated with Cindy Carlisle (opposing positions, demographics, base of support)
    • Cindy Carlisle – Most positively correlated with Mary Young (top vote-getter on slate, similar positions and demographics). Most negatively correlated with Eric Budd.
    • Jan Burton – Most positively correlated with Mark McIntyre (similar positions, demographics, on the same slate, and third-highest vote-getter on slate). Most negatively with Mary Young (top vote-getter on opposing slate).
    • Jill Grano – Most positively correlated with Eric Budd (each supported each other). Most negatively correlated with Cindy Carlisle (may indicate vote swapping – same position on municipal energy, but otherwise very different candidates). Helpful to note that Jill had the least strong correlations of any candidate, likely because she was the most widely-endorsed and had a broad base of support.
    • Mirabai Nagle – Most positively correlated with Sam Weaver (same slate, positions). Most negatively strongly correlated with Eric Budd.
    • Matt Benjamin – Most positively correlated with Ed Byrne (both of whom were the two strongest independent candidates). Most negatively correlated with Adam Swetlik (positions, style of campaign, and of support much different)
    • Sam Weaver – Most positively correlated with Mary Young (other incumbent, both first elected in 2013, with same policy positions). Most negatively correlated with Adam Swetlik (interesting because they did some campaign events together, but generally had very different bases of support)
    • Adam Swetlik – Most positively correlated with Camilo Casas (another candidate in the race running a non-traditional campaign). Most negatively correlated with John Gerstle (who ran a traditional campaign, but largely got his votes from older voters while Adam got most of his votes from younger voters)
    • John Gerstle – Most positively correlated with Sam Weaver (second highest vote-getter on PLAN Boulder slate). Most negatively correlated with Adam Swetlik. John was positively correlated with the most number of other candidates (eight).
    • Ed Byrne – Most positively correlated with Jan Burton (positions, demographics, messaging). That likely means that Ed was not pulling many votes from Jan, but very likely pulled votes from others on the Engage Boulder slate. Most negatively correlated with Adam Swetlik (age of voter support being the largest factor).
    • Camilo Casas – Most positively correlated with Adam Swetlik (as younger, outsider candidates). Most negatively correlated with John Gerstle (older, establishment candidate).

Endorsing Groups – how closely did candidates correlate with other candidates in groups that endorsed?

I focus on five major groups—two slates of five candidates, the remaining four candidates, and the two newspaper endorsements.

Screenshot 2017-12-14 12.29.31

  • Engage Boulder

      • Most positively correlated – Bill Rigler
      • Most negatively correlated – Cindy Carlisle. Due to Cindy’s narrow loss in 2015 and serious threat in 2017, it’s likely that Engage Boulder found Cindy Carlisle to be the biggest threat and made significant efforts to try to prevent her from winning.
      • Special notes about Jill Grano and Ed Byrne – Jill had a broad base of support and different from the rest of the Engage Boulder slate because she supported the municipal energy utility, making her votes not as fully correlated with the group. Ed Byrne, while not on the slate, has networks and close ties with the endorsing groups of Engage Boulder, and led him to share votes with others on the slate.
  • PLAN Boulder

      • Most positively correlated – Sam Weaver
      • Most negatively correlated – Eric Budd (as someone who’s perhaps most well-known in political circles and has been routinely involved in issues on the opposite side of PLAN Boulder, this is not very surprising)
      • Notice how PLAN Boulder candidates are all highly correlated to the performance of their slate as a whole, such that no other candidate at all is positively correlated with votes of the PLAN Boulder slate as a whole.
  • Unaligned Candidates

      • Most positively correlated – Matt Benjamin (likely due to the benefit of both newspaper endorsements and edges out Ed Byrne here due to Ed’s ties with the Engage Boulder slate)
      • Most negatively correlated – Mary Young. (as the top vote-getter, Mary also had the strongest connections to the other PLAN Boulder candidates at the expense other relationships)
      • Note that both Adam Swetlik and Camilo Casas did not have a correlation to this group of independent candidates that they belonged.
  • The Daily Camera

      • Most positively correlated – Jan Burton. Endorsed in both 2015 and 2017, the Daily Camera also ran an editorial praising Burton two weeks prior to the endorsement editorial, giving Jan a boost.
      • Most negatively correlated – Adam Swetlik. Adam was not mentioned in the endorsements piece, and also had little presence in the newspaper generally.
      • Notes – Bill Rigler and Eric Budd both correlate higher than Matt Benjamin (who was endorsed), perhaps due to other newspaper aspects (positive mentions even though not receiving endorsement, advertising or letters to the editor)
  • The Boulder Weekly

      • Most positively correlated – Sam Weaver. Potentially due to very pro-muni stance of the paper.
      • Most negatively correlated – Adam Swetlik. Could reflect the demographics of the paper or lack of coverage.
      • Notes – While Matt Benjamin received the paper’s endorsement, it’s hard to see much benefit in the data presented. Since Matt opposed energy municipalization, while the paper was very much in favor, other non-endorsed candidates that favored municipalization like Cindy Carlisle and John Gerstle were more highly correlated.

How closely were groups correlated to each other?

Screenshot 2017-12-14 12.44.36

  • Engage Boulder and PLAN Boulder were not as negatively correlated as one might expect given the fact that these two groups were touted as the “slates” of the election, meaning there was plenty of crossover voting between the two slates.
  • PLAN Boulder and Sierra Club endorsed 4 of 5 of the same candidates and were highly correlated.
  • Ed Byrne and Matt Benjamin were highly correlated with Engage Boulder, meaning that one or both were often pulling votes from 1-2 candidates on the Engage Boulder slate.

Voter Age – how did each candidate’s votes correlate with voters of various age groups?

Voter age seemed to be a significant factor in which candidates voters cast votes for. Note that while younger voters made up 19% of ballots, they made a significantly fewer number of total votes (as each voter could cast up to five votes, but often younger voters cast fewer than five votes).

Screenshot 2017-12-17 23.11.55.png

    • Most positively correlated with older voters – Ed Byrne. Ed’s a long-time resident of Boulder and has an older network. He was also against energy utility municipalization which aligns with older voters.
    • Most negatively correlated with older voters – Adam Swetlik. As the youngest person running, Adam ran a campaign that seemed targeted to a younger demographic.
    • Age 18-32 – a large source of votes for Adam Swetlik and Camilo Casas, both younger candidates with non-traditional campaigns.
    • Age 33-65+ – Similar voting pattern overall. Some trend away from pro-muni and younger candidates with older voters.

Voting history and turnout likeliness – how did each candidates vote compared to the turnout history of voters and likeliness of turnout?

Voter behavior fell roughly into two groups based on voter history – those who did not vote in 2015, and those who were more consistent voters.

Screenshot 2017-12-14 12.47.24

  • Did not vote in 2015 – Adam Swetlik and Camilo Casas, two of the more outsider candidates, were very positively coordinated with this group. Ed Byrne and John Gerstle (who mainly saw their votes come from older voters) were the most negatively correlated.
  • Voted in 2015, 2013, and higher-turnout precincts – similar trends among all of these groups, and similar correlations to voters aged 50 and over.
  • % of Votes Cast – As each voter gets 5 votes, some voters will cast fewer votes, either for lack of knowledge of the candidates or for strategic voting purposes. Bill Rigler, Mark McIntyre, Sam Weaver, John Gerstle all had high correlations – likely due to slate effects (i.e. they received a lot of votes where voters voted for all 5 candidates of a slate). Ed Byrne also highly correlated, likely meaning that Ed was often a 5th vote correlated with the Engage Boulder slate, or otherwise. Older voters tended to use all five votes more often than younger voters on average.

Boulder’s Energy Utility – how did a candidate’s position on Boulder’s energy utility affect voter choices?

Ballot Measure 2L, the Utility Occupation Tax, was the most controversial and divisive issue facing voters in the 2017 election. Candidates’ position on the measure served as a proxy for their support for the Boulder’s municipal electric utility effort, or “muni” for short. Eight candidates supported the measure while six candidates opposed.

Two main parts of the analysis:

  1. How did a particular candidate or group correlate with other pro-muni or anti-muni candidates?
  2. How did a particular candidate or group correlate with votes for the measure or against the measure?

Interestingly, the data from these two questions was quite varied.

Screenshot 2017-12-17 23.18.43.png

  • Engage Boulder’s slate had one candidate for the muni effort and four candidates opposed. Their votes largely correlated in both candidates and issue voting.
  • PLAN Boulder’s slate had five candidates all in favor of the muni effort. However, their votes were slightly negatively correlated with votes against the measure. The most likely reason is that PLAN Boulder seemed to be trusted more on the issues of growth and development – voters mostly did not hold their pro-muni stance against them as they were empowered to vote against the muni ballot measure itself (which ultimately passed).

Screenshot 2017-12-17 23.15.00.png

  • Votes for pro-muni candidates were highly correlated with the PLAN-Boulder slate. Jill Grano, on the Engage Boulder slate, was positively correlated but quite distantly.
  • Votes for anti-muni candidates were very strongly split among seven candidates, leading to a stronger dilution of these votes.
  • Many of Sam Weaver’s supporters voted against the measure, even though he was in favor. Similarly for John Gerstle, who was correlated opposite how one would expect. His status as a well-known person who grew up in Boulder probably made the most difference with many older voters.

Screenshot 2017-12-17 23.32.42.png

  • Voting among pro-muni candidates was slightly correlated with voter age, although voting for anti-muni candidates was highly correlated with voter age.
  • Voting for/against the measure was very highly correlated with age. Most likely reasons: the muni effort is ultimately about fighting climate change, which may raise costs and cause uncertainty, as well as require the city to take over the energy system—all reasons that older or more conservative voters often voted against the measure.

Screenshot 2017-12-17 23.33.37.png

  • Democratic votes were reasonably likely to vote for pro-muni candidates even though they slightly were against the measure.
  • Republican voters both voted against the measure as well as tried to elect candidates who were not in favor of the measure.
  • Unaffiliated voters did not have a strong preference for candidates, but were more likely to support the measure (also aided by these voters trending younger)

Boulder’s Energy Utility – where did the votes come from in Boulder?

Click the image below for an interactive map that will show you how different parts of town voted on Ballot Measure 2L.

Screenshot 2017-12-18 15.02.00.png
Click for the interactive map!
  • Votes in favor of the electric utility largely came from precincts near the university with younger voters who vote at a much lower rate than the typical Boulder resident.
  • Votes against the electric utility were primarily located on the periphery of town, by older voters who often leaned Republican.

Party affiliation – how did a voter’s registration status compare with votes for each candidate?

Although Boulder City Council elections are non-partisan elections, Boulder has significant partisan effects in voting.

Screenshot 2017-12-14 12.56.12

Screenshot 2017-12-14 12.55.16

  • Democrats made up 63% of the voting base this year (even higher than their rate of registration), and were highly correlated with many of the more popular endorsing groups. The Sierra Club brand or slate of candidates performed particularly well with this group.
  • Republican voters were slightly correlated with Engage Boulder, which had four of six candidates against the municipal electric utility, however they were most correlated with Ed Byrne and Matt Benjamin. I think Ed and Matt benefitted from the anti-growth mentality that’s often found with Republicans and older voters, so they preferred these two candidates over the Engage Boulder slate.
  • Unaffiliated voters, largely younger, voted more highly for Adam Swetlik and Camilo Casas, who were two candidates running non-traditional campaigns.

Field plan correlation – how did voter contacts by various methods improve votes for Eric Budd (and various relations) through a strong field campaign?

While I only have data for my own field plan, I can evaluate how effective the individual efforts were based on voter contacts in various precincts.

Screenshot 2017-12-14 12.59.04

  • Field – Walk: Our campaign knocked on about 1,500 doors during two months, and made a significant number of voter contacts. We can see a significant correlation with improved performance in those precincts.
  • Field – Phone: Our campaign made over 10,000 phone calls leading to about 600 voter contacts. We can see a significant impact from these efforts, although not as pronounced as the walk campaign.
  • Field – Text: Our campaign texted about 4,700 voters, of which about 1,600 voted. While we did worse with this population than you might expect, because our voters here trended younger and many younger voters voted for pro-muni candidates, we didn’t perform as well as desired with this group, even though it was significantly better than other anti-muni candidates on the slate.
  • Field – Social: This group focused on direct voter contacts on Twitter and had a significant affect, largely because this is a network of people I already knew. Jill Grano performed even better with this group, largely because we have similar age/networks, and she was a pro-muni candidate in a group of people that trended to be stronger in favor of muni.
  • Field – Total: Adding up all of these efforts, we can see a pronounced effect to increase my votes through a field team. The negative correlations in this column also show that my efforts likely won me votes over those particular candidates who may have occupied a similar demographic voting space.

Screenshot 2017-12-17 23.36.57.png

  • Because a decent number of voters also considered position on the energy utility as part of their vote, the correlation between this position and our field numbers is helpful to understand our relative success in difference areas.

PLAN Boulder performance compared to Engage Boulder – what was the affect of unaligned candidates?

Click the image below for an interactive map that will show you how significantly PLAN Boulder won votes directly compared to Engage Boulder, as well as turnout and vote percentage totals for various precincts.

Screenshot 2017-12-18 15.06.55
Click for the interactive map!

Unaligned candidates received roughly 13.3% of the votes on average in precincts, ranging from a low of 8.9% to a high of 19.8%. While unaligned candidates were most likely correlated with Engage Boulder, they did not play a big factor in swinging the election for any particular slate or candidates.

How did controversial issues affect voting in nearby precincts? (Hogan-Pancost, CU South, Co-operative housing, Municipal Electric Utility, Twin Lakes)

The past twelve months have seen a number of highly controversial issues in Boulder. The map below shows precincts where PLAN Boulder won at least 60% of the vote compared to Engage Boulder. PLAN took advantage of voter concerns to win handily in these areas.

Boulder election map

  1. Hogan-Pancost —  Concerns about the development of this difficult property won about 1,000 votes for PLAN Boulder candidates. “Boulder residents object to Hogan-Pancost plans at Planning Board meeting” (Daily Camera)
  2. CU South — Boulder City Council moved on this issue to try to address immediate flooding danger in Southeast Boulder. However, neighbors have concerns about traffic and future development from an agreement with CU Boulder. Boulder City Council approves new land-use designation for CU South (Daily Camera)
  3. Co-operative housing — While the addition of a cooperative housing ordinance does not explicitly affect Martin Acres, residents there have been concerned that the neighborhood’s affordable nature would bring more housing cooperatives to that part of town. At long last, Boulder approves new co-op housing ordinance (Daily Camera).Potential Boulder co-op’s size concerns Martin Acres neighbors (Daily Camera)
  4. Twin Lakes — Residents opposed a change in land use to build affordable housing, an issue that required approval from both the city and county. Twin Lakes Action Group spin-off Greater Gunbarrel to raise money for Boulder candidates (Daily Camera)
  5. Municipal Electric Utility — Again, while not a location-specific issue, younger voters in these precincts near CU voted both in favor of the electric utility as well as in favor of majority PLAN Boulder candidates. Student vote may have rescued Boulder municipalization — New Era Colorado registered 2,075 people in promoting ballot issue 2L (Daily Camera)

3 thoughts on “Boulder Election 2017 Analysis

  1. Great info. Thanks for putting it all together.

    I don’t believe that the muni was a big influencer with most voters. Almost everyone I talked with about candidates never brought up the muni. They did have strong opinions about the muni, but viewed that issue separately. I should add that the people i talked with and myself aren’t aligned with PLAN or the Better Boulder groups. We’re sort of the 99% of Boulder.

    What I noticed was a very strong correlation with their views on growth. I wouldn’t say it was Yimby vs Nimby, but instead more about smart growth and which slate would do a better job of managing the growth. Almost all of my friends who I would describe as housing stressed voted for PLAN candidates this time around because they felt the Better Boulder initiatives threatened their housing unless they could nab an affordable housing unit. That was completely opposite of the last election.

    Another way to explain this is to look at how 300/301 would have stopped smart growth so it was defeated 2 years ago. This time around the idea that building as much as possible was defeated because it lacked smart restrictions. People saw a train station without a train, traffic, and an increase in rents as a sign that there wasn’t enough controls on the development.

    Jill Grano was the outlier because she was able to walk the line of getting Better Boulder’s endorsement while not getting tarred and feathered with their policies. You and I are very pro biking, but it feels like talking about bicycles triggers voters to blame the candidate for the traffic problems and think they don’t have real world solutions. Also, talking about density as a solution to affordability makes voters think of ugly impersonable buildings. She seemed to be able to dodge those associations.

  2. Budd’s analysis and tsunami of data with speculation disguised as “evidence-based” conclusion leaves out, or significantly understates, three critical factors: 1) the Sierra Club endorsements have long been widely distributed and highly respected in Boulder; 2) Clean Energy Action folks put together an incredibly organized and impressive volunteer campaign; and 3) the Camera’s biased articles, but especially misleading headlines, had a significant effect on older voters. Ironically the paper capped it off by blaming college students for the result as if ignorant students were duped by New Era when it was the Camera that did the duping but for an older demographic.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s