Even odds and everyone believing the odds were even are two different problems. Arguments almost always come from the second.
Who pays for lunch, who presents first, whose turn it is to clean. There is no shortage of ways to decide, yet people still grumble afterwards. Usually not because the odds were wrong, but because nobody got to watch.
"Fair" bundles together two separate claims about a draw.
The first is rarely a problem any more; whatever tool you use, the randomness is good enough. Arguments come from the second. "I just hit random" satisfies the first perfectly and the second not at all.
The one with vertical lines and a scattering of horizontal rungs. Mathematically it holds up well: with enough rungs placed at random, the outcome is a uniformly random permutation. Each rung only swaps two neighbouring paths, so no starting position ends up favoured.
The weak point is not the maths, it is the order of operations. People usually write the names first and draw the rungs afterwards, which lets whoever draws last steer the result. On a short ladder, tracing a path by eye is not hard either.
The fix is simple: draw all the rungs first, then assign the names. Flipping the order makes the same method far more solid.
The area of each slice is the probability, which means the odds are visible. When everyone watches the pointer slow down, there is not much left to argue about.
It breaks down as the group grows. Up to about eight slices you can compare sizes at a glance; at twenty nobody can. Weights make it worse — if someone's slice is supposed to be three times bigger, no spectator has any way to verify that it is.
Mathematically the cleanest option, and on trust the weakest. Nobody but the person clicking sees anything, and the real problem is that it can be clicked again. If the first result is unwelcome, a second click leaves no trace.
If you use one, share your screen and agree in advance how many times it gets pressed. That is a procedural fix, not a tooling one.
Sometimes even odds are not what you want; maybe whoever paid last time should be less likely to pay again. There is only one honest rule here.
Your probability = your weight ÷ the sum of all weights.
Give eight people weights of 3, 1, 2, 1, 2, 1, 1, 1 and the total is 12, so the person on 3 sits at 25% and each person on 1 at 8.3%. That arithmetic should be visible. The common failure is announcing "double chance" while the implementation does something else entirely, and without the numbers on screen nobody catches it.
Avoid setting a weight to zero. Zero does not mean "less likely", it means "never". If you want someone out, taking them off the list is the honest way to do it.
Race Roulette fixes the order deliberately: the finishing order is drawn fairly first, and the race is then staged so the runners arrive in that order.
That order matters. Do it the other way round, letting a physics simulation decide who crosses first, and lane position and collisions start contaminating the odds by an amount nobody can calculate. Keeping the spectacle separate from the draw leaves the probabilities exactly as stated.
A few things follow from that.
It keeps what a spinning wheel is good at, everyone watching together, and solves the part wheels fail at once the group grows.
Procedure matters more than the tool. Three habits remove most of the grumbling.
A fair draw leans far more on a procedure everyone accepted than on the quality of the random numbers.