ForHosting KIT · Science

PPM to PPB converter

1.5 ppm of residual chlorine is 1500 ppb and 1500000 ppt, because each step from million to billion to trillion is a factor of 1000. Type one ppm reading and get both finer scales at once. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Ppm
1.5
You get
Ppb
1,500
Ppt
1,500,000
Unit ppm
ppm
Unit ppb
ppb

Environmental labs, semiconductor process specs, drinking-water notices, and air-quality bulletins jump between parts per million, parts per billion, and parts per trillion depending on the analyte and the instrument. Those three scales are pure powers of one thousand: one part per million equals one thousand parts per billion and one million parts per trillion, so a correct conversion is a deterministic multiplication rather than a chemistry CAS call.

How ppm, ppb, and ppt relate and which inputs to send

Parts-per notation expresses a dimensionless ratio of amount of substance, mass, or volume depending on the reporting convention of the laboratory or standard you follow. Once a value is already stated in parts per million, moving it to parts per billion or parts per trillion is a pure scale change: multiply by one thousand to obtain ppb, and multiply by one million to obtain ppt, because each successive “parts per” tier is three orders of magnitude finer.

Ppm must be non-negative because a negative concentration is not a physical reading in this product and would confuse tables that sort and filter by magnitude. Zero is allowed and maps cleanly to zero ppb and zero ppt. Non-finite values such as NaN or Infinity are rejected as invalid input rather than being echoed.

Identical inputs always produce identical outputs because there is no network call, no model, no random seed, and no wall clock in the path. Classroom examples include converting one point five ppm of residual chlorine into fifteen hundred ppb, or turning a two ppm ozone bulletin into two million ppt for an instrument that labels its axis in trillionths.

Water quality and environmental reporting

Convert ppm readings of residual chlorine, nitrate, or ozone into ppb or ppt columns for regulatory tables and public notices that mix scales.

What happens if ppm is negative?

Negative concentrations are not accepted; only finite non-negative ppm values are converted.

How many ppb are in one ppm?

Exactly one thousand. One ppm also equals one million ppt, because each parts-per tier is three orders of magnitude finer.

Is the ppm to ppb converter free?

The browser tool runs free on your device.

Does this convert ppm to molarity?

No. This capability only scales ppm into ppb and ppt. For molarity from ppm and molar mass, use a dedicated ppm-to-molarity calculator.

Does it matter whether my ppm is by mass or by volume?

No. Depending on the convention your lab follows, parts-per values can compare masses, volumes or amounts of substance, and moving to ppb or ppt is the same factor of 1000 in every case. Just keep the same convention throughout.

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.

POSThttps://api.kit.forhosting.com/chem/ppm-to-ppb

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.

curl -X POST https://api.kit.forhosting.com/chem/ppm-to-ppb \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ppm":1.5}'
{
  "ppm": 1.5
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "chem.ppm_to_ppb",
  "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.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

This capability accepts a non-negative concentration in ppm, returns the matching ppb and ppt values with stable rounding, and fails with invalid_input when the concentration is negative so pipelines never publish a signed “concentration” by mistake. Homework checkers, LIMS scripts, teaching apps, and compliance dashboards can pin the same JSON in tests without reimplementing scale factors in every language.

How ppm, ppb, and ppt relate and which inputs to send

Send a JSON object with the required field ppm as a finite number or numeric string; aliases such as parts_per_million, concentration_ppm, c_ppm, and value are accepted when documented by the SDK so client code can speak laboratory English.

Reading the response: ppb, ppt, factors, and formula

The factors object documents the exact integers used—one thousand from ppm to ppb, one million from ppm to ppt, and one thousand from ppb to ppt—so auditors and curriculum authors can verify the scale without reading source. Use ppb alone when a regulatory sheet expects billionths; use ppt when an analytical method or air-quality instrument reports trillionths; use factors and formula together when a report must state the conversion rule for reviewers. Validation failures for negative ppm mention that negative values are not allowed so technicians can correct a sign error or a delta column that was wired into the concentration field by mistake. The unit_ppm, unit_ppb, and unit_ppt fields carry the short labels ppm, ppb, and ppt so front ends can caption columns without hard-coding strings. Formula restates the two multiplications in a single human-readable line, and method is always ppm_to_ppb so downstream routers can branch without sniffing response shapes. Missing fields and non-finite numbers also raise invalid_input and are not charged after the engine rejects the request.

API usage, pricing, lab workflows, and practical limits

Call the free in-browser ppm to ppb converter for homework checks, lecture demos, and quick bench unit changes without installing a spreadsheet formula library. Authors shipping SDKs can map the single field into a labeled input Concentration ppm with ppb and ppt cells auto-filled—the same columns students write when they convert parts per million by hand on paper. Send a JSON body with ppm as a number or numeric string. Use the prepaid API when a LIMS integration, tutoring platform, water-quality dashboard, or process-control bridge needs a stable contract under KIT balance at $0.002 per successful item; validation failures never consume balance after the engine rejects the request. Pair this endpoint with a ppm-to-molarity calculator when the next step is converting a mass-based concentration into moles per liter using molar mass, or with dilution tools when you are scaling stock solutions after unit conversion. This product does not reinterpret ppm as milligrams per liter with density correction, nor does it convert mass percent or volume percent under non-standard industrial definitions—those are separate intents with different inputs.

Homework and exam verification

Students convert a single ppm value into ppb and ppt, compare structured JSON, and receive a clear error when a negative concentration is submitted.

LIMS and instrument bridge scripts

Pipelines normalize instrument outputs that speak different parts-per units into one prepaid contract instead of reimplementing scale factors per language.

How do I convert ppm to ppb and ppt?

Send JSON with ppm set to a non-negative number (for example ppm: 1.5). The response returns ppb = ppm × 1000 and ppt = ppm × 1_000_000.

Read the full KIT documentation →