Creating Share Classes with Vote Multipliers
How to create share classes in Assembley, why vote multipliers must be positive integers, and how a voter's class turns their share capital into a voting weight.
When different shares carry different voting power, you model that in Assembley with share classes. A share class is a named category with an integer vote multiplier, and each voter belongs to one class. This article explains how to create classes and the reasoning behind the integer rule.
What a share class is
A share class has two things: a name (for example, A-shares or B-shares) and a vote multiplier — the number of votes each unit of capital in that class carries. A classic structure:
- A-shares — multiplier 10 (ten votes per unit of capital).
- B-shares — multiplier 1 (one vote per unit of capital).
Each voter is assigned to exactly one class, and that class determines their multiplier. Share classes belong to a specific company group, so a group carries its own set of classes.
Why multipliers must be positive integers
Assembley requires multipliers to be positive whole numbers — it rejects fractional values like 0.1 or 1.5. The reason is precision: because both a voter's capital and their multiplier are whole numbers, the resulting voting weight (capital × multiplier) is always a whole number, with no rounding and no ambiguity about how a fractional vote should be counted. Whole numbers keep the tally exact and the result defensible.
If your real-world structure is expressed as a ratio (say A-shares carry ten times the votes of B-shares), express it as integers — A = 10, B = 1 — rather than as a fraction.
When you create classes
You define share classes while setting up a company voter group, in the guided group-creation flow. Classes are optional: a company group that votes directly, without different share classes, simply skips the classes step and uses voting rights entered for each voter. Association groups don't use classes at all. See Creating and Managing Voter Groups and Voter Type: Company vs Association.
Classes and importing
If you import a register into a group that has classes, your file's Class column must match your class names — Assembley looks each one up and computes the voting weight from it. So create your classes before importing. Rows naming a class that doesn't exist are flagged and skipped. See Importing Voters from CSV or Excel.
Where to go next
To see how a class turns into a number, read How Voting Weight Is Calculated. For the bigger picture of capital versus votes, see Understanding Share Classes and Voting Rights.
Related articles
- How Voting Weight Is CalculatedExactly how Assembley turns a company voter's share capital and class into a voting weight — the capital × multiplier formula, when it is computed, and why it is frozen onto each ballot.
- Share Capital vs Voting Rights ExplainedWhy Assembley keeps share capital and voting rights as two separate numbers for company voters, what each one is used for, and how keeping them distinct lets quorum and the tally both be correct.
- Understanding Share Classes and Voting RightsHow Assembley separates share capital from voting rights, how share classes apply an integer multiplier to compute voting weight, and why quorum is measured against capital while the tally uses voting rights.