Skip to main content
Calcimator

Range of Motion Calculator

Measure joint range of motion deficits by comparing measured flexion and extension to normal values for each joint.

About this calculator

This calculator compares a goniometer-measured joint range against standard normal values to quantify how much motion is missing. Each Joint Type carries its own published normal flexion and extension figures: shoulder flexion to 180° and extension to 60°, elbow flexion to 150° with 0° of extension, hip flexion to 120° and extension to 30°, knee flexion to 135° with 0° of extension, and ankle dorsiflexion to 20° with plantarflexion to 50° -- the ankle entry uses the Measured Flexion field for dorsiflexion and Measured Extension for plantarflexion, since ankle motion is conventionally described in those terms rather than flexion and extension. Flexion Deficit and Extension Deficit subtract your measured values from the joint's normal values, floored at zero so a measurement that meets or exceeds normal never produces a negative deficit. Measured Extension follows standard clinical convention: enter a positive value for hyperextension beyond the joint's normal reference, or a negative value for an extension lag/deficit -- for joints like the elbow and knee, whose normal extension is 0° (fully straight), a negative entry is the only way to represent a real impairment such as a knee that can't fully straighten.

Total ROM simply adds Measured Flexion and Measured Extension together, while Percent of Normal expresses that sum as a share of the joint's full normal arc -- a useful single number for tracking recovery over successive visits. Measured Flexion is capped per joint at a clinically plausible ceiling above its normal value (allowing for natural hypermobility) so an extreme entry can't produce a nonsensical percentage. Because every joint's normal values differ, always confirm Joint Type is set correctly before interpreting a deficit; Joint Type values outside the supported 1-5 set are clamped into range with a warning rather than silently substituted with an unrelated joint's norms.

Inputs

degrees
degrees

Results

Flexion Deficit

15 degrees

Percent of Normal

88.9%

Extension Deficit0 degrees
Total ROM120 degrees
How to Use This Calculator
  1. Enter Joint Type, Measured Flexion, and Measured Extension.
  2. Review Flexion Deficit (degrees) and Percent of Normal (%).
  3. Use Extension Deficit (degrees) and Total ROM (degrees) to inform your decision.

How the result changes with Measured Flexion

Measured FlexionFlexion DeficitPercent of Normal
6075 degrees44.4%
9045 degrees66.7%
1800 degrees118.5%
2000 degrees118.5%

What each input means

Joint Type
The joint being assessed, which sets its normal flexion/extension reference values.
Measured Flexion
The measured flexion angle in degrees using a goniometer. Capped internally per joint to a clinically plausible maximum.
Measured Extension
The measured extension angle in degrees using a goniometer. Positive = hyperextension; negative = an extension lag/deficit (e.g. a knee that can't fully straighten).

How this is calculated

Worked example, using the default values

  1. Identify Input Parameters
    Joint Type = 4, Measured Flexion = 120, Measured Extension = 0 = 3 input(s) provided
  2. Calculate Flexion Deficit
    Flexion Deficit
    15 = 15
  3. Calculate Percent of Normal
    Percent of Normal
    88.9 = 88.9%
  4. Calculate Extension Deficit
    Extension Deficit
    0 = 0
  5. Calculate Total ROM
    Total ROM
    120 = 120

Engine last updated . Checked against 5 independently-derived tests — how we verify calculators. Built by Paul Gunder, a software engineer, not a licensed financial, medical, or legal professional.

Frequently Asked Questions

Why is Flexion Deficit floored at zero instead of showing a negative number?

A negative deficit would mean the patient measured beyond the textbook normal range, which does happen with naturally hypermobile joints but isn't a "deficit" in any clinically useful sense. The calculator floors Flexion Deficit and Extension Deficit at zero so the output always reads as "how much motion is missing," never as an above-normal bonus figure.

Why does raising Measured Flexion lower the Flexion Deficit?

Flexion Deficit is the joint's normal flexion value minus your Measured Flexion, so as the measured angle climbs closer to the normal value, the gap between them shrinks. A measured flexion equal to or greater than the normal value produces a deficit of exactly zero, since the floor prevents the subtraction from going negative.

Why does the ankle option use dorsiflexion and plantarflexion instead of flexion and extension?

Ankle motion is conventionally described as dorsiflexion (foot moving up toward the shin) and plantarflexion (foot pointing down), rather than flexion and extension, because those are the anatomically accurate terms for the joint's actual movement plane. This calculator reuses the same Measured Flexion and Measured Extension input fields for those two ankle-specific motions to keep one consistent input layout across every joint type.

How do I enter a knee or elbow that can't fully straighten?

Use a negative Measured Extension value. Knee and elbow both have a normal extension of 0° (fully straight), so a positive value represents hyperextension while a negative value represents an extension lag or deficit -- for example, -10 means the joint is short 10° of reaching full extension. Entering 0 always represents a fully normal, unimpaired extension for those two joints.

The questions that sit next to this one — chosen by subject, including calculators filed under a different category.

More in Medical & Clinical.