KG to liter converter
Divide a mass by the density of the substance and get its volume: 2 kg of water at 1 kg/L fill 2 L. Enter the density of diesel, oil or honey and copy the steps into your lab notebook. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Kg
- 2
- Density
- 1
- Result
- 2 L
- Liters
- 2
- Mass unit
- kg
- Density unit
- kg/L
A kilograms-to-liters converter turns a mass measured in kilograms into a volume in liters by dividing by the substance density in kilograms per liter. Density is mass per unit volume, so rearranging rho equals m divided by V gives V equals m divided by rho. When mass is expressed in kilograms and density in kilograms per liter, the quotient is already liters; there is no extra conversion constant, because one liter of water near four degrees Celsius has a mass of about one kilogram. Oils, fuels, solvents, resins, and molten metals need their own published density—treating diesel like water would overstate the tank volume badly. Enter a finite non-negative mass in kilograms and a strictly positive density; the tool returns the volume in liters, echoes both inputs, restates the formula liters equals kilograms divided by density, and lists substitution steps you can paste into a lab notebook or shipping worksheet.
Why kilograms become liters only through density
Kilograms and liters sit on opposite sides of the density definition, which is why converting kilograms to liters is never a single fixed factor the way converting inches to centimetres is. Density is mass per unit volume: rho equals m divided by V, so rearranging gives V equals m divided by rho.
When mass is expressed in kilograms and density in kilograms per liter, the quotient is already liters; there is no extra conversion constant, because one liter occupies one cubic decimetre by the SI litre definition and one kilogram per liter is the same numerical density as one gram per milliliter or one gram per cubic centimeter.
That convenience is why weighbridges and dipsticks together recover density, why fuel terminals still write tank inventories against a published specific gravity, and why a shipping label in kilograms does not tell you how much tank volume you need until density is known. Water near four degrees Celsius has a density very close to one kilogram per liter, so one kilogram of water occupies about one liter—a useful sanity check, not a universal factor.
Diesel typically sits near zero point eight three to zero point eight five kilograms per liter, ethanol near zero point seven eight nine, olive oil near zero point nine one, honey often near one point four two, and typical aluminum near two point seven zero. Entering a density of one for honey would overstate the volume; omitting density altogether would be guessing. Zero kilograms maps cleanly to zero liters.
Practical tips, checks, and related searches
Prefer sending bare numbers when you control the client. Round-trip sanity checks are easy: convert two kilograms of water at density one and confirm you receive two liters, or convert four point six kilograms of olive oil at density zero point nine two and confirm you receive five liters. When teaching density, pair those checks with a wrong density of one on a syrup sample so students see how badly volume is overstated if they treat every substance like water.
Look up a published density for the actual oil, fuel, resin, metal, or foodstuff at the relevant temperature; this tool does not guess a material from a name and does not store a hidden table of household ingredients. Stay inside the absolute range so the division cannot overflow into a non-finite result the solver must reject.
This landing targets people searching for kg to liter, kilograms to litres, or convert kilograms to liters with density; it is not a general multi-unit volume hub, not a liters-to-kilograms primary form, not a cooking cups-to-grams table keyed by ingredient name, and not a density-from-mass-and-volume solver. Prefer this capability when the mass is already in kilograms and you already know density in kg/L; if you must convert among many mass or volume units in one call, use a broader unit converter instead.
Keep requests small, pin the rounded liters in tests, and you get reproducible volumes for tank fills, drum inventories, and edge workers without standing up a materials database of your own.
What you can do with it
Fuel, oil, and bulk liquid inventory
Turn a weighed mass of diesel, solvent, or edible oil into liters from the published density so tank logs, invoices, and dipstick checks agree before the liquid is transferred.
Drum, IBC, and tote fills
Convert a kilogram batch into liters for drums and intermediate bulk containers using the material density instead of assuming water-like volume.
FAQ
What formula converts kilograms to liters?
liters = kilograms / density, with density in kg/L. One liter equals one cubic decimetre, so the quotient is already in liters. There is no extra unit factor.
Why must density be a positive finite number?
Density is mass per volume. Zero density would claim a finite mass occupies infinite volume; a negative or non-finite density is not physical.
Is one kilogram of water equal to one liter?
Approximately, yes, because water near 4 °C has a density close to 1 kg/L.
Is the kg to liter converter free?
The browser tool is free and runs locally.
What density should I use for diesel, ethanol, olive oil or honey?
Use the published density of your substance in kilograms per liter. Typical values are 0.83 to 0.85 for diesel, 0.789 for ethanol, 0.91 for olive oil, about 1.42 for honey and 2.70 for aluminum.
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/conv/kg-to-liter \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"kg":2,"density":1}'const res = await fetch("https://api.kit.forhosting.com/conv/kg-to-liter", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"kg": 2,
"density": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/conv/kg-to-liter",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"kg": 2,
"density": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/conv/kg-to-liter", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"kg":2,"density":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"kg":2,"density":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/conv/kg-to-liter", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"kg": 2,
"density": 1
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "conv.kg_to_liter",
"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
Density that is missing, zero, negative, or not a finite number fails with invalid_input instead of inventing a volume.
Why kilograms become liters only through density
This capability therefore always requires a strictly positive finite density: zero would claim that a finite mass occupies infinite volume, a negative density is not a physical mass per volume, and a non-finite density is rejected as invalid_input.
How to call the API and what comes back
Absolute values must stay within the published limit of one trillion. Do not send unit strings inside the number fields; strip the letters kg or kg/L on the client and send the magnitudes only. If your table lists density in kilograms per cubic metre, divide that figure by one thousand first so you send kilograms per liter. Send a JSON body with two required finite numbers: kg, the non-negative mass in kilograms, and density, the strictly positive substance density in kilograms per liter. Aliases for mass are kilograms, kilogrammes, mass, value, weight, and mass_kg, so SDK clients and form posts can use the name that fits the product. Aliases for density are rho, d, density_kg_l, kg_l, and specific_gravity. On success the response echoes rounded kg and density, sets liters and result to the same rounded volume in liters, unit to the token L, mass_unit to kg, density_unit to kg/L, formula to the string liters equals kilograms divided by density, message to a short English summary, and steps to an ordered array of substitution lines. Failed validation—missing fields, non-finite numbers, bare plus or minus signs, non-numeric strings, a density that is zero, negative, or not finite, a negative mass, values outside absolute limits, or a non-finite quotient—returns invalid_input and is never charged. Pricing is a flat $0.002 per successful request with unit item and zero marginal unit price. Prefer JSON numbers; numeric strings are accepted only when they match a strict finite decimal pattern without thousand separators.
Practical tips, checks, and related searches
Failed tasks that return invalid_input do not consume prepaid balance, which keeps exploratory scripts cheap when learners deliberately omit density or pass a zero density to see the contract.
Integration use cases
Homework and unit-test fixtures
Students and engineers convert classroom kilogram readings to liters and pin golden JSON so browser and API arithmetic never drift on the density quotient.
Technical questions
What happens if density is zero, negative, or not finite?
The API returns invalid_input naming the problem (for example that density must be a positive finite number). Failed tasks are not charged.