Raoult's law calculator
A component at mole fraction 0.4 with a pure vapor pressure of 92 contributes a partial pressure of 36.8 in the same unit, whether torr, kPa or atm. Enter the two values for one component of an ideal mixture. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Mole fraction
- 0.4
- Pure vapor pressure
- 92
- Partial pressure
- 36.8
Raoult's law states that the partial vapor pressure of a volatile component in an ideal liquid mixture equals that component's liquid mole fraction times the vapor pressure of the same substance when it is pure at the same temperature. Chemists use the identity to turn a composition into a partial pressure for homework, laboratory reports, and first-pass process screens without opening a full activity-coefficient package. This Raoult's law calculator accepts the component mole fraction and the pure-component vapor pressure, multiplies them, and returns the partial pressure in the same pressure unit you supplied.
Where a Raoult's law calculator earns its keep
General chemistry and physical chemistry courses assign Raoult's law problems that ask for the partial pressure of one volatile component given its liquid mole fraction and a tabulated pure vapor pressure. A deterministic oracle lets instructors generate answer keys and lets students check arithmetic without importing a computer-algebra system. Laboratory sections that measure manometer readings over binary mixtures compare the ideal partial pressure from this formula to the observed reading before they discuss activity coefficients and deviations from ideality.
Process engineers use the same multiply as a first-pass screen: if an organic solvent is present at mole fraction 0.2 and its pure vapor pressure at the tank temperature is known, the ideal partial pressure bounds an emission or drying estimate before a full vapor-liquid equilibrium package is justified. Environmental and industrial-hygiene worksheets convert liquid composition into an expected partial pressure for a volatile organic under the ideal-solution assumption as a conservative or screening value.
Keep requests small, pin the rounded partial pressure in tests, and you get reproducible Raoult partial pressures for homework, LMS plugins, and edge workers without standing up thermodynamics infrastructure of your own.
What you can do with it
Lab checks against manometer data
Predict the ideal partial vapor pressure of a volatile component from measured liquid mole fraction before comparing to experimental readings.
Process and hygiene first-pass screens
Turn a known liquid mole fraction and tabulated pure vapor pressure into an ideal partial pressure for drying, emission, or exposure estimates.
FAQ
What happens if the mole fraction is outside 0 to 1?
A mole fraction cannot be negative or greater than one, so those values are rejected and are not billed.
Does the calculator convert torr, kPa, or atm?
No. It multiplies in whatever pressure unit you send.
Is this the total pressure of a two-component mixture?
Total pressure for two volatile species is the sum of two Raoult terms and is a different search intent.
What happens at a mole fraction of 1 or 0?
At 1 the liquid is the pure component, so the partial pressure equals its pure vapor pressure exactly. At 0 the component is absent and adds no vapor. In between, the pressure rises in a straight line.
When does the result stop matching real measurements?
When the mixture is not ideal. Labs compare this ideal partial pressure with a manometer reading, and the gap is what activity coefficients describe. The formula assumes mixing changes a component's escaping tendency only through dilution.
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/raoults-law \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"mole_fraction":0.4,"pure_vapor_pressure":92}'const res = await fetch("https://api.kit.forhosting.com/chem/raoults-law", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"mole_fraction": 0.4,
"pure_vapor_pressure": 92
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/raoults-law",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"mole_fraction": 0.4,
"pure_vapor_pressure": 92
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/raoults-law", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"mole_fraction":0.4,"pure_vapor_pressure":92}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"mole_fraction":0.4,"pure_vapor_pressure":92}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/raoults-law", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"mole_fraction": 0.4,
"pure_vapor_pressure": 92
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.raoults_law",
"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
In symbols, P_i equals x_i times P°_i. Mole fractions outside the closed interval from zero to one are rejected with invalid_input, because a mole fraction is a share of the liquid and cannot be negative or greater than one.
What Raoult's law computes for a single component
Raoult's law for a volatile species in an ideal solution is a direct proportion between how much of that species is present in the liquid and how much vapor it contributes above the mixture. Intermediate mole fractions scale the pure vapor pressure linearly, which is the ideal-solution assumption: mixing does not change the escaping tendency except through dilution. This capability evaluates that closed form and nothing else. Identical inputs always produce identical output because there is no network, no clock, and no random seed anywhere in the path. Use the returned formula string next to the number when you write a report so readers can see the same identity the solver used. Write the liquid mole fraction of component i as x_i, a dimensionless number between zero and one, and write the vapor pressure of pure i at the same temperature as P°_i. The partial vapor pressure of i is then P_i equals x_i times P°_i. When x_i is one, the liquid is pure i and the partial pressure recovers the pure vapor pressure exactly. When x_i is zero, component i is absent from the liquid and its partial pressure is zero. It does not convert pressure units, look up Antoine coefficients from temperature, sum several volatile species into a total pressure, or compute vapor-phase mole fractions y_i. Those jobs have their own search intents and should stay on dedicated landings. The arithmetic is a single multiply in ordinary floating-point, cleaned to twelve significant digits so JSON goldens stay stable across runtimes.
Input contract, response shape, and error behaviour
Send a JSON object with two required finite numbers: mole_fraction, the liquid mole fraction x_i of the component of interest, and pure_vapor_pressure, the vapor pressure of that same substance when it is pure at the temperature of the problem. mole_fraction must lie in the closed interval from zero to one inclusive. Values below zero or above one fail with invalid_input, because a mole fraction outside that range is non-physical and would silently scale a pressure into nonsense. pure_vapor_pressure must be finite and non-negative; a negative vapor pressure is rejected for the same physical reason, and zero is allowed as the non-volatile pure-component limit. Missing fields, empty strings, NaN, and Infinity also fail with invalid_input naming the field, and those failures are not billed. On success the response echoes the cleaned mole_fraction and pure_vapor_pressure, returns partial_pressure as the Raoult product in the same pressure unit you sent (torr, millimeters of mercury, kilopascals, atmospheres, bar, or any other coherent unit), includes a small units hint object, the method label raoults_law, and the formula string P_i equals x_i times P°_i so homework write-ups can cite the expression next to the number. Classic checks include x_i equals 0.4 with P°_i equals 92 torr yielding 36.8 torr, a pure-component limit with x_i equals one reproducing P°_i exactly, and a missing-component limit with x_i equals zero yielding a partial pressure of zero. Successful API calls cost the published $0.002 per item; validation failures do not consume prepaid balance.
Integration use cases
Homework and exam answer keys
Compute P_i = x_i × P°_i for textbook ideal-solution sets so students and auto-graders share one closed-form Raoult ground truth.
Technical questions
How do I compute partial vapor pressure with Raoult's law?
Send finite numbers mole_fraction (x_i in [0, 1]) and pure_vapor_pressure (P°_i ≥ 0). The API returns partial_pressure = x_i × P°_i in the same pressure unit you supplied.
What does the Raoult's law calculator cost?
The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.