Motorcycle gear/rpm/speed calculator

Please read disclaimer.
You can now save bikes to the database.  PLEASE READ BELOW!
Use the filter to make it easier to find the bike you want. ('yam' for Yamaha, 'harley', etc)

Bike:    Date added: -

Make/model: *
(year of bike, or?)
Idle RPM:
Max RPM (redline): *
Max Torque RPM:
Max Power RPM:
Shift Down RPM:
Shift Up RPM:
Stock Tire Size: / / *
Tire Size (compare) / /  
Units: MPH     KPH
Ratios Driving   Driven     Ratio
Primary Drive: /     *  (between crank & clutch)
1st Gear: /   *  
2nd Gear: /   *  
3rd Gear: /   *  
4th Gear: /   *  
5th Gear: /    (if applicable)
6th Gear: /    (if applicable)
Jackshaft: /    (if applicable)
Final Drive: /   *  (stock)
Final (compare) /  
(not really necessary... everything will be recalculated when something changes)

Various Data by Gear

RPM at xxx by Gear    (increment by xxx)


Tire Circumference ( Width / 25.4 * Aspect Ratio / 100 + Rim Size / 2 ) * 2 * PI
Tire2 Circumference   
overallRatio  =  PrimaryDriveRatio * JackshaftRatio * GearXRatio * FinalDriveRatio
Calculate MPH from EngineRPM
MPH  =  EngineRPM / overallRatio * (TireCircumference/12) * 60/5280
MPH (simplified)  =  EngineRPM / overallRatio * TireCircumference * 0.000946969697
KPH  =  MPH * 1.6
Calculate EngineRPM from knownMPH
EngineRPM  =  KnownMPH * ((5280/60) / (TireCircumference/12)) * overallRatio
EngineRPM (simplified)  =  KnownMPH * 1056 / TireCircumference * overallRatio
EngineRPM for KPH  =  EngineRPM / 1.6


This is my version of a motorcycle gearing calculator.  It is the result of recently having shoulder surgery and therefore having lots of time to sit at this damn computer.  It was built taking what I thought were the best features of several free online calculators and combining them.  It is probably most useful for seeing the results of changing the final drive ratio of a bike.  It will work for chain, belt, and shaft driven motorcycles.  Jackshafts are handled as well. 

This calculator is not complete, and absolutely nothing is guaranteed.  However, I believe the math is accurate.  Errors may creep in from the tire calculations.  For instance, if you mount a 200 tire on too narrow of a rim, the calculation to compute the tire circumference will be inaccurate, skewing the mph calculations.  There are several things to do yet, see the list below. 

Rob 1/24/2009

To do

  • document code so I can figure it out a year from now. lol
  • graphs (maybe. Would they be useful?)
  • better explanations of data and calculations (help system) (maybe divHelp?)
  • provide boxes to enter measured tire circumference or radius(axle to ground).
    Calcs would use the measured circumference, then measured radius, last tire sizes. If we have either of the measured dimensions, it would be more accurate than computing the circumference from the tire size.
  • 7th gear, some bikes have 'em
  • user accounts/logins? They could edit or delete their bikes any time they were logged in.
  • allow users to save bikes to a database. Done, but bikes are not editable once they 'leave' their bike.
  • simplify calculations?somewhat...
  • provide boxes to enter another set of tire dimensions for comparing to stock tire.
  • get rid of eval(), use arrays
  • show differences between stock/modified gearing
  • add RPM Gain at Shift Down?
  • for all ratios, fix input to accept either drive/driven or ratio
  • switch to toggle mph/kph
  • show test ratio data (gearing change)
  • add comments to data array
  • make "various data" table dynamic.
  • add "max power" rpm
  • show overall gear ratio in upper table
  • fix bug to properly calculate speed range of gears
  • automatically extend "RPM at MPH by Gear" table based on max speed in max gear. Maybe use 10 mph increments?


Adding bikes to the database

NOTE: You may enter a bike, but I control the data. I reserve the right to edit or delete any of it at any time. Do not get mad at me if I delete for instance "Bill's Honda", with no other identifying info. This is not useful to anyone except Bill, and the bike will be deleted.

The intent here is to gather gearing data for different makes and models of bikes. If someone else has already entered data for your make and model bike, please do not add it again. Otherwise, feel free. There is no need for 37 Honda Spirit 750's in the database.

To add a bike, select "Add New Bike" from the dropdown list. There are several items that must be filled in. These are indicated by * near the input boxes:

  • The bike make/model, like "Honda Shadow 1100", or "Ducati 1098". Keep it short and descriptive.
  • The engine maxRPM, or redline.
  • The tire dimensions: Width in mm, aspect ratio(percent), and wheel diameter. This is common info found on your tire, usually seen as a set of 3 numbers, like 200/55/17.
  • The primary drive numbers. This is usually found in the owners manual. Sometimes it will be 2 numbers (driving teeth and driven teeth), and sometimes it will be a ratio.
  • The numbers for at least the first four gears. Again, sometimes these will be a driving/driven set, and sometimes a ratio.
  • The numbers for the final drive. For a chain-driven bike, these will be the # of teeth on the front sprocket and the # of teeth on the rear. For a shaft-driven bike, this is the # of teeth on the pinion and the # of teeth on the ring gear. This may also be expressed as a ratio.
  • You may optionally enter any of the other data.
  • Note that any (compare) numbers (in the pink areas) you enter will not be saved to the database.
Once all your data is entered, click the "Save Bike" button and you should (heh) see a popup messagebox saying your data was saved.

NOTE: As long as you are viewing your bike, you can resave the data as many times as you want. If you 'leave' your bike by selecting another bike to view, you will no longer be able to edit your data! PLEASE REVIEW YOUR DATA THOROUGHLY BEFORE NAVIGATING AWAY FROM YOUR BIKE. Since there are no logins on this site (yet?) you cannot edit the data for any bike except the one you JUST ENTERED. I know it may be a limitation, but at least you can add new bikes to the database, and no login is required. If you mess up and want me to edit or delete something, let me know.

If you have a problem or notice crap or objectionable data, please let me know.

Also note: There may well be bugs.... If you notice any, again, please let me know.


email: mpg at woodsware dot com