Pick a motor, stack up your gear stages, and get overall reduction, free and realistic speed, torque at the wheel, pushing force against the traction limit, and whether the current draw will brown you out. Every formula is shown with your numbers substituted in.
Motor figures are each manufacturer's own currently-published specs, verified against the vendor page and cited at the bottom of this tool.
Kit-of-Parts chassis: 2 × CIM through a ToughBox Mini at 8.45:1 (AndyMark's real gearset — a 14T pinion into 50T, then 19T into 45T), 6 in wheels.
5,310 RPM free · 2.43 N·m stall · 133 A stall / 2.7 A free
The classic brushed KOP motor. Heavy and no built-in encoder, but nearly indestructible.
One row per reduction — a gear mesh, a chain run, or a belt run. In teeth mode a stage reduces by driven ÷ driving, so a 14T pinion into a 50T gear is 3.571:1.
Rule of thumb: ≈95% per spur-gear mesh, ≈97% per chain or belt run. You have 2 stages entered, so 0.952 ≈ . If one “stage” above is really a whole gearbox, use its overall efficiency instead.
Measure a loaded wheel if you can — tread squash under a 125 lb robot makes the effective diameter smaller than nominal, which is why vendors' published speeds run a little under the pure calculation.
Competition weight — robot plus battery and bumpers, since that is what is actually pressing the wheels into the carpet.
Coefficient of friction. Community-measured, not a vendor spec: roughly 0.8–1.0 for smooth/Colson wheels and 1.1–1.4 for nitrile or roughtop tread on FRC carpet. Measure your own robot if the answer matters.
100% for swerve or a 6-wheel tank where every wheel is driven. Drop it if some of your weight rides on undriven omni or caster wheels — only weight over a traction wheel makes grip.
Free speed is a no-load number. On carpet the motor also fights rolling resistance, gearbox drag and wheel scrub, so it settles below it. 80–85% is the long-standing FRC design-calculator convention — it is an empirical allowance, not physics.
The smart-current limit you set in your motor-controller config. This is the single biggest lever on how hard your robot can push — and the thing that stops you tripping breakers.
Resting pack voltage. A healthy charged FRC pack reads about 12.7–13.5 V open; 12.5 V is a conservative default.
Use your Battery Beak reading. Roughly 0.011 Ω on a new pack, under 0.015 Ω is healthy, over 0.020 Ω means retire it. This is what turns current draw into voltage sag.
Torque-limited. The carpet would hold more than your motors can deliver, so the wheels grip and the motors bog down. More reduction (or a higher current limit, if the breakers allow it) would let you push harder. You are effectively pushing 31.2 lbf.
That is about 0.26 g of acceleration — 8.4 ft/s².
Drivetrain draw leaves 40 A of headroom under the main breaker for your other mechanisms. Estimated sag to 11.30 V keeps you clear of the brownout line.
Add up the rest of the robot in the current & brownout calculator, or read how to stop browning out.
G = Π (driven ÷ driving)G = 3.571 × 2.368 = 8.4586n_out = n_free ÷ Gn_out = 5,310 RPM ÷ 8.4586 = 627.8 RPMv = n_out × π × Dv = 627.8 rev/min × π × 6.00 in ÷ 12 ÷ 60 = 16.43 ft/sv_adj = v × deratev_adj = 16.43 ft/s × 85% = 13.97 ft/sτ_m = τ_stall × (I_limit − I_free) ÷ (I_stall − I_free)τ_m = 2.43 × (40 − 2.7) ÷ (133 − 2.7) = 0.694 N·mτ_out = N × τ_m × G × ητ_out = 2 × 0.694 × 8.4586 × 0.90 = 10.57 N·mF = τ_out ÷ (D ÷ 2)F = 10.57 N·m ÷ 0.0762 m = 138.7 N = 31.2 lbfF_max = μ × W × (weight on driven wheels)F_max = 1.10 × 120 lb × 100% = 132.0 lbfa = F_usable ÷ W × ga = 31.2 lbf ÷ 120 lb × 32.17 = 8.4 ft/s² (0.26 g)I = N × I_limit · V_bus = V_oc − I × R_intI = 2 × 40 = 80 A · V_bus = 12.50 − 80 × 0.015 = 11.30 VEach motor uses figures published by its own manufacturer, at 12 V. That matters: vendors dyno each other's motors under their own test conditions and get different answers. REV's comparison page, for instance, lists the Kraken X60 at 6,271 RPM / 4.21 N·m from REV's own bench, while WCP publishes 6,000 RPM / 7.09 N·m for the same motor. We use the manufacturer's own number for each, and you should assume a real motor lands somewhere near — not exactly on — any of them.
A gearbox is a trade, and only a trade. It cannot create power — it can only convert the power a motor already makes from one shape into another. Reduce by 10:1 and the output shaft turns a tenth as fast and delivers about ten times the torque. That is the whole idea, and almost every drivetrain argument your team will have is really an argument about where on that trade you want to sit.
One reduction is just the driven gear's tooth count over the driving gear's. A 14-tooth pinion turning a 50-tooth gear is 50 ÷ 14, or 3.571:1. Stack stages and you multiply them: the KOP ToughBox Mini that everyone calls “8.45:1” is really a 14T into 50T followed by a 19T into 45T, which works out to 8.459. Chain and belt runs count exactly the same way — sprocket teeth over sprocket teeth — so a 12T to 36T chain run is another 3:1 on top of whatever the gearbox already did.
Free speed is what you get from pure geometry: take the motor's no-load RPM, divide by the reduction, and multiply by the wheel circumference. It is exact, and your robot will never once achieve it. A motor only reaches free speed when it is doing no work at all, and a robot on carpet is always doing work — squashing tread, dragging bearings, scrubbing wheels sideways through every turn.
So the convention is to derate. Multiplying free speed by 80–85% gets you a number that matches what teams actually clock on a field, and that is the figure worth comparing between designs. It is an empirical allowance, not a derivation from first principles, which is exactly why the calculator above puts it in an editable box rather than hiding it inside the result. If your robot only ever travels twenty feet at a stretch, you may not even reach the adjusted number before it is time to brake.
Efficiency is a separate thing, and it is easy to double-count. Gear losses take torque, not speed. A 90%-efficient gearbox still spins its output at very nearly the full free speed with nothing attached; what it loses is roughly a tenth of the force you can get out of it. That is why the calculator applies efficiency to torque and pushing force but leaves free speed alone. Budget about 95% per gear mesh and 97% per chain or belt run — two stages lands near 90%, a three-stage swerve module near 86%.
Rookie teams tend to ask “what ratio should we use?” when the useful question is “what is currently limiting us?” There are only two answers. If your gearing can generate more force at the wheel than friction with the carpet can hold, you are traction-limited: the wheels break loose and spin, and adding reduction makes you slower without making you push any harder. If the carpet could hold more than your motors can deliver, you are torque-limited: the wheels grip, the motors bog down, and more reduction genuinely does help.
The calculator tells you which one you are, because the fix is completely different in each case. Traction-limited robots need grippier tread, more weight over the driven wheels, or simply a lower current limit to stop wasting energy spinning wheels. Torque-limited robots need more reduction, more motors, or a higher current limit — if the breakers can stand it. Which wheels are even driven matters here too, and that depends on the layout you chose; our guide to FRC drivetrain types walks through how tank, swerve and mecanum differ on this point.
One caution on the traction number: the coefficient of friction is not a specification anybody publishes. Community measurements put smooth and Colson wheels somewhere around 0.8–1.0 and nitrile or roughtop tread around 1.1–1.4 on FRC carpet, but that swings with tread wear, dust, and how the test was run. If grip is deciding your design, drag your actual robot across actual carpet with a luggage scale and use your own number.
Arms, elevators and turrets get designed backwards from drivetrains. With a drivetrain you usually start from a target speed; with a mechanism you start from the torque you need and let speed fall out of it. For an arm, the worst case is horizontal: torque equals the weight of the arm plus whatever it is carrying, times the distance from the pivot to the combined centre of mass. Size the reduction so you can produce that at a current the motor can hold continuously, not at its stall current — a motor held near stall turns almost all of its power into heat and will fade or trip within a match.
Then sanity-check the speed you got. A 100:1 reduction on a NEO gives you about 57 RPM at the output, which is roughly a second for a quarter turn — fine for an arm, hopeless for a shooter. And check back-drive: a low reduction lets gravity spin the mechanism down when the robot is disabled, while a high reduction (especially a worm or a planetary) may hold it in place on its own. Switch the calculator to Mechanism mode, enter your lever radius, and read the force at the end of the arm directly.
Torque is proportional to current, so your smart-current limit sets a ceiling on force just as firmly as your gear ratio does. A CIM at a 40 A limit produces only about 29% of its stall torque; a Kraken X60 at the same limit produces about 10% of its. Doubling your reduction and halving your current limit can land in the same place — except one of those changes also halves your top speed and the other keeps it.
Then there is the ceiling above all of that. Four drive motors at 40 A is 160 A, already beyond the 120 A main breaker, and that is before the intake or the elevator moves. The breaker is thermal, so a momentary spike while you shove someone is fine; a sustained draw is not. Meanwhile every amp pulls the bus voltage down by roughly the battery's internal resistance times the current, and at about 6.75 V the roboRIO starts shutting your outputs off. Add up the rest of the robot in the current & brownout calculator, and if you are already browning out at events, work through our brownout troubleshooting lesson.
If any of this was new, the long-form version — with worked examples and diagrams — is in FRC gear ratios explained.
A single reduction is the driven gear's tooth count divided by the driving gear's: a 14-tooth pinion into a 50-tooth gear is 50 ÷ 14 = 3.571:1. When stages are stacked, multiply them — the KOP ToughBox Mini's 8.45:1 is really (50 ÷ 14) × (45 ÷ 19) = 8.459. Output speed is motor free speed divided by that number, and output torque is motor torque multiplied by it, minus efficiency losses.
There is no single right answer, because the ratio only matters relative to your wheel size, motor count and current limit. Most competitive robots end up geared for roughly 12 to 17 ft/s of free speed, and the useful test is not the ratio itself but whether the calculator says you are traction-limited or torque-limited. If your wheels can already push harder than the carpet will hold, more reduction buys you nothing but a slower robot.
Free speed is exact kinematics — motor no-load RPM divided by the reduction, times the wheel circumference — and assumes the robot is pushing against nothing. Adjusted speed multiplies that by roughly 0.8 to 0.85 to allow for rolling resistance, gearbox drag and wheel scrub. That derate is a long-standing FRC design-calculator convention rather than a derivation, which is why this tool exposes it as an editable field instead of burying it.
Barely. Efficiency losses eat torque, not free speed, so a 90% efficient gearbox gives you about 90% of the pushing force but very nearly the same top speed. That is why this calculator applies efficiency to the torque and force outputs but not to free speed. A rough rule is 95% per spur-gear mesh and 97% per chain or belt run, so a two-stage gearbox is about 90% and a three-stage swerve module about 86%.
Pushing puts the drive motors near stall, which is exactly where they draw the most current. Four motors at a 40 A limit is 160 A, already past the 120 A main breaker, and that current pulls the bus voltage down by roughly current times the battery's internal resistance. Once the bus reaches about 6.75 V the roboRIO starts disabling outputs. Lowering per-motor current limits is usually a better fix than a new battery.
Work backwards from holding torque. Estimate the torque your arm needs at its worst case — arm weight plus game piece, times the horizontal distance to its centre of mass — then pick a reduction that produces it at a current your motor can hold without cooking. Switch this calculator to Mechanism mode and enter your lever radius to see the force at the end of the arm. Also check that the ratio is high enough not to back-drive when disabled.
394 lessons across all 11 departments, plus every tool here. Create a free account to save your work, export it, and track your progress.