Mechanical Design & Engineering Workflows

Factor of Safety in Mechanical Design: Theory vs Practice

The factor of safety is a bridge between material physics and real-world uncertainty, not an ignorance factor. This guide covers factor of safety, margin of safety and reliability, von Mises, Tresca and Modified Mohr criteria, fatigue lines, stress-strength interference, FEA singularities and two worked examples with every number computed.

Md Anamul Hasan

Md Anamul Hasan

Mechanical Design Engineer, CSWE & PLM Project Manager

  • November 8, 2026
  • 25 min read
  • 3 reads
  • Updated November 8, 2026
Factor of Safety in Mechanical Design: Theory vs Practice

The Factor of Safety is not an “ignorance factor” or an arbitrary multiplier. It is the bridge between deterministic material physics and operational uncertainty.

In introductory engineering courses, the Factor of Safety (nn) is a single number: divide material yield strength by applied stress, and if the result exceeds 1.01.0 the part will not break. In practice, parts sized with a textbook factor of 2.02.0 still fail in service, while aircraft structures fly safely for decades with a factor of 1.51.5 on limit load.

Why does this disconnect exist? Because failure in real machines is rarely a one-dimensional static overload. Components fail from multi-axial stress states, fatigue cracks that start at stress concentrations, thermal gradients, and statistical scatter in material properties. Sizing a component without knowing whether failure is governed by yielding, fracture, fatigue, buckling or variance turns the Factor of Safety into a gamble.

I work in mechanical design and CAD/PLM engineering automation, with 9+ years of experience across structural integrity, sheet metal and industrial machinery. This guide covers how to tell a design target from an achieved margin, how to pick the failure criterion for ductile and brittle materials, how to read a fatigue envelope on the Haigh diagram, and how to move from a single safety factor to a probability of failure.

Cover: Factor of Safety in Mechanical Design with stress and strength curves that overlap and the equations for n, MS and betaCover: Factor of Safety in Mechanical Design with stress and strength curves that overlap and the equations for n, MS and beta
The Factor of Safety reconciles deterministic yield and fatigue limits with operational uncertainty and statistical scatter.

The one-minute version

Design factor (ndn_d) is the minimum target ratio chosen before sizing begins, set by a code, a customer specification or company policy.

Factor of safety (nn) is the realized ratio of allowable capacity to calculated stress after the geometry is fixed: n=Sallowσcalcn = \frac{S_{\text{allow}}}{\sigma_{\text{calc}}}.

Margin of safety (MSMS) normalizes the achieved factor by the required one: MS=nnreq−1MS = \frac{n}{n_{\text{req}}} - 1. MS=0MS = 0 means the requirement is met exactly.

Stress-strength interference shows that the same nominal factor of 1.501.50 can mean about 11 failure in 3.53.5 million (β=5.00\beta = 5.00) or about 11 in 3232 (β=1.86\beta = 1.86), depending on the scatter of strength and stress. The scatter values are assumptions chosen for the comparison.

The three core static and fatigue formulations:

nvm=Syσvm=Syσx2−σxσy+σy2+3τxy2n_{\text{vm}} = \frac{S_y}{\sigma_{\text{vm}}} = \frac{S_y}{\sqrt{\sigma_x^2 - \sigma_x \sigma_y + \sigma_y^2 + 3\tau_{xy}^2}}
1nf=σaSe+σmSut\frac{1}{n_f} = \frac{\sigma_a}{S_e} + \frac{\sigma_m}{S_{\text{ut}}}
MS=nnreq−1MS = \frac{n}{n_{\text{req}}} - 1

Here SyS_y is yield strength, SutS_{\text{ut}} is ultimate tensile strength, SeS_e is the fully corrected endurance limit, σvm\sigma_{\text{vm}} is the von Mises stress, σa\sigma_a is alternating stress and σm\sigma_m is mean stress. All stresses and strengths are in megapascals (MPa).

Terminology and metric hierarchy

One of the most persistent sources of confusion in engineering teams is the interchangeable use of terms that have distinct definitions.

Metric Definition Engineering phase Meaning
Design factor (ndn_d) nd=target ration_d = \text{target ratio} Before analysis A requirement set by a code, a specification or policy.
Factor of safety (nn) n=Sallowσcalcn = \frac{S_{\text{allow}}}{\sigma_{\text{calc}}} After analysis Capacity realized by the final dimensions and material.
Margin of safety (MSMS) MS=nnreq−1MS = \frac{n}{n_{\text{req}}} - 1 Verification and release Common in aerospace reporting. Normalizes capacity against the requirement.
Reserve factor (RFRF) RF=PallowPappliedRF = \frac{P_{\text{allow}}}{P_{\text{applied}}} Structural analysis Allowable load over applied load. Definitions differ between organizations, so state yours.
Four cards defining design factor, factor of safety, margin of safety and reserve factor, with the margin of safety worked for n_req 1.50Four cards defining design factor, factor of safety, margin of safety and reserve factor, with the margin of safety worked for n_req 1.50
The four margin metrics: pre-analysis target (ndn_d), realized capacity (nn), margin of safety (MSMS) and reserve factor (RFRF).

Interpreting the margin of safety (MSMS)

Reporting n=1.50n = 1.50 alone is incomplete, because it does not say what was required. The margin of safety states it:

  • MS>0MS > 0: the requirement is met with capacity to spare.
  • MS=0MS = 0: the requirement is met exactly. A margin far above zero usually means material that could be removed, but how much margin to hold is a project decision.
  • MS<0MS < 0: the requirement is not met. An MS=−0.15MS = -0.15 is a 15%15\% shortfall against the requirement, even if the nominal factor nn is greater than 1.01.0.

For example, if a flight bracket requires nreq=1.50n_{\text{req}} = 1.50 and stress analysis gives n=1.65n = 1.65:

MS=1.651.50−1=1.10−1=+0.10MS = \frac{1.65}{1.50} - 1 = 1.10 - 1 = +0.10

The bracket passes with a 10%10\% margin over the requirement.

Why a single scalar FoS fails in real machines

Treating the Factor of Safety as one multiplier assumes that stress scales linearly with load and that failure depends on a single stress component. Both assumptions are often false:

  1. Multi-axial stress states: Yielding of ductile metals is driven by distortion (deviatoric) energy, not by hydrostatic pressure. To a good approximation a steel specimen under 10001000 MPa of hydrostatic compression does not yield, whereas the same steel under pure torsion yields at a shear stress of 0.577 Sy0.577\,S_y.
  2. Non-linear geometric effects: In columns, thin plates and slender shells the relation between load and stress is non-linear. A strut loaded to 80%80\% of its Euler critical load has a nominal factor of 10.80=1.25\frac{1}{0.80} = 1.25 against buckling, but imperfections and load eccentricity lower the real critical load, so the true margin is smaller than the nominal ratio.
  3. Contact (Hertzian) stress: In rolling bearings, gears and cam-follower contacts, contact stress grows with the cube root of load for point contact and the square root for line contact. Doubling the load raises contact stress by only 26%26\% to 41%41\%, yet fatigue life falls much faster: the rating life equation of rolling bearings uses a load exponent of 33 for ball bearings and 10/310/3 for roller bearings (ISO 281:2007, Equations 4 and 16), so doubling the load cuts the rating life by a factor of about 88 to 1010.

Static yield and fracture failure envelopes

To calculate a meaningful factor under static loading, the multi-axial stress state is collapsed into an equivalent stress that can be compared with uniaxial test data. The choice of failure theory depends on whether the material yields plastically or fractures in a brittle way.

Plane-stress failure envelopes: von Mises ellipse and Tresca hexagon for ductile metals, Modified Mohr polygon for brittle materialsPlane-stress failure envelopes: von Mises ellipse and Tresca hexagon for ductile metals, Modified Mohr polygon for brittle materials
Plane-stress envelopes: the von Mises ellipse and Tresca hexagon for ductile metals (left), and the Modified Mohr polygon for a brittle material with Suc/Sut=3S_{\text{uc}}/S_{\text{ut}} = 3, an assumed ratio (right).

1. Ductile materials: von Mises vs Tresca

For ductile metals (structural steels, aluminum alloys, copper, titanium), yielding is driven by shear on slip planes.

Distortion energy (von Mises)

The von Mises criterion states that yielding begins when the second invariant of the deviatoric stress tensor (J2J_2) reaches its value at yield in simple tension:

σvm=12[(σ1−σ2)2+(σ2−σ3)2+(σ3−σ1)2]\sigma_{\text{vm}} = \sqrt{\frac{1}{2}\left[(\sigma_1 - \sigma_2)^2 + (\sigma_2 - \sigma_3)^2 + (\sigma_3 - \sigma_1)^2\right]}

In plane stress (σ3=0\sigma_3 = 0) this becomes:

σvm=σx2−σxσy+σy2+3τxy2\sigma_{\text{vm}} = \sqrt{\sigma_x^2 - \sigma_x \sigma_y + \sigma_y^2 + 3\tau_{xy}^2}
nvm=Syσvmn_{\text{vm}} = \frac{S_y}{\sigma_{\text{vm}}}

Maximum shear stress (Tresca)

The Tresca criterion states that yielding occurs when the maximum shear stress equals the shear stress at yield in a uniaxial tensile test:

τmax=σ1−σ32≤Sy2\tau_{\text{max}} = \frac{\sigma_1 - \sigma_3}{2} \le \frac{S_y}{2}
ntresca=Syσ1−σ3n_{\text{tresca}} = \frac{S_y}{\sigma_1 - \sigma_3}

The Tresca hexagon is inscribed in the von Mises ellipse. In pure shear (σ1=−σ2=τ\sigma_1 = -\sigma_2 = \tau), von Mises predicts yield at τ=Sy3≈0.577 Sy\tau = \frac{S_y}{\sqrt{3}} \approx 0.577\,S_y and Tresca at τ=0.500 Sy\tau = 0.500\,S_y. Von Mises therefore allows a shear stress 15.5%15.5\% higher than Tresca, or equivalently Tresca’s allowable is 13.4%13.4\% lower. Codes differ in which criterion they adopt (stress intensity, which is Tresca, or von Mises): follow the one your governing code states.

2. Brittle materials: Modified Mohr

Brittle materials (grey cast iron, hardened tool steels, ceramics) show almost no plastic deformation before fracture, and their compressive strength (SucS_{\text{uc}}) is several times their tensile strength (SutS_{\text{ut}}).

With the principal stresses ordered σA≥σB\sigma_A \ge \sigma_B, the Modified Mohr criterion splits plane-stress space into three regions:

  • When σA≥0\sigma_A \ge 0 and ∣σB∣≤σA|\sigma_B| \le \sigma_A (including both stresses tensile), tensile strength governs:
    n=SutσAn = \frac{S_{\text{ut}}}{\sigma_A}
  • When σA≥0\sigma_A \ge 0 and σB<−σA\sigma_B < -\sigma_A, the tension-compression region applies:
    n=1(Suc−Sut)σASucSut−σBSucn = \frac{1}{\frac{(S_{\text{uc}} - S_{\text{ut}})\sigma_A}{S_{\text{uc}}S_{\text{ut}}} - \frac{\sigma_B}{S_{\text{uc}}}}
  • When σA<0\sigma_A < 0 and σB<0\sigma_B < 0, compressive strength governs:
    n=Suc∣σB∣n = \frac{S_{\text{uc}}}{|\sigma_B|}

Fatigue and fluctuating loads

Fatigue is a leading cause of in-service fracture of cyclically loaded metal parts, and it occurs at stresses well below the static yield strength. Sizing shafts, connecting rods, springs or bolted joints with a static yield factor alone is one of the most dangerous oversights in mechanical design.

Haigh diagram with Goodman, Gerber, Soderberg and first-cycle yield lines, the safe region and the load point of Worked Example 2Haigh diagram with Goodman, Gerber, Soderberg and first-cycle yield lines, the safe region and the load point of Worked Example 2
Haigh diagram for Worked Example 2: alternating against mean stress, with the four limit lines, the safe region and the load point.

Resolving cyclic stress components

Any fluctuating stress history can be split into an alternating amplitude (σa\sigma_a) and a steady mean (σm\sigma_m):

σa=σmax−σmin2\sigma_a = \frac{\sigma_{\text{max}} - \sigma_{\text{min}}}{2}
σm=σmax+σmin2\sigma_m = \frac{\sigma_{\text{max}} + \sigma_{\text{min}}}{2}

The Marin endurance limit modifiers

The endurance limit of a rotating-beam test specimen (Se′≈0.50 SutS_e' \approx 0.50\,S_{\text{ut}} for steels with Sut≤1400S_{\text{ut}} \le 1400 MPa) is reduced for real surfaces, sizes, loading and reliability with the Marin factors:

Se=ka⋅kb⋅kc⋅kd⋅ke⋅Se′S_e = k_a \cdot k_b \cdot k_c \cdot k_d \cdot k_e \cdot S_e'
Marin factor Physical driver How it is obtained
Surface condition (kak_a) Surface finish (ground, machined, hot-rolled, as-forged) Power-law fit a Sut ba\,S_{\text{ut}}^{\,b} with coefficients for each finish
Size (kbk_b) Diameter and the volume of highly stressed material Fit as a function of diameter; 1.001.00 for axial loading
Load (kck_c) Bending, axial or torsional loading 1.001.00 bending, 0.850.85 axial, 0.590.59 torsion
Temperature (kdk_d) Strength at operating temperature Ratio of tensile strength at temperature to room temperature
Reliability (kek_e) Target survival probability ke=1−0.08 zak_e = 1 - 0.08\,z_a, with zaz_a the standard normal deviate (for example 0.8140.814 at 99%99\%)

These are textbook relationships (Shigley’s Mechanical Engineering Design) and were not checked against a standard.

Fatigue notch factor (KfK_f)

Holes, keyways and snap-ring grooves create a theoretical stress concentration (KtK_t). In fatigue the material responds with a notch sensitivity (qq):

Kf=1+q(Kt−1)K_f = 1 + q(K_t - 1)
σa=Kf⋅σa,nom\sigma_a = K_f \cdot \sigma_{a,\text{nom}}
σm=Kf⋅σm,nom\sigma_m = K_f \cdot \sigma_{m,\text{nom}}

Governing fatigue failure criteria

On the Haigh diagram (σm\sigma_m horizontal, σa\sigma_a vertical) the safe boundary is defined by empirical relationships:

  1. Modified Goodman (common practice):
    σaSe+σmSut=1nf  ⟹  nf=1σaSe+σmSut\frac{\sigma_a}{S_e} + \frac{\sigma_m}{S_{\text{ut}}} = \frac{1}{n_f} \implies n_f = \frac{1}{\frac{\sigma_a}{S_e} + \frac{\sigma_m}{S_{\text{ut}}}}
  2. Gerber parabola (a better fit to ductile steel data):
    nfσaSe+(nfσmSut)2=1\frac{n_f \sigma_a}{S_e} + \left(\frac{n_f \sigma_m}{S_{\text{ut}}}\right)^2 = 1
  3. Soderberg line (conservative, yield-based):
    σaSe+σmSy=1ns\frac{\sigma_a}{S_e} + \frac{\sigma_m}{S_y} = \frac{1}{n_s}

The first-cycle yield check: Even if Modified Goodman predicts nf>1.0n_f > 1.0, the first load cycle can yield the part if the peak stress exceeds yield. An independent static check is required:

σpeak=σa+σm\sigma_{\text{peak}} = \sigma_a + \sigma_m
nyield=Syσpeak≥1.00n_{\text{yield}} = \frac{S_y}{\sigma_{\text{peak}}} \ge 1.00

Stress-strength interference: probabilistic reliability

A deterministic factor assumes that strength and load are fixed numbers. In reality every material lot has a distribution of strengths, and every operating environment produces a spectrum of load peaks.

Stress-strength interference replaces single numbers with probability density functions:

  • Strength: S∼N(μS,σS2)S \sim \mathcal{N}(\mu_S, \sigma_S^2)
  • Working stress: σ∼N(μσ,σσ2)\sigma \sim \mathcal{N}(\mu_\sigma, \sigma_\sigma^2)
Stress-strength interference for a controlled alloy and a casting with the same factor 1.50 but reliability indices 5.00 and 1.86Stress-strength interference for a controlled alloy and a casting with the same factor 1.50 but reliability indices 5.00 and 1.86
Two designs with the same nominal factor (n=1.50n = 1.50) and very different failure probabilities. The standard deviations are assumed inputs.

The reliability index (β\beta)

Define the safety margin Z=S−σZ = S - \sigma. For independent normal SS and σ\sigma, ZZ is also normal:

μZ=μS−μσ\mu_Z = \mu_S - \mu_\sigma
σZ=σS2+σσ2\sigma_Z = \sqrt{\sigma_S^2 + \sigma_\sigma^2}

The reliability index β\beta is the number of standard deviations between the mean margin and the failure threshold (Z=0Z = 0):

β=μZσZ=μS−μσσS2+σσ2\beta = \frac{\mu_Z}{\sigma_Z} = \frac{\mu_S - \mu_\sigma}{\sqrt{\sigma_S^2 + \sigma_\sigma^2}}

The probability of failure (PfP_f) is the area of the interference tail:

Pf=Φ(−β)=12erfc(β2)P_f = \Phi(-\beta) = \frac{1}{2}\text{erfc}\left(\frac{\beta}{\sqrt{2}}\right)
Reliability R=1−Pf=Φ(β)\text{Reliability } R = 1 - P_f = \Phi(\beta)

The 1.50 FoS paradox: controlled alloy vs commercial casting

Take two designs with the same nominal factor nnom=μSμσ=600400=1.500n_{\text{nom}} = \frac{\mu_S}{\mu_\sigma} = \frac{600}{400} = 1.500. The means and standard deviations below are assumed for the comparison:

Parameter Scenario A: controlled alloy Scenario B: commercial casting
Mean strength (μS\mu_S) 600.0600.0 MPa 600.0600.0 MPa
Strength std dev (σS\sigma_S) 24.024.0 MPa (CoV=4%\text{CoV} = 4\%) 72.072.0 MPa (CoV=12%\text{CoV} = 12\%)
Mean stress (μσ\mu_\sigma) 400.0400.0 MPa 400.0400.0 MPa
Stress std dev (σσ\sigma_\sigma) 32.032.0 MPa (CoV=8%\text{CoV} = 8\%) 80.080.0 MPa (CoV=20%\text{CoV} = 20\%)
Nominal factor (nnomn_{\text{nom}}) 1.5001.500 1.5001.500
Combined std dev (σZ\sigma_Z) 40.040.0 MPa 107.6107.6 MPa
Reliability index (β\beta) 5.005.00 1.861.86
Probability of failure (PfP_f) 2.87×10−72.87 \times 10^{-7} (about 11 in 3.53.5 million) 3.16×10−23.16 \times 10^{-2} (about 11 in 3232)

The comparison shows why a factor alone says little. Under Scenario A, tight material control and well-known loads give a survival probability of 99.99997%99.99997\%. Under Scenario B, scatter in casting strength and uncertain loads put more than 33 in 100100 parts at risk, despite the same 1.501.50 on paper.

Pugsley’s rational method

When test data is incomplete, Sir Alfred Pugsley’s rational method gives a structured way to choose the design factor: split it into a part for uncertainty and a part for consequence, then multiply them:

nd=nx⋅nyn_d = n_x \cdot n_y
Schematic of Pugsley's method: design factor as the product of an uncertainty factor and a consequence factor, with an assumed exampleSchematic of Pugsley's method: design factor as the product of an uncertainty factor and a consequence factor, with an assumed example
Schematic: the design factor ndn_d as the product of an uncertainty factor nxn_x and a consequence factor nyn_y. The numbers in the example are assumptions.

Factor nxn_x: uncertainty

nxn_x grows with how little is known about strength and load. It collects the scatter of material properties, the quality of manufacture and inspection, the accuracy of load prediction and measurement, the accuracy of the analysis method, and the environment and ageing.

Factor nyn_y: consequence

nyn_y grows with what a failure costs. It collects danger to people, the cost of the failure and of downtime, loss of the mission or product, damage to reputation and liability, and the difficulty of inspecting or replacing the part.

Pugsley published graded tables for these characteristics. They are not reproduced here because the source is not in the standards library used for this article. As an illustration only, assuming nx=1.30n_x = 1.30 and ny=1.20n_y = 1.20 gives nd=1.30×1.20=1.56n_d = 1.30 \times 1.20 = 1.56. The method makes the reasoning explicit and reviewable, which a bare “use 2.02.0” does not.

Industry codes and standards comparison

Design codes reflect decades of failure experience, balancing safety against cost and weight.

Table of ASME pressure vessel, AISC 360-16, FAR Part 25 and ASME B30 safety factor bases with the verification status of each codeTable of ASME pressure vessel, AISC 360-16, FAR Part 25 and ASME B30 safety factor bases with the verification status of each code
How pressure vessel, structural steel, aircraft and lifting codes set their factors, with what was checked and what was not.

This article is not endorsed by or affiliated with ASME, AISC, ISO or the FAA. Values are paraphrased or computed for explanation, no tables or figures of the standards are reproduced, and the published standard governs.

Checked against the code text: ASME BPVC VIII-1 and VIII-2 (2023 edition) and AISC 360-16 (read from the PDFs), and FAR 25.303 and 25.305 (eCFR). Not checked: ASME B30, and the Sut/3.5S_{\text{ut}}/3.5 and Sut/2.4S_{\text{ut}}/2.4 allowable-stress bases, which are set in ASME Section II, Part D and were taken from secondary sources. Use the edition and clauses that govern your project.

Code Application Factor basis Validation
ASME BPVC Section VIII Div 1 Unfired pressure vessels, design by rule Allowable stress SS comes from Section II, Part D. Its basis is the lesser of Sut/3.5S_{\text{ut}}/3.5 and 23Sy\frac{2}{3}S_y (secondary sources) Hydrostatic test at 1.3×MAWP×LSR1.3 \times \text{MAWP} \times \text{LSR}, where LSR is the lowest stress ratio of the pressure-boundary materials (UG-99)
ASME BPVC Section VIII Div 2 Pressure vessels, design by analysis Elastic-plastic load factor β=3.0\beta = 3.0 (Class 1) or 2.42.4 (Class 2); allowable stress from Section II, Part D (Table 2A for Class 1, Table 5A for Class 2) Table 4.1.3 sets the load and test factors
AISC 360-16 Steel buildings and structures Tension members (D2): ASD Ω=1.67\Omega = 1.67 (yielding), 2.002.00 (rupture). LRFD ϕ=0.90\phi = 0.90 (yielding), 0.750.75 (rupture) Required strength comes from the governing load standard; AISC 360 uses 1.2D+1.6L1.2D + 1.6L for load-test rating
FAR Part 25 Transport category aircraft Factor of safety 1.51.5 applied to the prescribed limit load (25.303) No detrimental permanent deformation at limit load; ultimate load held for at least 33 seconds (25.305)
ASME B30 series Cranes, hoists and rigging Design factor set per equipment type and rope in each volume (not checked) Proof load test and inspection intervals per the volume (not checked)

The FEA stress singularity trap

Finite element programs solve linear elasticity, where a perfectly sharp internal corner has a radius of zero (r=0r = 0). In that model the stress at the corner is theoretically infinite (σ→∞\sigma \to \infty), so the number the program reports there depends on the mesh, not on the part.

Peak stress against mesh refinement: unbounded growth at a sharp internal corner, convergence at a fillet, with corner sketchesPeak stress against mesh refinement: unbounded growth at a sharp internal corner, convergence at a fillet, with corner sketches
Peak stress against mesh refinement: unbounded growth at a sharp internal corner and convergence at a filleted corner.

Recognizing a singularity vs a true stress concentration

When you refine the mesh:

  • At a true notch modeled with its real radius (r>0r > 0), the peak stress converges to a fixed value (Kt⋅σnomK_t \cdot \sigma_{\text{nom}}).
  • At a singularity (a sharp internal corner, a point load or a rigid constraint) the peak stress keeps climbing. For a 270∘270^\circ internal corner the stress varies as r−0.4555r^{-0.4555}, so every halving of the element size multiplies the peak by 20.4555=1.372^{0.4555} = 1.37: for example 250→343→470→645250 \to 343 \to 470 \to 645 MPa over three refinements. The exponent is computed from Williams’ eigenvalue equation in the calculation module described below.

Engineering rules for FEA safety factors

  1. Model the radius that the tool or process actually produces: Do not leave internal corners in high-stress zones at zero radius.
  2. Stress linearization: On a section that carries primary load, define a stress classification line across the thickness and split the stress into membrane (PmP_m), bending (PbP_b) and peak (FF) parts. Compare membrane and membrane-plus-bending stress with the code allowables. For example, in ASME Section VIII Division 2 the elastic limits are Pm≤SP_m \le S and Pm+Pb≤1.5 SP_m + P_b \le 1.5\,S, with SS the allowable stress (not checked against the code text):
    nm=SPm≥1.00n_m = \frac{S}{P_m} \ge 1.00
    nm+b=1.5 SPm+Pb≥1.00n_{m+b} = \frac{1.5\,S}{P_m + P_b} \ge 1.00
  3. Neuber’s rule for local plasticity: In a ductile material, a peak above yield does not mean failure; the surface layer yields locally and sheds load to the surrounding elastic material. Neuber’s rule (σ⋅ϵ=Kt2⋅σnom⋅ϵnom\sigma \cdot \epsilon = K_t^2 \cdot \sigma_{\text{nom}} \cdot \epsilon_{\text{nom}}, with σnom\sigma_{\text{nom}} and ϵnom\epsilon_{\text{nom}} the elastic nominal values) estimates the local stress and strain.

Worked Example 1: Transmission shaft under combined bending and torsion

A solid shaft of cold-drawn AISI 1045 steel with diameter d=35.0d = 35.0 mm carries a steady bending moment and torque:

  • Bending moment: M=320 N⋅m=320,000 N⋅mmM = 320\text{ N}\cdot\text{m} = 320{,}000\text{ N}\cdot\text{mm}
  • Torque: T=450 N⋅m=450,000 N⋅mmT = 450\text{ N}\cdot\text{m} = 450{,}000\text{ N}\cdot\text{mm}
  • Yield strength: Sy=450.0S_y = 450.0 MPa, ultimate strength: Sut=600.0S_{\text{ut}} = 600.0 MPa
  • Required factor: nreq=2.0n_{\text{req}} = 2.0 (assumed)
Shaft sketch, Mohr circle and von Mises and Tresca safety factors 3.756 and 3.430 for a 35 mm shaft under bending and torsionShaft sketch, Mohr circle and von Mises and Tresca safety factors 3.756 and 3.430 for a 35 mm shaft under bending and torsion
Worked Example 1: the outer-fibre stress state on a Mohr circle, with the von Mises and Tresca factors for the AISI 1045 shaft.

Step 1: Outer-fibre stresses

Bending stress at the outer surface:

σx=32Mπd3=32⋅320,000π⋅353=10,240,000134,695.68=76.02 MPa\sigma_x = \frac{32 M}{\pi d^3} = \frac{32 \cdot 320{,}000}{\pi \cdot 35^3} = \frac{10{,}240{,}000}{134{,}695.68} = 76.02\text{ MPa}

Torsional shear stress at the outer surface:

τxy=16Tπd3=16⋅450,000π⋅353=7,200,000134,695.68=53.45 MPa\tau_{xy} = \frac{16 T}{\pi d^3} = \frac{16 \cdot 450{,}000}{\pi \cdot 35^3} = \frac{7{,}200{,}000}{134{,}695.68} = 53.45\text{ MPa}

Step 2: Von Mises factor of safety

σvm=σx2+3τxy2=(76.02)2+3(53.45)2=5,779.04+8,570.77=14,349.81=119.80 MPa\sigma_{\text{vm}} = \sqrt{\sigma_x^2 + 3\tau_{xy}^2} = \sqrt{(76.02)^2 + 3(53.45)^2} = \sqrt{5{,}779.04 + 8{,}570.77} = \sqrt{14{,}349.81} = 119.80\text{ MPa}
nvm=Syσvm=450.0119.80=3.756n_{\text{vm}} = \frac{S_y}{\sigma_{\text{vm}}} = \frac{450.0}{119.80} = 3.756
MSvm=3.7562.0−1=+0.878MS_{\text{vm}} = \frac{3.756}{2.0} - 1 = +0.878

Step 3: Tresca (maximum shear) factor of safety

Principal stresses at the outer fibre:

σ1,3=σx2±(σx2)2+τxy2=76.022±(38.01)2+(53.45)2=38.01±65.59\sigma_{1,3} = \frac{\sigma_x}{2} \pm \sqrt{\left(\frac{\sigma_x}{2}\right)^2 + \tau_{xy}^2} = \frac{76.02}{2} \pm \sqrt{(38.01)^2 + (53.45)^2} = 38.01 \pm 65.59
σ1=103.60 MPa,σ2=0.00 MPa,σ3=−27.58 MPa\sigma_1 = 103.60\text{ MPa}, \quad \sigma_2 = 0.00\text{ MPa}, \quad \sigma_3 = -27.58\text{ MPa}
τmax=σ1−σ32=103.60−(−27.58)2=65.59 MPa\tau_{\text{max}} = \frac{\sigma_1 - \sigma_3}{2} = \frac{103.60 - (-27.58)}{2} = 65.59\text{ MPa}
ntresca=Sy/2τmax=225.065.59=3.430n_{\text{tresca}} = \frac{S_y / 2}{\tau_{\text{max}}} = \frac{225.0}{65.59} = 3.430
MStresca=3.4302.0−1=+0.715MS_{\text{tresca}} = \frac{3.430}{2.0} - 1 = +0.715

Tresca gives a factor 8.7%8.7\% lower than von Mises (3.4303.430 vs 3.7563.756). Both clear the assumed requirement nreq=2.0n_{\text{req}} = 2.0 comfortably.

Worked Example 2: Notched arm under fatigue

A steel machine arm with a fillet notch carries fluctuating bending. The inputs are assumed for the example:

  • Nominal alternating stress: σa,nom=95.0\sigma_{a,\text{nom}} = 95.0 MPa
  • Nominal mean stress: σm,nom=75.0\sigma_{m,\text{nom}} = 75.0 MPa
  • Notch: Kt=1.85K_t = 1.85, notch sensitivity q=0.76q = 0.76
  • Fully corrected endurance limit: Se=240.0S_e = 240.0 MPa
  • Yield strength: Sy=420.0S_y = 420.0 MPa, ultimate strength: Sut=580.0S_{\text{ut}} = 580.0 MPa
  • Required factor: nreq=1.00n_{\text{req}} = 1.00 (assumed)
Notched arm fatigue example: notch factor, Modified Goodman 1.154, first-cycle yield 1.497 and bars of strength usedNotched arm fatigue example: notch factor, Modified Goodman 1.154, first-cycle yield 1.497 and bars of strength used
Worked Example 2: notch factor, Modified Goodman and the first-cycle yield check, with the share of strength used by each.

Step 1: Effective notch stresses

Kf=1+q(Kt−1)=1+0.76(1.85−1)=1.646≈1.65K_f = 1 + q(K_t - 1) = 1 + 0.76(1.85 - 1) = 1.646 \approx 1.65
σa=Kf⋅σa,nom=1.65⋅95.0=156.75 MPa\sigma_a = K_f \cdot \sigma_{a,\text{nom}} = 1.65 \cdot 95.0 = 156.75\text{ MPa}
σm=Kf⋅σm,nom=1.65⋅75.0=123.75 MPa\sigma_m = K_f \cdot \sigma_{m,\text{nom}} = 1.65 \cdot 75.0 = 123.75\text{ MPa}

Step 2: Modified Goodman factor

σaSe+σmSut=156.75240.0+123.75580.0=0.6531+0.2134=0.8665\frac{\sigma_a}{S_e} + \frac{\sigma_m}{S_{\text{ut}}} = \frac{156.75}{240.0} + \frac{123.75}{580.0} = 0.6531 + 0.2134 = 0.8665
nf=1.00.8665=1.154n_f = \frac{1.0}{0.8665} = 1.154
MSf=1.1541.00−1=+0.154MS_f = \frac{1.154}{1.00} - 1 = +0.154

For comparison, Gerber gives nf=1.395n_f = 1.395 and Soderberg ns=1.055n_s = 1.055 for the same stresses.

Step 3: First-cycle yield check

σpeak=σa+σm=156.75+123.75=280.50 MPa\sigma_{\text{peak}} = \sigma_a + \sigma_m = 156.75 + 123.75 = 280.50\text{ MPa}
nyield=Syσpeak=420.0280.50=1.497n_{\text{yield}} = \frac{S_y}{\sigma_{\text{peak}}} = \frac{420.0}{280.50} = 1.497
MSyield=1.4971.00−1=+0.497MS_{\text{yield}} = \frac{1.497}{1.00} - 1 = +0.497

The governing factor is n=1.154n = 1.154: fatigue, not static yield, limits this arm. With MS=+0.154>0MS = +0.154 > 0 against the assumed requirement, the arm is predicted to survive indefinitely at this load, provided the steel has a fatigue endurance limit and SeS_e is realistic for the surface and size.

How the numbers in this article were calculated

Every worked number, curve and plotted point comes from one short Python module kept with the source files of this article. It holds the failure criteria, the fatigue limit lines, the margin of safety, the stress-strength interference and the corner singularity exponent, and it checks the worked examples against the numbers printed here. The figures are generated from the same module, so the text and the pictures cannot drift apart.

Flow of inputs through the fos_calc.py functions to the safety factor and reliability results of the three worked examplesFlow of inputs through the fos_calc.py functions to the safety factor and reliability results of the three worked examples
The calculation module: three groups of inputs, the functions that process them and the results quoted in the worked examples.

The safety factor pipeline

To keep safety factor errors from reaching production drawings, careful design teams work through five stages in order.

Five-stage safety factor pipeline from load characterisation to the margin release gate, with what goes wrong if a stage is skippedFive-stage safety factor pipeline from load characterisation to the margin release gate, with what goes wrong if a stage is skipped
The five-stage pipeline from load characterization to the margin release gate.
  1. Operating load and duty cycle: Measure or model peak loads, cyclic frequency, impact factors, thermal expansion and environmental exposure.
  2. Failure mode mapping: List every physical failure mechanism: yielding, fatigue, brittle fracture, buckling, contact fretting or creep. Never apply a static yield criterion to a fatigue-dominated load path.
  3. Code and design factor baseline: Determine whether an ASME, AISC, FAA or ISO requirement governs. For machinery with no governing code, use a structured method such as Pugsley’s to set a defensible ndn_d.
  4. Numerical verification: Run finite element analysis with mesh convergence checks. Identify singularities, linearize stresses across critical sections and confirm the nominal stresses.
  5. Margin release gate (MS≥0MS \ge 0): Confirm that the margin of safety is non-negative for every governing failure mode before signing off manufacturing drawings.

Common mistakes to avoid

  1. Using the safety factor as an “ignorance factor”: Multiplying an uncertain load by 3.03.0 does not protect against fatigue if the cyclic mean stress already exceeds the endurance limit. Quantify uncertainties separately.
  2. Confusing the design factor with the achieved factor: “The design factor is 2.02.0” describes the requirement, not what the manufactured part achieves. Report the achieved margin of safety.
  3. Reading an FEA singularity as material failure: Rejecting a sound casting because an unradiused interior corner shows a red peak stress wastes engineering time. Model the real radius or linearize the stresses.
  4. Ignoring the cyclic mean stress: Checking only the alternating stress against the endurance limit misses the effect of a tensile mean stress.
  5. Treating all 1.501.50 factors as equally reliable: With the assumed scatter of this article, a factor of 1.501.50 gives about 11 failure in 3.53.5 million for a controlled alloy and about 11 in 3232 for a casting with large scatter.

Quick engineering checklist

Before signing off a detail drawing or a structural analysis report, verify the following:

  • Has every governing failure mode (yielding, fatigue, buckling, contact pressure) been checked independently?
  • Is the failure criterion matched to material ductility (von Mises or Tresca for ductile, Modified Mohr for brittle)?
  • Have internal corners in high-stress zones been modeled with the radius the process actually produces?
  • Have FEA stresses been checked for mesh convergence (diverging singular peaks vs converged values)?
  • For fluctuating loads, have the Marin surface, size and reliability factors been applied to the endurance limit?
  • Has the first-cycle yield check (nyield=Syσa+σm≥1.0n_{\text{yield}} = \frac{S_y}{\sigma_a + \sigma_m} \ge 1.0) been done on every fatigue check?
  • Has the margin of safety (MS=nnreq−1MS = \frac{n}{n_{\text{req}}} - 1) been computed and confirmed ≥0\ge 0?
  • Does the design satisfy the applicable codes and standards, read from the governing edition?
  • Have material scatter and load uncertainty been reviewed with Pugsley’s method or stress-strength interference?
  • Are inspection, non-destructive testing and maintenance intervals stated on the drawings?

Frequently Asked Questions

What is the exact difference between Factor of Safety and Margin of Safety?

The Factor of Safety (nn) is the ratio of allowable capacity to working stress (n=Sallowσn = \frac{S_{\text{allow}}}{\sigma}). The Margin of Safety (MSMS) is the fraction of capacity above the required factor (MS=nnreq−1MS = \frac{n}{n_{\text{req}}} - 1). If a code requires nreq=1.50n_{\text{req}} = 1.50 and the part achieves n=1.80n = 1.80, the factor is 1.801.80 and the margin of safety is +0.20+0.20 (20%20\% above the requirement).

When should I use Tresca instead of von Mises?

Use von Mises for ductile metals (steels, aluminum, copper) when you want the best match to multi-axial test data. Use Tresca when the governing code requires it, or as a conservative hand check: it predicts yield at a lower shear stress (0.500 Sy0.500\,S_y against 0.577 Sy0.577\,S_y in pure shear).

Why do aircraft structures use low safety factors?

Weight is critical, so a factor of 3.03.0 or 4.04.0 would leave little payload. For transport aircraft the factor is 1.51.5 on limit load. The reliability comes from other controls: extensive non-destructive testing, certified material traceability, measured flight loads, test programs and scheduled inspection.

How do I handle sharp re-entrant corners in FEA that show a very low safety factor?

A sharp internal corner (r=0r = 0) is a mathematical singularity: the stress tends to infinity whatever the material strength. Model the real manufacturing radius, read nominal stresses a few element sizes away from the corner, or linearize stresses across the section.

What is the difference between limit load and ultimate load?

Limit load is the maximum load expected in service; the structure must carry it without detrimental permanent deformation (n≥1.0n \ge 1.0 on yield). Ultimate load is the limit load multiplied by the factor of safety (1.51.5 for transport aircraft); the structure must carry it for at least 33 seconds without failure, even if some local yielding occurs.

Does a Factor of Safety of 2.0 mean a part can carry twice the load?

Only when stress is directly proportional to load. In buckling-sensitive columns, thin shells and contact pairs (gears, bearings), doubling the load raises stresses or the failure probability non-linearly.

How do I calculate the Margin of Safety under combined loading?

For combined axial tension, bending and torsion, form stress ratios Ri=σiσallow,iR_i = \frac{\sigma_i}{\sigma_{\text{allow},i}}. For a linear interaction, MS=1∑Ri−1MS = \frac{1}{\sum R_i} - 1. For a quadratic interaction of two ratios, MS=1Rb2+Rt2−1MS = \frac{1}{\sqrt{R_b^2 + R_t^2}} - 1. The correct interaction equation depends on the failure mode and the governing method, so confirm it for your case.

What is the relationship between the Factor of Safety and the reliability index β\beta?

The nominal factor is the ratio of mean strength to mean stress (nnom=μSμσn_{\text{nom}} = \frac{\mu_S}{\mu_\sigma}). The reliability index also contains the standard deviations: β=μS−μσσS2+σσ2\beta = \frac{\mu_S - \mu_\sigma}{\sqrt{\sigma_S^2 + \sigma_\sigma^2}}. With no scatter, any nnom>1.0n_{\text{nom}} > 1.0 would mean certain survival; with large scatter, a design with nnom=1.50n_{\text{nom}} = 1.50 can still fail often when β\beta is low (β=1.86\beta = 1.86 gives about 3%3\% failures).

Verdict and call to action

A high Factor of Safety is not a substitute for engineering. It cannot compensate for the wrong failure theory, a neglected mean stress, an FEA singularity read as a real peak, or unexamined scatter in material and load.

Treat the Factor of Safety as what it is: a calibrated tool that links deterministic models to operating reality. Set the design factor (ndn_d) from a code or a structured method, check multi-axial stresses against the right yield and fatigue envelopes, separate numerical singularities from real concentrations, and release the design only when MS≥0MS \ge 0 for every governing failure mode.


Md Anamul Hasan is a mechanical engineer and CAD/PLM systems specialist with 9+ years of experience in structural integrity, mechanical design automation and digital engineering governance.

Factor of SafetyMechanical DesignFailure TheoriesFatigue AnalysisStress-Strength InterferenceFEAMargin of SafetyDesign Codes
Md Anamul Hasan

Written by Md Anamul Hasan

Mechanical Design Engineer, CSWE & PLM Project Manager

Specializing in mechanical design automation, CAD API scripting (SolidWorks, NX Open), and Teamcenter PLM workflow engineering.

Share this publication

Did you find this article valuable?

Share it with fellow mechanical engineers, CAD specialists, and developers.

Technical Publications

Engineering Notes & Releases

Practical CAD automation guides, PLM architecture patterns, and free engineering reference charts delivered quarterly.