Skip to content

When "no preference" gets called an "abstention" — a real BetterVoting case

One line: in a real eight-ballot STAR election, BetterVoting reports 3 abstentions — but only one ballot is actually blank. The other two are an all-zero ballot and a voter who scored every candidate 3. This small case (three candidates, so it separates ideas a two-candidate race blurs) is the cleanest picture of the abstention reconciliation seen at scale in the 461-ballot pet race.

Filed with BetterVoting: Equal-Vote/bettervoting#1407.

→ Reading results: How to read a STAR report (LH engine) · BetterVoting and the LH engine — when the reports differ (both) · Runoff percentages · What an "Equal Support" ballot is: GLOSSARY.


The election

A real BetterVoting STAR election (BV id dq2dmm, captured 2026-06-28), three candidates Apple / Banana / Cherry, eight ballots:

The ballots as marked — the filled bubble is the score given, and the score is the number in its column:

# Ballot as marked Apple Banana Cherry
1 A 0–5 STAR ballot — prefers Banana: Apple 0, Banana 5, Cherry 1. 0 5 1
2 A 0–5 STAR ballot — blank — a true abstention: Apple left blank (counts as 0), Banana left blank (counts as 0), Cherry left blank (counts as 0). - - -
3 A 0–5 STAR ballot — prefers Apple: Apple 5, Banana 4, Cherry 1. 5 4 1
4 A 0–5 STAR ballot — prefers Banana: Apple 4, Banana 5, Cherry 2. 4 5 2
5 A 0–5 STAR ballot — all-zero — cast, supports no one: Apple 0, Banana 0, Cherry 0. 0 0 0
6 A 0–5 STAR ballot — all-3s — flat, but fully engaged: Apple 3, Banana 3, Cherry 3. 3 3 3
7 A 0–5 STAR ballot — prefers Banana: Apple 3, Banana 5, Cherry 0. 3 5 0
8 A 0–5 STAR ballot — Equal Support — Apple = Banana (Cherry 0): Apple 5, Banana 5, Cherry 0. 5 5 0

Three of these are what the dispute is about: the blank (ballot 2 — nothing marked, a real abstention), the all-3s (ballot 6 — every bubble filled, which BetterVoting drops), and the 5,5,0 (ballot 8 — a clear opinion about Cherry, no preference between the two finalists).

Three ideas a third candidate pulls apart

With only two candidates, "no preference," "flat ballot," and "abstention" all collapse into the same thing. Add a third candidate and they separate — and you can see exactly where BetterVoting's rule sits:

Ballot True abstention? (blank) Flat? (BV "abstention") Equal Support in runoff? (Apple = Banana)
-,-,- blank
0,0,0
3,3,3
5,5,0 (Cherry differs)
Count 1 3 4
  • BetterVoting flags a ballot as an abstention when it is flat (every candidate equal) → it counts 3 (the blank, 0,0,0, and 3,3,3) and tallies 5.
  • STAR / the LH engine only calls the blank an abstention (1); the runoff sets aside the 4 ballots with no preference between the two finalists as Equal Support — which includes 5,5,0 but counts all of them in the score round.

So the two notions genuinely disagree on two ballots: 3,3,3 (a real, engaged vote BetterVoting drops) and 5,5,0 (Equal Support BetterVoting keeps).

Two reports

BetterVoting LH engine
Ballots tallied 5 (nTallyVotes) 8
Abstentions 3 (flat ballots) 1 (blank only)
3,3,3 ballot abstention ❌ counted; Equal Support in runoff ✓
Automatic Runoff Banana / Apple Banana 3, Apple 1, Equal Support 4
Winner Banana Banana

BetterVoting's own result, from the export:

{ "nAbstentions": 3, "nTallyVotes": 5 }

What the LH engine prints

--- STAR Voting Method (single winner) ---

[STAR Voting]
 Tabulating 8 ballots. Note: 1 of 8 ballots is marked as an abstention.
Apple,Banana,Cherry
    0,     5,     1
    -,     -,     -
    5,     4,     1
    4,     5,     2
    0,     0,     0
    3,     3,     3
    3,     5,     0
    5,     5,     0
  ('-' = left blank / abstained; '0' = scored zero — both count as 0 stars.)

[STAR Voting: Scoring Round]
 The two highest-scoring candidates advance to the next round.
   Banana        -- 27 -- First place
   Apple         -- 20 -- Second place
   Cherry        --  7
 Banana and Apple advance.

[STAR Voting: Automatic Runoff Round]
 The candidate preferred in the most head-to-head matchups wins.
   Banana        -- 3 -- First place
   Apple         -- 1
   Equal Support -- 4
 Banana wins.
   Runoff math:
     8  ballots cast
   − 4  Equal Support (no preference between the two finalists)
     ─
     4  voters with a preference  (majority = 3)
           Banana 3 (75%)  ·  Apple 1 (25%)

[STAR Voting: Winner — STAR Voting Method (single winner)]
 Banana

and in the saved _tabulated copy, the same as a funnel that adds up:

   Runoff math:
     8  ballots cast
   − 4  Equal Support (no preference between the two finalists)
     ─
     4  voters with a preference  (majority = 3)
           Banana 3 (75%)  ·  Apple 1 (25%)

Cherry's low scores still counted (they're inside the 7) — they just didn't make the top two. The 4 Equal Support ballots counted in the score round and are set aside only from the runoff percentage; 4 voters had a preference, and Banana takes 3 of them (75%), clearing the majority of 3.

The LH report (on-screen report)

This is a small election, so here is the on-screen report in full (the saved flat_scores_abstention_c3_b8_tabulated.txt mirror additionally forces the full N×N matrix, the Condorcet line, and the "Runoff math" funnel):

--- STAR Voting Method (single winner) ---

[STAR Voting]
 Tabulating 8 ballots. Note: 1 of 8 ballots is marked as an abstention.
Apple,Banana,Cherry
    0,     5,     1
    -,     -,     -
    5,     4,     1
    4,     5,     2
    0,     0,     0
    3,     3,     3
    3,     5,     0
    5,     5,     0
  ('-' = left blank / abstained; '0' = scored zero — both count as 0 stars.)

[STAR Voting: Scoring Round]
 The two highest-scoring candidates advance to the next round.
   Banana        -- 27 -- First place
   Apple         -- 20 -- Second place
   Cherry        --  7
 Banana and Apple advance.

[STAR Voting: Automatic Runoff Round]
 The candidate preferred in the most head-to-head matchups wins.
   Banana        -- 3 -- First place
   Apple         -- 1
   Equal Support -- 4
 Banana wins.
   Runoff math:
     8  ballots cast
   − 4  Equal Support (no preference between the two finalists)
     ─
     4  voters with a preference  (majority = 3)
           Banana 3 (75%)  ·  Apple 1 (25%)

[STAR Voting: Winner — STAR Voting Method (single winner)]
 Banana

Why it matters

A ballot that scores everyone the same is a vote, not a missing one:

  1. The 3,3,3 voter participated. Calling it an "abstention" tells an auditor the ballot was empty. It wasn't — Cherry got a 3 too.
  2. In STAR the score round adds every star. Dropping flat ballots lowers the totals and makes BetterVoting's published numbers fail a hand count of the ballots.
  3. "No preference" already has a correct home: Equal Support — counted in the score round, neutral only in the runoff denominator. Folding it into "abstention" conflates "no preference between these two" with "didn't vote."

How this scales

The full pet race (461 ballots) shows the identical rule at size: BetterVoting reports 6 abstentions, all flat ballots — including one voter who scored all seven candidates 5 and another all 4. Frozen evidence: BetterVoting result — frozen snapshot (pet race).

Variants & reproduction