Triage Method
FFMI Calculator
Fat-Free Mass Index — the gold-standard measure of muscularity, adjusted for height and independent of body fat.
Your Measurements
Weight
kg
Height
cm
Body Fat Percentage
%
If unsure, use the US Navy or DEXA method. Males typically range 10–25%, females 18–35%.
Analysis Results
Enter your measurements
and click Calculate FFMI
FFMI
—
Normalized
—
Category
—
Percentile
—
FFMI Spectrum
—
kg/m²
—
—
—
Population Distribution
Body Composition
—
lean kg
Additional Metrics
Lean Mass
—
kg lean tissue
Fat Mass
—
kg fat tissue
BMI
—
kg/m² (context-only)
Next Milestone
⚠ Above Natural Genetic Ceiling
Personalised Insights
Triage Method
FFMI Report
Generated: ${dateStr}
Sex: ${r.sex.charAt(0).toUpperCase() + r.sex.slice(1)} · Units: ${unit === 'metric' ? 'Metric' : 'Imperial'}
Sex: ${r.sex.charAt(0).toUpperCase() + r.sex.slice(1)} · Units: ${unit === 'metric' ? 'Metric' : 'Imperial'}
FFMI
${r.ffmi.toFixed(1)}
Normalized
${r.normalized.toFixed(1)}
Category
${r.activeZone.name}
Percentile
${Math.round(r.percentile)}th
⚠ Above Natural Genetic Ceiling
An FFMI of ${r.ffmi.toFixed(1)} exceeds the documented natural ceiling of ${ceiling} for ${r.sex}s (Kouri et al., 1995). Values above this threshold are rarely achieved naturally.
` : ''}
Input Measurements
Weight
${r.inputWeight} ${unit === 'metric' ? 'kg' : 'lbs'}
${unit === 'imperial' ? `${r.weightKg.toFixed(1)} kg
` : ''}
Height
${r.inputHeight} ${unit === 'metric' ? 'cm' : 'in'}
${unit === 'imperial' ? `${(r.heightM * 100).toFixed(1)} cm
` : ''}
Body Fat
${r.inputBF}%
BMI
${r.bmi.toFixed(1)}
kg/m² (context-only)
Body Composition
FFMI Spectrum — ${r.sex.charAt(0).toUpperCase() + r.sex.slice(1)}
| Category | FFMI Range | Your Result |
|---|
Population Context
Your FFMI of ${r.ffmi.toFixed(1)} places you in the
${r.percentile >= 50 ? `top ${topPct}%` : `bottom ${r.percentile.toFixed(1)}%`}
of muscular development compared to the general ${r.sex} population.
The average FFMI for ${r.sex}s is approximately ${DIST[r.sex].mean} kg/m².
Next Milestone
${goalHTML}
Personalised Insights
${insightsRaw}