# Stair Calculator > Determine the riser height, number of steps, and total run for a stair stringer. Add editable USD material and labor prices and compare low, middle and high budget scenarios. Page: https://askcalculators.com/us/stair/ Definition: https://askcalculators.com/us/stair/definition.json JSON Schema: https://askcalculators.com/us/stair/schema.json Version: 20.13.0 Maintained by: AskCalculators (software project; not a credentialed reviewer) Qualified review: pending. Automated checks do not establish professional approval. Page status: Live Review status: Pending ## Use Open the calculator page and enter values. Query-string parameters can restore and bookmark a calculation. Example: https://askcalculators.com/us/stair/?totalRise=108&targetRise=7&treadDepth=10&unitCost=30&laborCost=500&deliveryCost=30&costSpreadPercent=15 ## Inputs - unitSystem: Dimension units; type=select; optional; default=imperial; values=imperial|metric - totalRise: Total rise (in / cm); type=number; optional; default=108 - targetRise: Target rise (in / cm); type=number; optional; default=7 - treadDepth: Tread going (in / cm); type=number; optional; default=10; min=0 - unitCost: Material price (USD / tread); type=money; optional; default=0; min=0 - laborCost: Total labor allowance (USD); type=money; optional; default=0; min=0 - deliveryCost: Delivery allowance (USD); type=money; optional; default=0; min=0 - costSpreadPercent: Low/high variation around entered subtotal (%); type=percent; optional; default=15; min=0; max=100 ## Outputs - numRisers: Risers; format=number; primary - actualRise: Actual rise (in); format=number - riseCentimetres: Actual rise (cm); format=number - numTreads: Treads; format=number - totalRun: Total run (in); format=number - runMetres: Total run (m); format=number - materialCost: Material cost; format=currency - laborCost: Labor allowance; format=currency - deliveryCost: Delivery allowance; format=currency - unitRate: Entered USD rate / tread; format=currency - estimatedTotal: Entered subtotal; format=currency - costLow: Low budget scenario; format=currency - costMid: Middle budget scenario; format=currency - costHigh: High budget scenario; format=currency - pricingStatus: Pricing status; format=text ## Formula Riser count = rounded total rise ÷ target riser height; actual riser = total rise ÷ riser count; tread/run values follow the selected stair geometry.; material = unrounded purchase quantity × entered unit price; middle = material + labor + delivery; low/high = middle × (1 ∓ variation/100) ## Rules - Empty optional inputs are undefined, not zero. - Hidden conditional inputs are ignored. - Do not invent missing required inputs. Notice: Planning quantities and user-entered USD costs, not a contractor quote, structural design or code approval. Default prices are zero (unpriced); enter your supplier and labor quotes. New changes await independent review.