Piping Toolset
HomeCalculators › B31G Corroded Pipe Remaining Strength Calculator (Level 1)

B31G Corroded Pipe Remaining Strength Calculator (Level 1)

Returns the length parameter z = L²/(Dt), Folias factor M = √(1 + 0.8z), depth ratio d/t, and the safe operating pressure of a blunt metal-loss defect per ASME B31G — the original parabolic (2/3 dL) form or Modified B31G (0.85 dL, flow stress SMYS + 10 ksi) with failure pressure, safe pressure and ERF = MAOP/Psafe. Valid to d/t ≤ 0.8 (original form: z ≤ 20).

Method last updated (calculation changelog) · fixture-verified on every build — most recently 2026-09-03.

Built and fixture-verified by Matthew Norris, P.E. — active P.E. licensure in Arizona, California, Kansas, Missouri, North Carolina, Texas.

Evaluates metal-loss corrosion on a pipeline by the original B31G Level-1 method: the defect's axial length and maximum depth reduce the pressure-carrying capacity through the parabolic (2/3 d/t) area idealization and the Folias bulging factor. PASS means the computed safe pressure still covers the entered design/MAOP basis.

Corroded pipe wall with a metal-loss flaw A longitudinal section of pipe wall with a smooth corrosion depression in the outer surface, dimensioned with flaw length L, maximum depth d and nominal wall t, and internal pressure P acting on the bore side. L — flaw length d — max depth t P (bore side) M — Folias factor from L, D, t → failure stress and safe pressure
Longitudinal section through a corroded wall: the metal-loss flaw of length L and maximum depth d in nominal wall t feeds the Folias bulging factor M — the assessment returns the remaining-strength failure stress and the safe operating pressure.
Open this calculator → Download sample report
This calculator is free forever — no account, no run limit. Pro adds Add to report: the titleblocked, print-ready package in the sample report above, built from your own runs, plus .pcp project files and the batch runner — $2.99 / month. Compare tiers →

Method

z = L² / (D·t)   (valid for z ≤ 20)

M = √(1 + 0.8·z)   (Folias factor)

P′ = 1.1·P · ( 1 − ⅔(d/t) ) / ( 1 − ⅔(d/t)/M )

Defects deeper than 80% of the wall fail Level 1 outright regardless of length; z > 20 leaves the parabolic form (long-defect rule applies) and the card warns.

Inputs
DPipe outside diameterin
tNominal wall thicknessin
LAxial length of corroded areain
dMaximum defect depthin
PDesign pressure / MAOP basispsi
Outputs
zLength parameter
MFolias factor
d/tDepth ratio
P′Safe operating pressurepsi

Limitations — what this calculator is not

Worked example — fixture-verified

NPS 8 Sch 40 pipeline (8.625 × 0.322), corrosion patch 2.886 in long, 0.100 in deep, operating basis 800 psi.

Given
OD × wall8.625 × 0.322in
Defect length L2.886in
Defect depth d0.100in
Pressure basis P800psi

Step by step

  1. Length parameter: z = 2.88648² / (8.625·0.322) = 8.332 / 2.777 = 3.00 (≤ 20 ✓).
  2. Folias: M = √(1 + 0.8·3.00) = √3.4 = 1.844.
  3. Depth ratio: d/t = 0.100/0.322 = 0.311 (≤ 0.8 ✓).
  4. Safe pressure: P′ = 1.1·800·(1−0.2070)/(1−0.2070/1.844) = 880·0.79296/0.88772 = 786.1 psi.
  5. 786.1 < 800 → FAIL — de-rate below 786 psi, repair, or refine with Modified B31G/RSTRENG.
Result FAIL
z — length parameter3.00
M — Folias factor1.844
d/t0.311
Safe pressure P′786.1psi
Verdict vs 800 psiFAIL

A deliberately failing fixture: the verdict logic, not just the arithmetic, is what the release gate locks. Worked example 2 shows the same pipe passing with a smaller defect.

Why you can trust these numbers: this exact case is fixture b31g.json — case “NPS8 sch40, L=2.88648, d=0.1, P=800” (tolerance 0.001) — in the calc-core release gate. It re-runs on every commit; a red fixture blocks deployment. See the validation methodology.

Worked example 2 — shallower, shorter defect passes

The same NPS 8 Sch 40 line (8.625 × 0.322), now with a smaller corrosion patch found on a different joint: 2.0 in long, 0.060 in deep, operating basis 720 psi. Same method, opposite verdict — worth walking through to see which input actually moved the answer.

Given
OD × wall8.625 × 0.322in
Defect length L2.0in
Defect depth d0.060in
Pressure basis P720psi

Step by step

  1. Length parameter: z = 2.0² / (8.625·0.322) = 4.0 / 2.777 = 1.44027 (≤ 20 ✓).
  2. Folias factor: M = √(1 + 0.8·1.44027) = √2.15222 = 1.46704.
  3. Depth ratio: d/t = 0.060/0.322 = 0.18634 (≤ 0.8 ✓).
  4. Safe pressure: P′ = 1.1·720·(1 − ⅔·0.18634)/(1 − ⅔·0.18634/1.46704) = 792·0.87578/0.91532 = 757.781 psi.
  5. 757.781 ≥ 720 → PASS — the line may continue operating at 720 psi with this defect, subject to the monitoring interval your integrity plan assigns.
Result PASS
z — length parameter1.44027
M — Folias factor1.46704
d/t0.18634
Safe pressure P′757.781psi
Verdict vs 720 psiPASS

Against Example 1, depth fell 40% and the safe pressure moved only ~4% — but the verdict flipped because the operating basis dropped too. B31G verdicts live on the ratio of P′ to your basis pressure: reassessing after a de-rate is often the cheapest 'repair' there is, and this pair of cases is the arithmetic behind that judgment.

Fixture case “NPS8 sch40, L=2.0, d=0.06, P=720 -> pass” (tolerance 0.001) — locked in the same release gate as the example above.

Additional verified cases in this fixture

Modified B31G (0.85dL): NPS8 sch40 L=3.0 d=0.1 SMYS=35000 -> z=3.24062, M=sqrt(1+0.6275z-0.003375z^2)=1.73149, Sflow=45000, Sfail=39078.93, Pfail=2917.893, Psafe/1.39=2099.204, default MAOP=2*35000*0.322*0.72/8.625=1881.6, ERF=0.89634 pass PASS
input:  {"D":8.625,"t":0.322,"L":3,"d":0.1,"SMYS":35000,"modified":true}
expect: {"z":3.24062,"M":1.73149,"method":"Modified B31G (0.85 dL)","flowStress":45000,"failStress":39078.93,"failPressure":2917.893,"safeOperatingPressure":2099.204,"erf":0.89634}
tol:    0.001
Original B31G stress-based, same defect: M=1.89539, Sflow=1.1*35000, Sfail=34272.71, Pfail=2559.029, Psafe=1841.028, ERF=1881.6/1841.028=1.02204 -> REPAIR (fail) FAIL
input:  {"D":8.625,"t":0.322,"L":3,"d":0.1,"SMYS":35000}
expect: {"z":3.24062,"M":1.89539,"method":"Original B31G (2/3 dL)","flowStress":38500,"failStress":34272.71,"failPressure":2559.029,"safeOperatingPressure":1841.028,"erf":1.02204}
tol:    0.001

Sources & citations

Per the source & citation policy, allowable-stress and factor table values are user-supplied. Where a page does reproduce specific ASME data (the B16.5 ratings, the quick-reference tables), it states the source table and conditions inline.

FAQ

Should I use original B31G or Modified B31G?

Original B31G is the most conservative screen — if it passes, you are done with Level 1. The card's Method selector also runs Modified B31G (0.85·d·L area term, revised Folias factor, SMYS + 10 ksi flow stress), which typically recovers 5–15% margin; RSTRENG with a measured depth profile recovers more. Failing the original means 'assess further', not necessarily 'repair'. The escalation ladder is worth walking in order rather than jumping: original B31G costs nothing but the inputs you already have; Modified costs the same inputs; RSTRENG costs a river-bottom depth profile from the ILI or a UT grid, which you may already own. Each rung recovers real margin on long defects specifically — short deep pits assess nearly the same all the way up — so let the defect geometry, not habit, decide how far to climb. And record which method dispositioned each defect: an integrity file where some anomalies passed original and some passed RSTRENG is coherent only if it says so.

What does the 1.1 factor on P represent?

B31G frames the acceptance around a flow-stress basis that works out to comparing the defect's failure-pressure estimate against 1.1× the design pressure basis — giving the safe operating pressure P′ directly comparable to MAOP. The practical reading: P′ is directly comparable to the line's MAOP, so the disposition rule is simply P′ ≥ MAOP means the defect is acceptable at current operating pressure under the Level-1 screen. Two cautions on using it. The 1.1 factor presumes the design-factor system of the pipeline codes is intact — a line already operating above its proper design basis invalidates the comparison. And P′ is a static-strength statement only: it says nothing about fatigue growth of the metal loss under pressure cycling, which on liquid lines with aggressive cycle spectra is often the governing question and needs its own assessment.

Related calculators

Open this calculator → All calculators