Statistical functions

BINOM.INV

Known larger differences on 3 of 2,162 recorded answers

Of 2,162 recorded answers (2,152 in the answer bank and 10 workbook cells), 3 do not match: 3 differ by more than 16 ULP. How we measure this · See the Rust code

Local names in 40 languages
LanguageName in Excel
ArabicBINOM.INV
BulgarianBINOM.INV
CzechBINOM.INV
DanishBINOMIAL.INV
GermanBINOM.INV
GreekBINOM.INV
English (Australia)BINOM.INV
English (United Kingdom)BINOM.INV
English (United States)BINOM.INV
SpanishINV.BINOM
EstonianBINOM.INV
FinnishBINOMIJAKAUMA.KÄÄNT
FrenchLOI.BINOMIALE.INVERSE
HebrewBINOM.INV
CroatianBINOM.INV
HungarianBINOM.INVERZ
IndonesianBINOM.INV
ItalianBINOM.INV
JapaneseBINOM.INV
KoreanBINOM.INV
LithuanianBINOM.INV
LatvianBINOM.INV
NorwegianBINOM.INV
DutchBINOMIALE.INV
PolishROZKŁ.DWUM.ODWR
Portuguese (Brazil)BINOM.INV
Portuguese (Portugal)INV.BINOM
RomanianBINOM.INV
RussianБИНОМ.ОБР
SlovakBINOM.INV
SlovenianBINOM.INV
Serbian (Latin)BINOM.INV
SwedishBINOM.INV
ThaiBINOM.INV
TurkishBİNOM.TERS
UkrainianBINOM.INV
VietnameseBINOM.INV
Chinese (Simplified)BINOM.INV
Chinese (Hong Kong)BINOM.INV
Chinese (Traditional)BINOM.INV

Names from Microsoft's support site.

What it does

BINOM.INV(trials, probability_s, alpha)

BINOM.INV(trials, probability_s, alpha) returns the smallest success count whose cumulative binomial probability is at least alpha. Trials are independent and share a success probability.

Try it

Input cells (optional)

Example: {"B2": 3, "B3": 4}. A1 holds the formula. Other cells need values before a formula can read them.

Enter a formula, then calculate.

Runs locally in your browser with OneCalc. Its answer may differ from Excel. Use English function names and commas between arguments.

=BINOM.INV(4,0.5,0.6) returns 2. The cumulative probabilities through zero, one and two successes are 1/16, 5/16 and 11/16; two is the first count to reach 0.6.

Quirks

The trial count is truncated toward zero. The current helper then requires n>=0, 0<p<1 and 0<alpha<1; probabilities at either endpoint are rejected with #NUM!. Nonnumeric arguments give #VALUE!. Unlike BINOM.DIST, this inverse does not admit degenerate endpoint probabilities.

At an exact cumulative boundary, “at least” means >=, not >. A count can change because the accumulated floating-point CDF falls on a different side of alpha, even when two mass formulas agree to many decimal places. The returned result is an integer count, not an interpolated fraction of a trial.

How to implement

The current candidate is a sequential search:

  1. Truncate and validate the trial count and the two open-interval probabilities.
  2. Form the stored binary64 complement q=1-p; start sum=0 and k=0.
  3. While k<n, obtain the current shared binomial mass at k, add it to sum, and return k if sum>=alpha.
  4. Otherwise increment k. If no earlier count reaches the criterion, return n. For admitted n=0, this final branch returns zero.

For four trials with p=0.5, the mathematical masses are 1,4,6,4,1 divided by sixteen. The cumulative values at counts zero, one and two are 1/16, 5/16 and 11/16; alpha=0.6 first qualifies at two. At criterion 5/16, the inclusive mathematical comparison first qualifies at one.

A large-n implementation can bracket a count and binary-search a stable CDF, but that is a different algorithm. It needs checks around adjacent counts and exact CDF boundaries; stopping when the numerical probability is merely close to alpha can return the wrong integer. The current sequential routine retains recorded mismatches, so neither this search outline nor a generic inverse library is a solved whole-domain Excel quantile recipe.

Rust code

Show the CalcFunc source of this function

Quoted from the public repository DnaCalc/DnaCalc, crates calc-func and calc-fml, at commit 9e1884369a67. Comments are the source's own. A kernel shared with other functions appears once, on its module page.

BINOM.INV · 4 lines · calc-func/src/catalogue/distributions.rs on GitHub
73 binom_inv "BINOM.INV" (3, 3) [V "trials", V "probability_s", V "alpha"] |s, a, sv| {
    let [t, p, alpha] = nums::<3>(s, a)?;
    out(s, dd::binom_inv_kernel(t, p, alpha))
}

Kernels shared with other functions

Argument and result plumbing

  • num catalogue/kit
  • out catalogue/kit

No implementation has been published with a Handbook test suite for this function.

Version differences

The recorded environments below distinguish a reading from a same-input comparison. Counts describe captured inputs in each environment; overlapping captures and comparisons are not totals of unique worksheet calls.

Excel 16.0 buildPlatform and CPUCaptured inputs
20430Windows, 64-bit, CPU not recorded2,152

The record contains no same-input comparison between these environments. Reading different inputs on different builds does not establish either a version change or cross-build agreement.

Recorded environments and comparison details.

Excel 16.0 build 20430

Windows, 64-bit, CPU not recorded

2,152 captured inputs are indexed for this environment. Capture dates: 2026-09-29 to 2026-09-29. This is a reading count, not a comparison with another build.

Alternatives

BINOM.DIST maps a count to a probability; CRITBINOM supplies the other spelling.

Named variants

No named variants are recorded yet.

Suggest a correction or contribute an implementation · For agents