HomeCalculatorsChemistryHenderson–Hasselbalch Calculator
Chemistry calculator

Henderson–Hasselbalch Calculator

Compute buffer pH = pKa + log10([A−]/[HA]). Accepts pKa or Ka. Runs locally. Not ICE equilibrium and not pH = −log10[H+].

Instant result
Result

Enter values to calculate.

Inputs
Mode
Formula
Trust summary Engine tested · Source checked · 11/11 tests · Production surface contract 4/4 · v1.0.0
Input interpretation
Enter values to calculate.
Result
Model
Buffer pH from Henderson–Hasselbalch. pKa may be given directly or as Ka.
Scope
Monoprotic buffer; HA and A− are the pair as given
Verification
Engine tested · 11/11 tests · Production surface contract 4/4 · Source checked · v1.0.0
Named expert review
Optional · Not performed
Sources
Sources
Evidence
1 golden · 5 boundary · 5 property · Production surface contract 4/4 · Artifact integrity PASS
Production
Embedded snapshot: unpublished · Build schema 1.0.0 ready · Semantic contract ✓ · Attestation report not published on origin · Live production status PASS (0 stale; 164 CURRENT) @ 2026-09-16T06:44:24.909Z
Semantic contract
PASS

Formulas

Core equations used by this calculator.

Henderson–HasselbalchpH = pKa + log₁₀([A⁻]/[HA])
pKa from KapKa = −log₁₀(Ka)
iConcentrations enter only as the ratio [A−]/[HA]. This page does not solve an ICE table and does not compute pH from [H+].

How to use

1

Enter pKa or Ka

Give one acidity encoding. Sending both is rejected.

2

Enter the buffer pair

[HA] and [A−] must both be greater than zero. Units cancel in the ratio.

3

Read pH

pH = pKa + log10([A−]/[HA]). Equal concentrations give pH = pKa.

Example calculations

Common configurations with formula and result.

ϟ

Equal concentrations

pKa=5, [HA]=0.1, [A−]=0.1

pH = pKa
pH=5
ϟ

Two-to-one conjugate base

pKa=5, [HA]=0.1, [A−]=0.2

pH = 5 + log10(2)
pH≈5.30103

Henderson–Hasselbalch calculator specification

Version 1.0.0 · Engine tested

Calculation status

Review policy · Evidence

Definition
Henderson–Hasselbalch: pH = pKa + log10([A−]/[HA]). pKa = −log10(Ka). Monoprotic buffer pair as given.
What it calculates
Buffer pH from Henderson–Hasselbalch. pKa may be given directly or as Ka.
Inputs
  • pKa | Ka
  • HA
  • A
Outputs
  • pH
  • pKa
  • Ka
  • HA
  • A
  • ratio
Formula
pH = pKa + log10([A−]/[HA])
Assumptions
  • Monoprotic buffer; HA and A− are the pair as given
  • Activity coefficients ≈ 1
  • Not ICE equilibrium
  • Not pH = −log10[H+]
  • Not polyprotic
Units
  • lab; HA and A as the same concentration unit
Boundary conditions
  • missing pKa and missing Ka → MISSING_REQUIRED_INPUT
  • pKa and Ka together → MIXED_INPUT_ENCODING
  • HA ≤ 0 or A ≤ 0 → VALUE_MUST_BE_POSITIVE
  • Ka ≤ 0 → VALUE_MUST_BE_POSITIVE
Example
pKa=5 HA=0.1 A=0.2 → pH=5+log10(2)
Validation cases

3 published on this page · 11/11 tests · Production surface contract 4/4 · View evidence

  • pKa=5 HA=0.1 A=0.1 → pH=5
  • pKa=5 HA=0.1 A=0.2 → pH=5+log10(2)
  • HA=0.1 A=0.1 → MISSING_REQUIRED_INPUT
Sources
Calculation version
1.0.0

Background

Interpretation and common distinctions.

Compute buffer pH from Henderson–Hasselbalch.

Supported and not supported

Supported — pH from pKa (or Ka) and [HA], [A−] · API chemistry.acid_base.henderson_hasselbalch

Not supported — ICE tables, activity coefficients, polyprotic, titration curves; pH from [H+] is /calc/chemistry/ph

Agent / API notes

Capability id: chemistry.acid_base.henderson_hasselbalch · tool id: henderson-hasselbalch · pin 1.0.0.

{ "pKa": 5, "HA": 0.1, "A": 0.2 }

Alternate encoding: { "Ka": 1e-5, "HA": 0.1, "A": 0.2 }. Errors: MISSING_REQUIRED_INPUT, INVALID_NUMBER, VALUE_MUST_BE_POSITIVE, MIXED_INPUT_ENCODING.

Calculator URL is /calc/chemistry/henderson-hasselbalch. Converters stay on /convert/chemistry.

Other calculators in this family: pH, Mole, Molarity .

}

Frequently asked questions

Key distinctions behind the calculation.

Is this pH = −log10[H+]?

No. That identity is /calc/chemistry/ph. This page is the buffer approximation from pKa and the HA / A− pair.

Does this solve an ICE table?

No. Henderson–Hasselbalch takes the pair as given. Weak-acid ICE and polyprotic systems are out of scope.

Can I enter Ka instead of pKa?

Yes on the web form, REST, and MCP. Do not send pKa and Ka together.

Where does this run?

Locally in the browser by default. REST and MCP call the same chemistry-engine Henderson–Hasselbalch wrapper.