# Body Fat Calculator

> Estimates body-fat percentage from height and neck, waist (and hip for women) circumferences using the US Navy method, and classifies the result with ACE categories.

- Calculator id: `body-fat` · Category: Health (`health`) · Tool name: `calculate_body_fat_percentage`
- Canonical page: https://tttkmbb.com/health/body-fat · This document: https://tttkmbb.com/health/body-fat.md · JSON definition: https://tttkmbb.com/health/body-fat.json

## Purpose

Estimates body-fat percentage from height and neck, waist (and hip for women) circumferences using the US Navy method, and classifies the result with ACE categories.

**Use when:** You want a tape-measure estimate of body-fat percentage and fat/lean mass without calipers or a DEXA scan.

**Do not use when:** High accuracy is required (DEXA, hydrostatic weighing or BIA are better), or the person is a child or pregnant.

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `sex` | enum: male \| female |  | required | Biological sex used to select the formula coefficients. |
| `height_cm` | number | cm | required | Height in centimetres. (min 50, max 300) |
| `waist_cm` | number | cm | required | Waist measured at the navel (men) or narrowest point (women). (min 30, max 300) |
| `neck_cm` | number | cm | required | Neck measured just below the larynx. (min 15, max 100) |
| `hip_cm` | number | cm | optional | Hip at the widest point. Required for women, ignored for men. (min 30, max 300) |
| `weight_kg` | number | kg | optional | Optional body weight, used to report fat mass and lean mass in kg. (> 0, max 700) |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `body_fat_percent` | number | % | Estimated body-fat percentage (US Navy formula). |
| `category` | string |  | ACE body-fat category for the given sex. |
| `fat_mass_kg` | number | kg | Body fat in kilograms (only when weight_kg is given). |
| `lean_mass_kg` | number | kg | Fat-free mass in kilograms (only when weight_kg is given). |

## Formula

`Men: %fat = 495 / (1.0324 − 0.19077·log10(waist − neck) + 0.15456·log10(height)) − 450. Women: %fat = 495 / (1.29579 − 0.35004·log10(waist + hip − neck) + 0.22100·log10(height)) − 450. All lengths in cm.`

## Data Sources

- Hodgdon & Beckett (1984) Prediction of percent body fat for U.S. Navy men/women from body circumferences and height — https://apps.dtic.mil/sti/citations/ADA143890 (peer_reviewed, retrieved 2026-09-23)
- American Council on Exercise – Percent body fat norms — https://www.acefitness.org/resources/everyone/tools-calculators/percent-body-fat-calculator/ (reference, retrieved 2026-09-23)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/body-fat?sex=…&height_cm=…&waist_cm=…&neck_cm=…`
- `POST https://tttkmbb.com/api/v1/calculate/body-fat` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/body-fat · OpenAPI operationId `calculate_body_fat_percentage` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "body-fat", "inputs": {…}}`

## Example

- Male, 175 cm, waist 85, neck 38, 70 kg: inputs `{"sex":"male","height_cm":175,"waist_cm":85,"neck_cm":38,"weight_kg":70}` → `{"body_fat_percent":16.9,"category":"Fitness","fat_mass_kg":11.9,"lean_mass_kg":58.1}`
- Female, 165 cm, waist 75, neck 33, hip 95: inputs `{"sex":"female","height_cm":165,"waist_cm":75,"neck_cm":33,"hip_cm":95}` → `{"body_fat_percent":26.9,"category":"Average"}`

```
GET https://tttkmbb.com/api/v1/calculate/body-fat?sex=male&height_cm=175&waist_cm=85&neck_cm=38&weight_kg=70
```

## Limitations

High accuracy is required (DEXA, hydrostatic weighing or BIA are better), or the person is a child or pregnant. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**How accurate is the US Navy method?**

Roughly ±3–4 percentage points versus hydrostatic weighing for most adults; less accurate at very high or very low body fat.

**Where exactly do I measure?**

Neck just below the larynx, sloping slightly downward; waist horizontally at the navel (men) or the narrowest point (women); hips at the widest point (women).

## Related

- [Lean Body Mass Calculator](https://tttkmbb.com/health/lean-body-mass.md) — Formula-based lean mass without circumference measurements.
- [BMI Calculator](https://tttkmbb.com/health/bmi.md) — Compare with the simpler BMI screening measure.
