Boyle's law final volume calculator
Find the volume a gas fills after an isothermal pressure change: 3 litres at 2 atm shrink to 1 litre at 6 atm, because pressure times volume stays the same. Enter both pressures and the starting volume. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- P1
- 2
- V1
- 3
- P2
- 6
- V2
- 1
- Product
- 6
When a fixed amount of ideal gas is held at constant temperature, Boyle's law says pressure and volume stay inversely proportional: the product P1 times V1 equals P2 times V2. This calculator is built for the common homework and lab case where you already know the initial pressure, the initial volume, and the new pressure after an isothermal compression or expansion, and you need the final volume. It rearranges the law to V2 equals (P1 times V1) divided by P2, returns the conserved product, and rejects a zero final pressure so division by zero never becomes a silent Infinity.
How Boyle's law gives the final volume
Robert Boyle observed that for a fixed amount of gas held at constant temperature, pressure and volume trade off so that their product remains the same. Written for two states of the same sample, the relation is P1 times V1 equals P2 times V2. Solving for the unknown final volume produces the working formula V2 equals (P1 times V1) divided by P2.
Pressure may be given in atmospheres, kilopascals, bars, or torr as long as P1 and P2 use the same unit; volume may be litres, cubic metres, or millilitres as long as V1 and V2 share the same unit. This tool does not convert between unit systems, does not bring temperature into the ideal-gas law, does not apply Charles's or Gay-Lussac's relations, and does not correct for real-gas compressibility factors. It answers only the isothermal inverse-pressure question: given the starting pressure and volume and the new pressure, what volume remains.
Zero final pressure is the critical validation edge because the rearrangement divides by P2; a zero or near-zero P2 fails with invalid input instead of inventing an infinite volume. Zero initial volume or pressure is likewise rejected because those states fall outside the simple Boyle model.
Where final-volume Boyle calculations show up in real work
Secondary-school chemistry and physics courses constantly assign problems that give two pressures and one volume and ask for the missing isothermal final volume, often for syringe demos, diving-tank sketches, or weather-balloon stories under a constant-temperature idealization. University general-chemistry labs use the same three-number reduction before they introduce absolute temperature scales and the full ideal-gas equation. Process technicians and HVAC trainees sanity-check closed-system compressions when only an isothermal bound is needed and the target is a new volume at a known pressure.
If you later need to solve for final pressure given final volume, Charles's law with temperature, the combined gas law, mole-based ideal-gas calculations, unit conversion between atmospheres and pascals, or adiabatic polytropic work, treat those as separate search intents and landings rather than overloading this Boyle's law final volume calculator page.
What you can do with it
Homework and lab answer keys
Compute V2 from P1, V1, and P2 so teachers and auto-graders share one Boyle final-volume ground truth, including the zero final-pressure rejection.
Syringe and cylinder isothermal checks
Estimate final volume after a measured pressure change under a constant-temperature assumption for demos and lab notebooks.
FAQ
What formula does this calculator use?
Boyle's law at constant temperature: V2 = (P1 · V1) / P2. The response also returns the conserved product P1 · V1.
What happens if final pressure P2 is zero?
Final volume cannot be computed when P2 is zero because the formula divides by final pressure.
Which units should I use?
Any consistent pair: keep P1 and P2 in the same pressure unit and V1 (and the returned V2) in the same volume unit. The tool does not convert units.
Can it solve for final pressure instead of volume?
No. This landing always solves for V2 given P1, V1, and P2. For a bidirectional Boyle solver, use a general Boyle's law calculator capability.
What does it cost?
The browser tool is free and runs locally.
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/chem/boyle-final-volume \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"p1":2,"v1":3,"p2":6}'const res = await fetch("https://api.kit.forhosting.com/chem/boyle-final-volume", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"p1": 2,
"v1": 3,
"p2": 6
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/boyle-final-volume",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"p1": 2,
"v1": 3,
"p2": 6
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/boyle-final-volume", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"p1":2,"v1":3,"p2":6}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"p1":2,"v1":3,"p2":6}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/boyle-final-volume", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"p1": 2,
"v1": 3,
"p2": 6
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.boyle_final_volume",
"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
What you send and what you get back
Send three finite numbers: p1 for the initial pressure, v1 for the initial volume, and p2 for the final pressure after the isothermal change. Classic textbook checks include doubling the pressure of a three-litre sample from two atmospheres to six atmospheres and recovering one litre, or raising pressure from one hundred kilopascals on half a litre to two hundred kilopascals and recovering a quarter litre. All three fields are required. p1 must be non-zero and expressed in any consistent pressure unit. v1 must be non-zero and expressed in any consistent volume unit; zero volume fails with a message that names the zero-volume rule. p2 must be non-zero; when final pressure is zero the request fails with a clear message that final volume cannot be computed under Boyle's law. Missing fields, non-numeric strings, NaN, and Infinity also fail with invalid_input and are not charged. On success the response echoes cleaned p1, v1, and p2, reports the solved v2, includes product as P1 times V1, and documents formula V2 equals (P1 times V1) over P2 with method boyle_final_volume. Pricing for successful API calls is the published base of $0.002 per item; validation failures do not consume prepaid balance.
Where final-volume Boyle calculations show up in real work
Because this capability is a pure parse engine, API pricing is the published base of $0.002 per successful item and failed validation does not consume balance.
Integration use cases
Curriculum widgets and API fixtures
Drive browser demos and CI golden tests from the same isomorphic solver so classroom tools never disagree with backend grading.