All tools Print with PE stamp box Designed for sealed engineering submittals — print drops PE stamp + signature block at the end.

Moody Diagram Calculator

Darcy friction factor from Reynolds number and relative roughness, solved three ways — the exact Colebrook equation, Swamee-Jain and Haaland — with your operating point plotted on a live Moody chart.

%
%

Defaults: 8-inch new commercial steel pipe at 6.38 ft/s, water at 60°F — the same case as Example 1 on the Darcy-Weisbach calculator. Need Re or ε/D first? Re = VD/ν; ε/D is absolute roughness divided by inside diameter, in the same units.

Colebrook (1939), solved iteratively to 10⁻¹²:
$$ \frac{1}{\sqrt{f}} = -2\log_{10}\!\left(\frac{\varepsilon/D}{3.7} + \frac{2.51}{Re\sqrt{f}}\right) $$
Swamee-Jain (1976) and Haaland (1983), explicit:
$$ f_{SJ} = \frac{0.25}{\left[\log_{10}\!\left(\frac{\varepsilon/D}{3.7} + \frac{5.74}{Re^{0.9}}\right)\right]^2} \qquad \frac{1}{\sqrt{f_H}} = -1.8\log_{10}\!\left[\left(\frac{\varepsilon/D}{3.7}\right)^{1.11} + \frac{6.9}{Re}\right] $$
Laminar and fully rough limits:
$$ f = \frac{64}{Re} \;\; (Re < 2300) \qquad \frac{1}{\sqrt{f_{rough}}} = 2\log_{10}\!\left(\frac{3.7}{\varepsilon/D}\right) $$
f Darcy friction factor · Re Reynolds number = VD/ν · ε absolute pipe roughness · D inside diameter · ε/D relative roughness (dimensionless).

How to use the Moody diagram

The chart has two independent inputs and one output. Reynolds number tells you how turbulent the flow is; relative roughness tells you how much the pipe wall matters. Everything else about the pipe — material, age, diameter, fluid — is already folded into those two numbers. Once you have f, the Darcy-Weisbach equation turns it into head loss: hf = f·(L/D)·V²/2g.

The same Re can give very different friction factors depending on the pipe. At Re = 10⁶, a smooth plastic pipe sits near f = 0.0117 while a pipe with ε/D = 0.01 sits near 0.038 — more than three times the head loss for identical flow. That spread is why roughness selection, not the friction-factor formula, is usually the largest uncertainty in a pipe-loss calculation. See the absolute roughness reference card for ε by material and age.

The four zones of the chart

Moody diagram flow zones
ZoneReynolds numberWhat controls fUse
Laminar< 2,300Viscosity onlyf = 64/Re
Critical (transitional)2,300 – 4,000Undefined — flow can flipBracket both; avoid in design
Transition turbulent> 4,000Both Re and ε/DColebrook
Fully rough (complete turbulence)High; right of dashed lineε/D onlyvon Kármán rough-pipe

Fully rough friction factor by relative roughness

The flat right-hand asymptote of each curve. Once a pipe is in this zone, doubling the flow does not change f — head loss scales exactly with V².

Complete-turbulence friction factor, 1/√f = 2·log₁₀(3.7/(ε/D))
ε/Df (fully rough)Typical example
0.000010.00806Large-diameter drawn or plastic pipe
0.00010.0120Commercial steel, ~18 in diameter
0.00050.0167Cast iron, ~20 in diameter
0.0010.0196Concrete pipe, ~12 in diameter
0.0050.0304Galvanized iron, ~1¼ in diameter
0.010.0379Heavily tuberculated small main
0.050.0716Upper limit of the chart

Values computed from the von Kármán rough-pipe equation. The "typical example" column is illustrative only; compute ε/D from the actual ε and inside diameter.

Worked examples

Example 1 — 8-inch commercial steel water main

Given: Re = 3.52×10⁵, ε/D = 0.0018 in / 8 in = 2.25×10⁻⁴.
Find: Darcy friction factor, and how much the explicit formulas differ.
Re > 4,000 → turbulent; use Colebrook.
Start from Swamee-Jain: f₀ = 0.25/[log₁₀(2.25×10⁻⁴/3.7 + 5.74/(3.52×10⁵)0.9)]² = 0.01624
Iterate 1/√f = −2 log₁₀(6.08×10⁻⁵ + 2.51/(3.52×10⁵·√f)) until f stops changing
f = 0.01617 (Colebrook) · Swamee-Jain 0.01624 (+0.45%) · Haaland 0.01600 (−1.06%)

Example 2 — Rough pipe at high Reynolds number

Given: Re = 1.0×10⁶, ε/D = 0.001.
Find: f, and whether the pipe is in the fully rough zone.
Colebrook: f = 0.01994
Fully rough limit: 1/√f = 2·log₁₀(3.7/0.001) = 7.136 → f = 0.01964
Colebrook is within 1.6% of the rough limit — the Re term is nearly negligible here.
f = 0.01994 · Swamee-Jain 0.02003 (+0.43%) · Haaland 0.01994 (−0.01%)

Example 3 — Smooth pipe

Given: Re = 50,000, ε/D = 0 (hydraulically smooth).
With ε/D = 0 Colebrook reduces to the Prandtl smooth-pipe law, 1/√f = 2 log₁₀(Re√f) − 0.8.
f = 0.02089 (Colebrook) · Swamee-Jain 0.02076 (−0.63%) · Haaland 0.02071 (−0.85%)

Which friction factor formula should I use?

The differences between the three are smaller than the uncertainty in roughness for almost any real pipe. Pick one method, state it in the calculation, and spend the saved effort on ε.

References: Moody, L.F. (1944). "Friction factors for pipe flow." Trans. ASME 66(8), 671–684. Colebrook, C.F. (1939). "Turbulent flow in pipes." J. Inst. Civil Eng. 11, 133–156. Swamee, P.K., Jain, A.K. (1976). J. Hydraulics Div., ASCE 102(5), 657–664. Haaland, S.E. (1983). J. Fluids Eng. 105(1), 89–90.

Related tools

Monthly engineering case studies

One real stormwater or hydraulics design problem per month, with the math worked out and the gotchas called out. No tutorials, no fluff.

Free. Unsubscribe anytime. Privacy.

Engineer of Record — Stamp & Signature
APPLY PE STAMP HERE
Engineer Name
License No.
State
Signature
Date
Project / Sheet
By stamping and signing, the Engineer of Record certifies that the inputs, formulas, and applicability of this calculation have been reviewed for the specific design context. PE-Calc tools provide computational support only — the engineer is responsible for verifying results, applying engineering judgment, and complying with applicable codes and standards.
Calculation generated at pe-calc.com