Fat mass from body fat %
Converts a body-fat percentage into kilograms: 80 kg at 22.5% body fat is 18 kg of fat mass and 62 kg of lean mass. Log both figures for progress charts or a coach's records without a spreadsheet. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Weight (kg)
- 80
- Body fat percentage
- 22.5
- Fat mass kg
- 18
- Lean mass kg
- 62
Body fat percentage tells you the share of your mass that is adipose tissue, but many coaches, clinicians and tracking apps need the absolute fat mass in kilograms instead. This capability multiplies body weight by the fat fraction and returns fat mass together with lean mass so you can log both numbers without a spreadsheet. The formula is closed-form and deterministic: the same inputs always produce the same outputs, with no network calls, clocks or random sampling.
What fat mass from percentage actually means
Body composition tools report body fat as a percentage of total body weight. Absolute fat mass answers a different question: how many kilograms of that weight are fat. The conversion is straightforward arithmetic — fat mass equals weight multiplied by body fat percent divided by one hundred — yet it is easy to get wrong when units mix, when percent is written as a fraction, or when people subtract instead of scaling.
Lean mass is the remainder: total weight minus fat mass. Tracking absolute kilograms often matters more than the percentage alone when weight is changing, because a rising percent on a falling scale can still mean less fat tissue, and the reverse is also true.
How to send weight and percentage correctly
Do not send pounds without converting first, and do not send the fat fraction as zero point two two when you mean twenty-two percent — the input is a percentage on the zero-to-one-hundred scale. Zero percent is allowed and yields zero fat mass; one hundred percent yields fat mass equal to weight. Decimal values are fine: an eighty kilogram body with twenty-two point five percent fat returns eighteen kilograms of fat mass and sixty-two kilograms of lean mass.
Prefer machine numbers over strings that include units or percent signs so parsers do not guess.
Where absolute fat mass fits in real pipelines
Fitness apps store percent from a scale or caliper and later need kilograms for calorie models, protein targets, or progress graphs that plot fat mass over time. Clinical intake forms often collect both fields and must derive a consistent pair for the chart. Invalid inputs do not consume balance, so you can validate client forms aggressively before logging a successful unit.
Combine the output with other health calculators if you need BMI or calorie estimates; this capability stays focused on one conversion so the contract stays small and stable.
What you can do with it
Training and body-comp logs
Convert each scale reading of weight plus body fat percent into fat mass and lean mass kilograms for weekly progress charts.
Coach and clinic intake forms
Derive absolute fat mass on submit so the record stores both percentage and kilograms without spreadsheet formulas.
FAQ
What units should I use?
Weight must be in kilograms. Body fat must be a percentage from 0 to 100, not a 0–1 fraction. Convert pounds or stones before calling.
What does it cost?
The page tool is free in your browser. Invalid inputs are not charged.
Do I enter my body fat as 22 or as 0.22?
As a percentage on the 0 to 100 scale, so type 22 for twenty-two percent. A value of 0.22 would be read as a fraction of one percent and give a fat mass far below the real one.
Why can my body-fat percentage rise while I am losing fat?
Because the percentage depends on total weight. On a falling scale, a rising percent can still mean fewer kilograms of fat tissue, and the reverse is also true. That is why tracking kilograms often says more than the percentage alone.
How is lean mass worked out?
Lean mass is simply what remains: total weight minus fat mass. With 80 kg and 22.5% body fat, fat mass is 18 kg and lean mass 62 kg, so the two always add up to your weight.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/health/fat-mass-from-percent \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"weight_kg":80,"body_fat_percent":22.5}'const res = await fetch("https://api.kit.forhosting.com/health/fat-mass-from-percent", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"weight_kg": 80,
"body_fat_percent": 22.5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/fat-mass-from-percent",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"weight_kg": 80,
"body_fat_percent": 22.5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/fat-mass-from-percent", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"weight_kg":80,"body_fat_percent":22.5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"weight_kg":80,"body_fat_percent":22.5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/fat-mass-from-percent", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"weight_kg": 80,
"body_fat_percent": 22.5
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.fat_mass_from_percent",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
Missing fields, non-numeric values, non-positive weight and percentages outside zero to one hundred are rejected with a clear invalid_input error so automations fail loudly rather than silently inventing a wrong kilogram figure.
What fat mass from percentage actually means
This tool keeps both numbers in one response so you can compare sessions, feed a progress chart, or hand a single JSON object to a coach portal without re-deriving the math in every client.
How to send weight and percentage correctly
Provide weight_kg as a finite positive number in kilograms and body_fat_percent as a finite number from zero through one hundred inclusive. Aliases such as weight, fat_percent and bf_percent are accepted so existing form fields map cleanly. Negative weight, zero or negative weight, non-finite values, or a percent below zero or above one hundred fail with invalid_input and are not billed.
Where absolute fat mass fits in real pipelines
Batch jobs that import CSV rows from consumer devices can call this endpoint once per row and keep the same closed-form result in every environment. Use the page tool to check a single reading, or call the API when automation needs the same calculation at $0.002 per successful request.
Integration use cases
Batch import from consumer devices
Map CSV rows of weight and percent into consistent fat_mass_kg fields inside automations and data warehouses.
Technical questions
What does this fat mass calculator return?
It returns the weight and body fat percent you submitted, fat_mass_kg (weight times percent over one hundred), and lean_mass_kg (weight minus fat mass).
When does the calculation fail?
It fails with invalid_input when weight_kg or body_fat_percent is missing or not a finite number, when weight is not positive, or when percent is outside 0–100.
Is the browser result the same as the API?
Yes. Both run the same pure function in lib.js, so identical inputs produce identical fat and lean mass values.