A stock set is gauge-balanced, not tension-balanced (see why that distinction matters). This builder goes the other way: pick a target tension, and it searches the same gauge tables the advisor reads for the closest real gauge at every string position — never an invented value, and never a second formula from what string-set-solver.js's solveSet() already computes.
Worked example: a flat 15 lb target, electric guitar, standard tuning
Here is exactly what the widget below computes for one common target — every string aimed at 15 lbs, on a 25.5" scale in standard tuning — before any JavaScript runs:
| String | Note | Gauge | Type | Tension | Deviation |
|---|---|---|---|---|---|
| 6 (low) | E2 | 0.042" | Nickel-wound | 14.76 lbs (6.69 kg) | −0.24 lbs |
| 5 | A2 | 0.032" | Nickel-wound | 15.76 lbs (7.15 kg) | +0.76 lbs |
| 4 | D3 | 0.024" | Nickel-wound | 15.76 lbs (7.15 kg) | +0.76 lbs |
| 3 | G3 | 0.016" | Plain steel | 14.66 lbs (6.65 kg) | −0.34 lbs |
| 2 | B3 | 0.013" | Plain steel | 15.37 lbs (6.97 kg) | +0.37 lbs |
| 1 (high) | E4 | 0.0095" | Plain steel | 14.62 lbs (6.63 kg) | −0.38 lbs |
| Total | 90.92 lbs (41.24 kg) | max dev 0.76 lbs | |||
Compare the B string here — a .013" plain steel, 15.37 lbs — against the stock Super Light set's .011" at 11.00 lbs (see the advisor's own worked example): the target flattened out the dip a gauge-balanced set leaves on that string, at the cost of a heavier, unusual gauge most manufacturers don't ship on a stock set.