Army WHtR Formula: Exact Rounding, Truncation and Worked Examples
On this page
Army WHtR is average recorded waist divided by recorded height. The formula is simple, but the recording sequence is not: waist rounds down to 0.5 inch, height rounds to the nearest 0.5 inch, three waist readings are averaged, and the final ratio is truncated to three decimals.
Formula and algorithm
Let:
H= height recorded to the nearest 0.5 inch.W1,W2,W3= raw waist readings in inches.R(W)= each waist reading rounded down to 0.5 inch.
For a positive waist reading:
R(W) = floor(W × 2) ÷ 2
Then:
Average waist = (R(W1) + R(W2) + R(W3)) ÷ 3
Raw WHtR = Average waist ÷ H
To reproduce the form's no-rounding instruction for a positive ratio:
Recorded WHtR = floor(Raw WHtR × 1000) ÷ 1000
Decision:
Recorded WHtR < 0.550→ meets the standard.Recorded WHtR ≥ 0.550→ does not meet the standard.
Do not compare a rounded raw ratio with the cutoff. Do not round the three input waists to the nearest half inch. Each transformation has a different rule.
Example 1: clearly meets the standard
Input: height 72.0 inches; waists 38.94, 39.02, 39.31 inches.
- Record waists: 38.5, 39.0, 39.0.
- Average:
(38.5 + 39.0 + 39.0) ÷ 3 = 38.833inches. - Raw ratio:
38.833 ÷ 72 = 0.539347…. - Recorded ratio:
0.539. - Result: meets the standard.
Example 2: DA Form 5500 boundary behavior
The form gives a raw calculation of 0.549888. Normal rounding to three decimals would produce 0.550, but the form instructs users to disregard later digits. The official recorded value is therefore 0.549, which meets the standard.
This is the single most important boundary case for testing the calculator.
Example 3: equality does not pass
Input: recorded height 70.0 inches; average recorded waist 38.5 inches.
38.5 ÷ 70.0 = 0.550
The result does not meet the standard because the requirement is below 0.550, not at or below it.
Example 4: an average from mixed half-inch readings
Input: height 70.0 inches; raw waists 38.49, 38.62, 38.50 inches.
| Operation | Value |
|---|---|
| Recorded waist readings | 38.0, 38.5, 38.5 |
| Average recorded waist | 38.333 |
| Raw ratio | 0.547614… |
| Recorded ratio | 0.547 |
| Status | Meets the standard |
This example proves why a calculator must retain the three-reading average rather than replacing it with one waist field.
Example 5: noncompliant after truncation
Input: height 72.0 inches; raw waists 39.90, 39.70, 40.00 inches.
- Record waists: 39.5, 39.5, 40.0.
- Average: 39.667 inches.
- Raw ratio: approximately 0.55093.
- Recorded ratio: 0.550.
- Result: does not meet the standard.
An initial result like this leads to a confirmation measurement by another team; it should not trigger a website message that claims final official failure.
Example 6: detect an outlier before averaging
Input: 36.0, 36.0, and 37.5 recorded inches.
The third reading differs from the first two by more than 1 inch. The official guidance calls for an additional measurement and the three readings with the least difference. The calculator should display “Additional reading required” and avoid deciding compliance until that value is provided.
Calculator implementation pseudocode
recordedHeight = roundToNearestHalf(rawHeight)
recordedWaists = rawWaists.map(roundDownToHalf)
if measurementSpreadTriggersAdditionalReading:
requestFourthReading()
recordedWaists = selectThreeWithLeastDifference(allRecordedWaists)
averageWaist = average(recordedWaists) displayed to 3 decimals
rawRatio = averageWaist / recordedHeight
recordedRatio = truncate(rawRatio, 3)
status = recordedRatio < 0.550 ? "meets" : "does not meet"
The engineering implementation should avoid binary floating-point surprises at exact boundaries. Use decimal arithmetic or integer half-inch units where practical, and test display strings separately from comparison values.
Required QA cases
| Case | Expected behavior |
|---|---|
| Raw ratio 0.549888 | Record 0.549; meets |
| Raw ratio 0.550000 | Record 0.550; does not meet |
| Waist 38.49 | Record 38.0 |
| Waist 38.50 | Record 38.5 |
| Height 69.74 | Record 69.5 under nearest-half handling |
| Height 69.75 | Record 70.0 under half-up tie handling; document the implementation rule |
| Three waists 38.0, 38.5, 38.5 | Average 38.333 |
| One reading more than 1 inch from other two | Request an additional reading |
| Zero or negative input | Reject with a clear validation message |
| Mixed units | Convert consistently before the official inch-recording rules |
| Height outside official chart range | Calculate only with an “outside published table range” note; do not invent a chart value |
Why raw `height × 0.55` is not enough
Multiplying height by 0.55 identifies the failing boundary. It does not account for the strict inequality, half-inch waist recording, or three-reading average. At 70 inches, the raw boundary is 38.5 inches, but 38.5 divided by 70 equals 0.550 and fails. The official table's maximum recorded waist is 38.0 inches.
Use the Army Maximum Waist by Height Chart for the published reference and the Army Body Fat Calculator for an interactive result.
Sources, review and disclaimer
Primary sources: DA Form 5500, July 2026 and Army implementing guidance. Reviewed by the CalculatorGeek Algorithmic Team on September 10, 2026. This is an independent arithmetic explanation, not an official assessment.
Use this resource
Keep exploring