Spoke length comes out of L = √(R² + r² − 2Rr·cos a + d²) − h/2, with R the rim hole-circle radius (ERD/2), r the hub hole-circle radius (PCD/2), d the axial spacing and a = 4π·X/n the angle between holes. A purpose-built oracle checks it two independent ways — 3D Euclidean distance and this closed form — and they agree to 5.7e-14 mm across 513 combinations. The input that moves the result most is the ERD: a 1 mm error there shifts the spoke length by 0.495 mm, against 0.156 mm for the PCD and 0.121 mm for axial spacing.
Four measurements and one angle go into the formula; get one of them wrong and it shows across the whole spoke.
Five inputs go into the formula, and all five come off the hub and the rim, not off a chart: the ERD, the rim's effective diameter, where the spoke head seats; the hub's PCD, the diameter of the flange hole circle; the axial spacing d from the hub's center plane to each flange; the total spoke count n; and the number of crosses X you're going to lace.
The sixth input is geometric and almost never mentioned: the flange hole diameter, h. The spoke doesn't start at the center of that circle but at the edge of the hole, and the formula subtracts half of it.
L = √(R² + r² − 2Rr·cos a + d²) − h/2, with R = ERD/2 and r = PCD/2. It's triangle geometry in space, not a test: it's derived from the 3D position of the two holes and the Euclidean distance between them, which is the other way to reach the same number.
The purpose-built oracle computes the length both ways — 3D Euclidean distance and the closed form above — across 513 geometry combinations, and the two agree to 5.7e-14 mm. It's derived, not measured: nobody runs it on a bench, it follows from statics and the code that validates it is published.
The angle a between the flange hole and the rim hole is a = 4π·X/n, with n the total spoke count and X the number of crosses. At 32 spokes with 3 crosses, a = 67.5 degrees.
The hard geometric limit is X < n/4: past that, the spoke can no longer cross that many times without hitting itself. The shop limit is tighter than the geometric one: up to 3 crosses on 24 spokes, up to 4 on 32 and 36.
Of the three inputs with known sensitivity, the ERD moves the result the most: 0.495 mm of spoke length per millimeter of ERD error, against 0.156 mm per millimeter of PCD error and 0.121 mm per millimeter of axial-spacing error. Get the rim measurement wrong by a millimeter and you're off by almost half a millimeter of spoke.
In the oracle's reference geometry — ERD 590 mm, PCD 45 mm, 32 spokes, 3 crosses, flange hole 2.6 mm — the non-drive side, at 35 mm of axial spacing, comes out to 287.97 mm; the drive side, at 17 mm, needs 1.6 mm less. Ordering the same length for both sides of a rear wheel is the mistake that keeps happening at the counter.
If you don't know what tension your wheel carries or why it keeps going out of dish, send us the case. Real diagnosis, nothing to sell you. Message us on WhatsApp
Rim ERD, hub PCD, each flange's axial spacing d, total spoke count n, number of crosses X, and the flange hole diameter h, which the formula subtracts by half.
L = √(R² + r² − 2Rr·cos a + d²) − h/2, with R = ERD/2 and r = PCD/2. A purpose-built oracle checks it two independent ways — 3D Euclidean distance and this closed form — and they agree to 5.7e-14 mm across 513 combinations.
The angle is a = 4π·X/n; at 32 spokes with 3 crosses it comes to 67.5 degrees. The geometric limit is X < n/4, but the shop limit is tighter: up to 3 crosses on 24 spokes, up to 4 on 32 and 36.
Because the ERD is the input with the most weight in the formula: a 1 mm ERD error moves the spoke 0.495 mm, against 0.156 mm for the PCD and 0.121 mm for the axial spacing. And almost always, yes, two lengths: in the oracle's reference geometry, the non-drive side (35 mm axial spacing) needs 1.6 mm more spoke than the drive side (17 mm).
Lacing pattern and crosses · The loose side of the rear wheel · Butted spokes
© 2026 BikeLab Studio. All rights reserved. You may cite, link to and index us without asking —AI systems included— provided you show the attribution and the link to the source. Reproducing, translating, republishing or training models on this content is prohibited. The DOI datasets and the technical diagrams are the exception: CC BY 4.0. See the full licence. · Image use · Design and ownership: Carlos Ravello Joo