Subproportional voting methods

Marcus Ogren
18 min readJan 25, 2024

Suppose you’ve got a primary election in which some number of candidates are going to advance to the general election, which will have a single winner. What kind of a slate of candidates is best to have in the general election? There are three reasonable-seeming answers that I know of:

  1. The best candidates to send to the general election are the ones with the best chance of winning it. If a district is 60% Republican, a Democrat won’t stand a meaningful chance of winning — so all the general-election candidates should be Republicans.
  2. The best slate of general-election candidates will represent a wide range of viewpoints. This will expose voters to a greater variety of arguments during the campaign and will result in the general election being a consequential choice, rather than a choice between Tweedledee and Tweedledum.
  3. The best slate of general-election candidates will strike a balance between (1) and (2). Both viability in the general election and ideological diversity are important considerations. We do want there to be multiple viable candidates, but there are diminishing returns; having four viable candidates isn’t much better than having three. At some point, diversity becomes more valuable than viability. The ideal slate of general-election candidates will include both the most viable candidates and candidates who disagree with them.

The voting methods that achieve (1) are called block methods. For the most part, they work by taking a single-winner voting method and using it repeatedly to determine the winner, with the candidates who have already won ignored. So the first winner should be the most likely candidate to win the general election, the second winner should be the second-most likely candidate, etc.

The voting methods that best achieve (2) are proportional voting methods. Proportional voting methods yield a pool of winners that proportionally reflect the preferences of the electorate; if there are five winners, 60% of voters are Republicans, and 40% are Democrats, a proportional voting method will send three Republicans and two Democrats to the general election, and the winning candidates within each party should be relatively distinct from one another.

To the best of my knowledge, there has never been any serious discussion of how to achieve (3). I will call voting methods that achieve this subproportional methods. In a primary that advances five candidates in a district that is 60% Republican and 40% Democratic, a subproportional method would likely advance four Republicans and one Democrat. They’re “subproportional” because, like proportional methods, they tend to provide minority representation rather than letting the largest faction sweep an election — but they provide minorities with less representation than proportional methods do.

The advantages of subproportional methods over proportional methods are that they advance more viable candidates to the general election and can be substantially easier to implement. The advantage of subproportional methods over block methods is that they provide general-election voters with a wider range of options. This is especially notable in competitive districts in which multiple parties have enough support to win the general; with block methods, there’s a risk that all of the candidates who advance to the general election will be from the same party, and subproportional methods prevent this from happening.

The rest of this post will be devoted to recipes for how to construct subproportional methods and a specific options, followed by a discussion of how they compare to one another.

Switching voting methods during tabulation

Suppose you want three winners along the lines of those you’d get from using a block voting method and two winners along the lines of what you’d get from using a proportional voting method. This suggests a seemingly straightforward approach: Use a block voting method to select three winners, and a proportional method to select two.

Presumably, we want to use the same ballots for each; while we could have separate contests for selecting the proportional winners and for selecting the block winners, this feels awkward and unnatural in the context of a primary election. So, using the same ballot data, we can either elect the proportional winners first, and then use the block method for the remaining slots in the general election, or use the block method first and then the proportional method.

Using the proportional method first is the more straightforward option since there’s only really one way to do it. First, you use the proportional method to select some number of candidates. (The quota for the proportional method should be determined by the number of winners selected by the proportional method rather than by the total number of winners.) Then, you use the block method to select the remaining candidates, ignoring the candidates that were already selected and all the reweighting and stuff that may have happened while using the proportional method.

Using the block method first leaves you with a choice when it’s time to use the proportional method: Should you treat this as a “fresh” election with the already-selected candidates ignored, or should the support those candidates received be considered when determining what is proportional?

The former approach is always conceptually simple. The latter approach is straightforward for some voting methods but quite thorny for others.

  • For Sequential Proportional Approval Voting, you can just include the block winners as already-elected candidates for determining ballot weight.
  • For Allocated Score or Sequentially Spent Score, you can use the normal rules for who gets put into a quota and fill the quotas of the block winners one at a time. This can cause a voter who gave nothing more than a 2 to any block winner to lose a big chunk of their ballot weight for the proportional part, however. A hack-y solution like “treat all scores as if they were 1 less for the purpose of determining ballot weight” might offer an improvement here.
  • Single Transferable Vote or Score Cascading Vote seem like much more difficult cases. I don’t have a principled solution to factoring in the support given to the block winners once you’re in the proportional phase.

Customized Quotas

Most proportional voting methods ensure proportionality by having a quota of support that’s required to be elected, and, whenever a candidate is elected, designating a quota of ballots that supported them as “represented” and removing (or otherwise limiting) the ability of those ballots to influence future rounds. By tweaking these quotas, and the rules surrounding them, we can strike a customized balance between proportional and block voting.

For methods like Allocated Score that elect a candidate in every round, the simplest approach is to use a quota that’s smaller than the Droop quota. Suppose you’re sending two candidates to the general election, there are two parties, and voters behave in a highly partisan manner. If the quota is set at 33.3% of the electorate (which is the Droop quota), a party that constitutes a mere 33.4% of the electorate can have a candidate advance to the general election — even though 33.4% support is nowhere near enough for a candidate to be viable in a two-party system. If, however, the quota was set at 20% of the electorate, it would require 40% support to advance if everyone in the larger party gave full support to all of that party’s candidates. (The general formula for top-two primaries: if the fraction of the electorate that forms a quota is q, the fraction of support the smaller party needs to get a candidate to the general election is (1–q)/2.)

When more than two candidates advance, it’s also possible to use different quotas in different rounds. For instance, you could have the quota be zero in the first round and (say) 15% of the electorate in all future rounds. In fact, having the quota be zero corresponds to block voting! Starting with block voting and then switching to a proportional method is just a special case of this kind of quota customization.

A related option is to assign voters to quotas like normal, but have the quotas reduce the impact of a ballot to (say) 50% of the impact of other ballots as opposed to 0% in one or more rounds. This is very natural in the context of proportional methods since, if you’re using fractional surplus handling (as you should), there isn’t a simple binary for whether or not a ballot is in a candidate’s quota; instead, supporting a winning candidate reduces the ballot weight. More formally, the “making being in a quota matter less idea” corresponds to reducing ballot weight by a lower amount.

Customizing quotas with eliminations

(This is both the least important and most math-heavy section in this post; feel free to skip past it.)

What we have so far covers methods like Allocated Score that elect candidates in every round but don’t have eliminations. What about methods like STV that do eliminate candidates? How can we play around with quotas to find a continuum between STV and Preferential Block Voting (PBV)? This requires multiple changes.

First, as described above, we can limit how much ballot weight is reduced by being put in a quota. A limit of a 100% reduction of ballot weight (i.e. no limit) will correspond to normal STV, a limit of 0% (i.e. no reduction whatsoever) will correspond to Preferential Block Voting, and intermediate values yield subproportional methods.

Second, we need to allow a ballot to contribute to multiple quotas. This isn’t even different from normal STV, really; getting put in a quota just reduces ballot weight, and, as stated above, we’re reducing ballot weight by a lower amount.

Third, whenever a candidate reaches the quota, making them a winner, we need to add all of the eliminated candidates back in. This is necessary for the same reason it’s necessary in PBV; an eliminated candidate may be the second choice of many supporters of an elected candidate, and this support may be enough to elect the eliminated candidate in a later round.

Finally, we’ll need to change the quotas. In an N-winner election with one vote per person, the Droop quota is defined as the smallest integer such that it’s mathematically impossible for more than N candidates to get that many votes. Crucially, once a candidate reaches the quota, they would be guaranteed to be elected even if you transferred votes between other candidates in an arbitrary manner. This latter description also encompasses the 50% (plus one vote) threshold in PBV.

Math time! Let’s say that the ballot weight of a ballot that’s in one quota has a ballot weight of r (with 0 ≤ r ≤ 1) and there are N winners. What’s the amount of support that’s just barely impossible for N + 1 candidates to get, such that if a candidate gets that much support, that candidate must win? We’ll use q for the size of the quota (expressed as a fraction of the electorate), which is the variable we’ll be solving for.

Let’s say the candidate who is just barely assured of winning has a vote total (expressed as a fraction of all ballots) of q. We have the equation

q = (N-1)rq + (1-Nq) + (one vote)

The right-hand side is the maximum number of votes that can go for someone other than the candidate in question. (N-1)rq is the amount of remaining ballot weight of voters who have been put in quotas prior to electing the final candidate, and (1-Nq) is the fraction of voters that aren’t supporting our candidate and haven’t been put in a quota. The “one vote” is there to ensure that our candidate wins instead of tying. (It’s also symbolic; it’s fine for it to be less than a single vote, just so long as it’s greater than zero.) Now for a little algebra

q*(N + 1 -r(N-1)) = 1 + (one vote)

q = 1/(N + 1-r(N-1)) + (one vote)

Plugging in r = 0 (which is just STV) we get q = 1/(N + 1) + (one vote), which is simply the Droop quota. Plugging in r = 1 (which is just Preferential Block Voting) we get q = 1/(N + 1- (N-1)) + (one vote) = 1/2 + (one vote), which just corresponds to needing a majority.

(If we know what we want q to be, we can also solve the equation for r, of course.)

And that does it! With these changes, and 0 < r < 1, we get a subproportional method based on STV. It’s possible to add further modifications so that being put into a quota in early rounds reduces ballot weight less than being put into a quota in a later round (or vice versa), but this is already complicated enough that we won’t go into it.

Sub-semi-proportional hybrid methods

Semi-proportional voting methods are those that can deliver proportional results, but are reliant upon strategic voting for this. The simplest is Single Nontransferable Vote (SNTV), in which voters a limited to voting for a single candidate and the top vote-getters win (or, in the context of a primary, advance to the general election). When used for a nonpartisan primary, or when followed by a runoff, this is generally referred to as Plurality or a two-round system.

The subproportional method (I’ll write “sub-semi-proportional” when I want to be clear about the semi-proportionality of the base method) corresponding to SNTV is the broad class of limited voting, in which voters have a limit for how many candidates they can vote for that is less than the number of winners. So if five candidates would advance, voters could be limited to voting for three or four candidates. However, this approach does not yield a subproportional method when only two candidates will be sent to the general election since “vote for one” is the only restriction consistent with limited voting.

For top-two primaries, we can instead use a subproportional method based on Cumulative Voting. In Cumulative Voting, either (a) voters get some limited number of votes and can distribute them among candidates however they want, or (b) voters can vote for any number of candidates, but a ballot that supports N candidates only counts as 1/N votes for each of them. Building off (a), we could give voters three levels of support: Favorite, Acceptable, and Rejected. Voters can mark any number of candidates as Acceptable, but only a single candidate is Favorite. A score of Favorite would be worth more to a candidate than a score of Acceptable (how much more a score of Favorite is worth is a tunable parameter) and whichever candidates had the highest scores in aggregate would win. Building off (b), we could allow vote to either cast a ballot would a single vote to a single candidate, or to vote for however many candidates they like, but have their ballot only be worth (say) 0.8 votes to each of them.

Options based on specific PR methods

STAR Cascading Vote admits a very simple option for turning it into a subproportional method: raise the quota to whatever you think is the smallest-size group should should be able to guarantee itself a slot in the general election. This is effective because, if no candidate is able to reach the quota, STAR Cascading Vote will (more or less) select Condorcet winners to fill the remaining slots.

Another option, suggested by Mark Bohnhorst, is to use Baldwin to eliminate candidates until there are only as many left as there are candidates to send to the general election. However, this is reliant upon strategic voting to ensure that an arbitrarily large minority gets a candidate to the general election. Say it’s a top-two primary, and three candidates, A1, A2, and B. The As are in the majority faction and are equally popular; there are as many A1>A2>B ballots as A2>A1>B ballots. Here, if the B faction provides equal numbers of B>A1>A2 and B>A2>A1 ballots, A1 and A2 will be the finalists, even if B is the first choice of 49% of voters. The B faction would have to give one of the A candidates a sizable advantage over the other to send B to the general election.

Precinct Summable Subproportional Methods

One consideration when selecting a voting method that is very important for ease of implementation is precinct summability. Roughly speaking, a voting method is precinct summable if individual precincts can perform local tallies, publish these tallies in a way that is fully consistent with having anonymous ballots, and then these local tallies can be combined to determine the overall winners. Plurality, Approval, STAR, and many Condorcet methods (along with their block versions) are all precinct summable. IRV and the vast majority of candidate-based proportional voting methods are not precinct summable. (Precinct-summable candidate-based proportional voting methods rely on a technique along the lines of having candidates determine how the votes they receive are transferred, rather than the full preferences expressed on voters’ ballots.)

Here’s a precinct-summable subproportional method using Approval ballots that I’ll call Approval Subtractive Weights (ASW): Voters may vote for any number of candidates. Candidates are elected (or advanced to the general election) in rounds, and in each round, the candidate with the highest number of weighted votes is declared a winner. Each ballot contributes 1-kw weighted votes to each candidate who received a vote on that ballot, where w is the number of winners (from previous rounds) who received a vote on that ballot, and k is a tunable parameter that is part of the voting method. k = 0 is Block Approval Voting. k should not be greater than one divided by the number of winners, minus one (e.g. 0.5 for a three-winner election); otherwise, ballots could work against the interests of the voters who cast them in the final round by contributing negative weight.

Why is this precinct summable? In a race with n candidates, each precinct only needs to send n(n + 1)/2 numbers for centralized tabulation: each candidate’s vote total, and the number of voters that voted for both of each of the n(n-1) pairs of candidates. Whenever a candidate wins, you just subtract k times the number of ballots that contain both a vote for the winning candidate and a vote for another candidate from the other candidate’s vote totals, and do this for each of the remaining candidates.

For those who are curious, there isn’t a value of k that would turn this into a proportional voting method. For true proportionality you need to use something like Sequential Proportional Approval Voting, where the weight of each ballot isn’t altered through simple subtraction. SPAV isn’t precinct summable.

We can also create a precinct-summable subproportional method based on STAR Voting that I’ll call STAR Subtractive Weights (SSW). It uses STAR ballots, repeatedly chooses winners by using single-winner STAR voting among the remaining candidates, and, in each round, a ballot that has given s stars to winning candidates has a weight of 1-ks/5. (The factor of 5 is there such that k means the same thing in SSW as in ASW given the 5-star ballot.) The weight is relevant for both the scoring phase and runoff phase of each round of tabulation.

SSW is precinct summable for much the same reason as ASW, but is third-order summable instead of second-order summable. That is to say, it requires O() numbers to be submitted by each precinct instead of O(n²). This makes it impractical to tabulate by hand in a precinct-summable manner, though tabulation is still easy for computers.

What should be the value of k? Let’s recast the question. Suppose a fraction x of voters constitute a minority of the electorate and all want the same candidate to win, and all other voters for all candidates other than the one preferred by this minority. How large should x (the size of this minority faction) need to be in order to send its candidate to the general election? Letting w be the number of candidates who will advance to the general election, we have the equation x = (1-x)*(1-k(w-1)), which represents the minority candidate being in a tie with the other candidates. Solving for k yields

k = (1-(x/(1-x)))/(w-1).

So if we want to require 40% support to advance in a Top-2 election, we have k = (1-(.4/.6))/1 = 1/3. If we want to require 40% support for a Top-5 election we have k = (1-(.4/.6))/4 = 1/12.

I don’t know of a way to make a precinct-summable subproportional method that uses a ranked ballot that doesn’t employ a technique along the lines of turning ranks into scores (like Borda Count), which is itself problematic. The fundamental problem is that you can’t infer that a voter would be content to reduce their ballot weight in future rounds to advance a candidate from the fact that this voter ranks that candidate second. (Maybe the voter hates every candidate except for their favorite.) You can infer this from a voter giving their second choice four stars on a 5-star ballot, but ordinal rankings simply don’t provide the right kind of information.

Comparing Options

Now we know how to create subproportional methods. A lot of subproportional methods. Which ones make the most sense to implement, or at least seriously consider in more concrete terms?

A key question is how much complexity we’re willing to tolerate. Unless the answer is “a lot”, we should probably limit ourselves to considering sub-semi-proportional methods (which are all precinct-summable) and precinct-summable subproportional methods.

Of these, Limited Voting is the simplest. But it comes with serious disadvantages. It yields a lot of wasted votes since votes that are used on candidates with no chance of advancing to the general election can’t be used to help anyone else. And so strategy is very important under Limited Voting, just like it’s very important under Plurality.

But the biggest concern I have with Limited Voting is third-party visibility. One of the disadvantages of a Top-N system (also called unified primaries, integrated primaries, blanket primaries, or, most confusingly, open primaries) is that they often prevent third parties from getting a candidate to the general election, making it harder for them to build momentum. Letting third parties see their full support in the primary is important for mitigating this harm. (Fusion voting for the general election can do even more here.)

The favorite/acceptable/rejected system based on Cumulative Voting is another option, but I don’t love it. There is substantial strategy in which candidate to mark as one’s favorite, and I worry that the ballot instructions would be confusing to many voters. It may be better than Limited Voting for jurisdictions that need such exceptionally simple voting methods, but for the most part I prefer the precinct-summable subproportional methods.

If a jurisdiction can handle a voting method that’s roughly as difficult to tabulate as single-winner STAR Voting (which isn’t very difficult), ASW effectively handles the problems of Limited Voting and other sub-semi-proportional methods. ASW lets third parties see their full support; strategic voters wouldn’t refrain from giving an approval to a third party unless they’re expecting that third party to advance to the general election easily. ASW makes it as easy to fill out a ballot as single-winner Approval Voting; you just vote for some of the candidates, and it’s impossible to invalidate your ballot by anything short of writing your name on it.

The downsides of ASW are the lack of expressiveness (having only two distinct levels of support makes it impossible to differentiate the candidates very well) and the importance of strategy in setting one’s approval threshold — in short, the same downsides as single-winner Approval Voting. SSW addresses both of these problems, but it comes at the cost of significantly more difficulty in implementing since SSW is merely third-order precinct-summable. (SSW should still be easier to implement than any form of Ranked Choice Voting, however.)

The benefits of SSW over ASW are substantial, and approximately the same as the benefits of STAR over Approval. One particular feature is that SSW, unlike ASW, incentivizes candidates to be relatively tolerable to opposing voters who would be unwilling to vote for them in any case, but might be willing to give them one star instead of zero. (Such incentives can exist in the general election regardless of the voting method used in the primary.)

If we’re willing to accept even more complexity and go with a voting method that isn’t precinct-summable at all, can we do better than SSW? Probably — but I doubt it’s really worth it. There are some ways that SSW can be improved upon that are inconsistent with precinct summability, such as reducing ballot weights in a manner more similar to Allocated Score than to Sequentially Spent Score so that voters don’t lose ballot weight when candidates they dislike, but still give one star, win. Such a loss in ballot weight is very small under SSW, however.

If tabulation complexity wasn’t an issue at all I’d lean toward either a variant of Allocated Score with runoffs and customized quotas or STAR Cascading Vote with heightened quotas. But the advantages of these methods are marginal enough that I wouldn’t recommend them unless a jurisdiction is already using the fully proportional forms of these methods for multi-winner elections.

Another question: Nearly all of the subproportional methods we’ve discussed have some tunable parameter that determines whether the method is closer to a block method or a proportional method. How should we set this parameter? How large should a minority need to be for them to be able to ensure they can send a candidate of their choice to the general election? This probably depends on the number of candidates that will advance to the general election. For a Top-2 election, I lean toward a number like 48% (because same-party general elections are important for depolarization), which is high enough that I’m fine with just using a block method instead of a subproportional method. For a Top-5 election, I want more variety, so I’m inclined to go with a number closer to 30%. But honestly, I’m kind of pulling numbers out of a hat here. This is an important question, but it’s not one that has been studied to any meaningful extent.

Subproportional methods are a new idea. To the best of my knowledge, this post is the first place that anyone has written much about them in the abstract. Limited Voting has been around for a long time, and perhaps we can draw some conclusions from experiences with it. While I think subproportional methods are optimal for Top-N primaries (especially with N > 2), this post is most likely only scratching the surface of what is possible. There could be reasonable ranked subproportional methods that aren’t outrageously complex the way the hybrid of PBV and STV is. And the analysis I’ve given here is rather cursory. A future study might evaluate subproportional methods with tools such as computer simulations to give a quantitative comparison that is less reliant on intuition.



Marcus Ogren

I am an advocate of better voting methods which eliminate the spoiler effect, make third parties viable, and yield proportional representation.