The formula
A free belt span vibrates like a guitar string. Its lowest natural frequency depends on tension, span length and the belt’s mass per meter:
f = (1 / 2L) × √(T / μ)
Solved for tension, and for the frequency to tune to:
T (N) = 4 × μ × L² × f²
f (Hz) = √(T / (4 × μ × L²))
- T is the tension in newtons.
- μ is the belt mass in kg per meter (8.4 g/m is 0.0084 kg/m).
- L is the free span in meters, from where the belt leaves one pulley or idler to where it meets the next.
- f is the pluck frequency in hertz.
Gates writes the same formula for its sonic tension meter with the span in millimeters and the mass per millimeter of belt width: T = 4 × M × W × S² × f² × 10⁻⁹. Prusa’s firmware uses it too, citing the taut-string formula.
Frequency rises with the square root of tension. A 10% higher pitch means 21% more tension. Double the pitch and the tension quadruples.
How do you calculate belt tension from frequency?
Multiply four by the belt’s mass per meter in kg/m, by the squared free span in meters and by the squared frequency: T = 4 × μ × L² × f². A 6 mm GT2 belt (8.4 g/m) plucked at 110 Hz over a 150 mm span carries 9.15 N, about 0.93 kgf.
Worked example: a 6 mm belt at 110 Hz
These are the calculator’s defaults, which match Voron’s A/B belt target.
- Mass per meter: 1.4 g/m per mm × 6 mm = 8.4 g/m = 0.0084 kg/m.
- Span: 150 mm = 0.15 m, so L² = 0.0225 m².
- Frequency squared: 110² = 12,100.
- Tension: 4 × 0.0084 × 0.0225 × 12,100 = 9.15 N.
- In other units: 9.15 / 9.807 = 0.93 kgf, and 9.15 / 4.448 = 2.06 lbf.
The same 110 Hz on a 9 mm belt (12.6 g/m) is 13.7 N, because the heavier belt needs more tension to ring at the same pitch. Pick the right belt width before you trust the result.
How to measure the frequency
- Park the axis so the span you measure has a fixed, known length. Voron moves the X extrusion until 150 mm of A/B belt is free. Prusa moves the gantry to the front and the Nextruder to the right on the CORE One.
- Pluck the middle of the span with a finger and hold the phone’s microphone close to it.
- Read the lowest strong peak on a spectrum app. Voron’s docs list Sound Spectrum Analysis for iOS, Spectroid for Android and Gates Carbon Drive for both. Prusa’s belt tuner runs in a phone browser.
- Measure the span from contact point to contact point with a ruler or calipers.
Klipper’s TEST_RESONANCES does not read a pluck frequency. On a CoreXY printer (two belts that drive X and Y together), run TEST_RESONANCES AXIS=1,1 OUTPUT=raw_data and TEST_RESONANCES AXIS=1,-1 OUTPUT=raw_data, then plot both files with graph_accelerometer.py. Similar curves mean the two belts carry similar tension.
What frequency should a GT2 belt be tuned to?
Tune to your printer maker’s figure, because the right frequency depends on the span. Voron sets A/B belts to about 110 Hz over 150 mm. Prusa’s belt tuner targets 98 Hz upper and 92 Hz lower on the CORE One, and 85 Hz X and 95 Hz Y on the MK4/S.
Pick a row under “Published target” in the calculator to load its frequency and span.
| Printer and belt | Frequency | Span | Tension |
|---|---|---|---|
| Voron A/B belts | 110 Hz | 150 mm | 9.15 N (6 mm), 13.7 N (9 mm) |
| Voron V2 Z belts | 140 Hz | 150 mm | 14.8 N (6 mm), 22.2 N (9 mm) |
| Prusa CORE One, upper | 98 Hz | 262 mm | 20.0 N |
| Prusa CORE One, lower | 92 Hz | 272 mm | 19.0 N |
| Prusa CORE One L, upper | 92 Hz | 311.5 mm | 24.9 N |
| Prusa CORE One L, lower | 88.5 Hz | 324.5 mm | 25.0 N |
| Prusa MK4/S, X / Y | 85 / 95 Hz | not published | needs your span |
| Prusa XL, XY belts | 80 Hz | not published | needs your span |
| Prusa MK3/S/+, X / Y | 100 / 120 Hz | not published | needs your span |
| Prusa MINI, X / Y | 110 / 110 Hz | not published | needs your span |
Where the targets come from:
- Voron: the docs give 110 Hz over 150 mm for A/B belts and call it roughly 2 lb, “on the lower end of the range”. For V2 Z belts, 140 Hz over 150 mm is the starting point.
- Prusa CORE One: frequencies are from Prusa’s belt tuner. The spans come from Prusa’s firmware, which aims for 19 N on both belts and puts the upper span at 262 mm and the lower at 272 mm. The help center accepts 90 to 98 Hz with no more than 8 Hz between the two belts.
- Prusa CORE One L: the firmware aims for 25 N and converts it to 92 Hz (upper) and 88.5 Hz (lower). The help center gives a range of 85 to 95 Hz.
- Prusa tensions in the table use the firmware’s own belt mass, 7.569 g/m.
- Prusa MK4/S, XL, MK3 and MINI: the belt tuner gives a frequency per axis but no span, so the calculator can’t turn these into newtons unless you measure your span.
- Bambu Lab: the X1, P1 and H2D series publish no frequency. Their tensioners are spring-loaded: loosen the screws, move the toolhead as the wiki shows, and tighten them again. Then rerun the printer’s resonance calibration.
Same tension, different span
Frequency scales with 1 / L at a fixed tension. If you can only pluck 200 mm of belt where your target was set at 150 mm, tune to 110 × 150 / 200 = 82.5 Hz for the same 9.15 N. Use the tension-to-frequency direction in the calculator with your own span.
Printer targets against the belt’s rating
Printer targets sit near the bottom of what Gates publishes for its 2 mm pitch belts. Gates sells its 2MGT belts as PowerGrip GT3, which runs in GT2 sprockets. These figures come from its design manual, converted from pounds.
| Gates 2MGT GT3 figure | 6 mm | 9 mm |
|---|---|---|
| Minimum static tension per span (Table 7) | 9.3 N | 14.2 N |
| General static tension per span, power drives (Table 8) | 44.5 N | 75.6 N |
| Rated working tension, 20-groove pulley (Table 6) | 173 N | 289 N |
| Minimum breaking strength, fiberglass cord (Table 6) | 556 N | 845 N |
Gates’ minimum is the least tension that makes a lightly loaded belt wrap and mesh with its sprockets. Voron’s 110 Hz target gives 9.15 N on a 6 mm belt, 0.98 times that minimum and 5.3% of the working rating. Prusa’s 19 to 25 N targets are 11 to 14% of the 6 mm rating. The belt’s strength doesn’t set the target, so use the printer maker’s figure.
Belt mass per meter
The calculator’s presets come from two published values:
- Gates 2 mm pitch belts: 1.4 g/m per mm of width, from the mass constant table in the Gates 550C sonic tension meter manual. That gives 8.4 g/m for 6 mm and 12.6 g/m for 9 mm. For another width, multiply 1.4 by the width in millimeters.
- Prusa’s firmware: 7.569 g/m for one meter of belt. The firmware uses this one value for the CORE One, CORE One L and iX.
Belts from other makers can differ. Tension is proportional to mass, so a belt 10% lighter than the preset reads 10% less tension at the same pitch. To check yours, weigh a measured length of spare belt on a scale that reads to 0.01 g and divide the grams by the meters. Then pick “Other” and type the result.
Gates also notes that a belt is stiffer than a string, so a frequency-based reading can come out above the real tension. When the exact figure matters, Gates recommends a calibration test.
Published · Figures last checked
Sources
- Gates, Model 550C Sonic Tension Meter manual (operating theory and belt mass constants) (accessed 2026-10-14)
- Gates, Light Power & Precision Drive Design Manual (Tables 6, 7 and 8) (accessed 2026-10-14)
- Voron Design documentation, Secondary Printer Tuning: belt tension (accessed 2026-10-14)
- Prusa Knowledge Base, Adjusting belt tension (CORE One, CORE One INDX, CORE One L) (accessed 2026-10-14)
- Prusa Knowledge Base, Adjusting belt tension (MK4/MK3.9) (accessed 2026-10-14)
- Prusa belt tuner web app (printer frequency targets) (accessed 2026-10-14)
- Prusa-Firmware-Buddy, manual_belt_tuning_config.hpp (belt mass, spans and tension targets) (accessed 2026-10-14)
- Bambu Lab Wiki, Belt tensioning procedure (X1 and P1 series) (accessed 2026-10-14)
- Bambu Lab Wiki, Belt tensioning (H2D) (accessed 2026-10-14)
- Klipper documentation, Measuring resonances: testing custom axes (accessed 2026-10-14)