Excel 16.0 build 20131
Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics
6 captured inputs are indexed for this environment. Capture dates: 2026-07-16 to 2026-07-16. This is a reading count, not a comparison with another build.
Statistical functions
Known larger differences on 6 of 10 recorded answers
Of 10 recorded answers (6 in the answer bank and 4 workbook cells), 6 do not match: 1 differ by more than 16 ULP, 5 differ by at most 16 ULP. How we measure this · See the Rust code
| Language | Name in Excel |
|---|---|
| Arabic | T.DIST.RT |
| Bulgarian | T.DIST.RT |
| Czech | T.DIST.RT |
| Danish | T.FORDELING.RT |
| German | T.DIST.RT |
| Greek | T.DIST.RT |
| English (Australia) | T.DIST.RT |
| English (United Kingdom) | T.DIST.RT |
| English (United States) | T.DIST.RT |
| Spanish | DISTR.T.CD |
| Estonian | T.DIST.RT |
| Finnish | T.JAKAUMA.OH |
| French | LOI.STUDENT.DROITE |
| Hebrew | T.DIST.RT |
| Croatian | T.DIST.RT |
| Hungarian | T.ELOSZLÁS.JOBB |
| Indonesian | T.DIST.RT |
| Italian | T.DIST.RT |
| Japanese | T.DIST.RT |
| Korean | T.DIST.RT |
| Lithuanian | T.DIST.RT |
| Latvian | T.DIST.RT |
| Norwegian | T.DIST.RT |
| Dutch | T.VERD.RECHTS |
| Polish | ROZKŁ.T.PS |
| Portuguese (Brazil) | T.DIST.RT |
| Portuguese (Portugal) | DIST.T.DIR |
| Romanian | T.DIST.RT |
| Russian | СТЬЮДЕНТ.РАСП.ПХ |
| Slovak | T.DIST.RT |
| Slovenian | T.DIST.RT |
| Serbian (Latin) | T.DIST.RT |
| Swedish | T.FÖRD.RT |
| Thai | T.DIST.RT |
| Turkish | T.DAĞ.SAĞK |
| Ukrainian | T.DIST.RT |
| Vietnamese | T.DIST.RT |
| Chinese (Simplified) | T.DIST.RT |
| Chinese (Hong Kong) | T.DIST.RT |
| Chinese (Traditional) | T.DIST.RT |
Names from Microsoft's support site.
T.DIST.RT(x, deg_freedom)
T.DIST.RT(x, deg_freedom) returns the right-tail area of Student's t-distribution with
ν degrees of freedom:
T.DIST.RT(x, ν) = P(T > x) = 1 − F(x; ν)
where F is the cumulative distribution function described on
T.DIST. In terms of the regularized incomplete beta function
the identity is exact and, importantly, direct — the quantity is computed as itself rather
than as one minus something:
T.DIST.RT(x, ν) = ½ · I_{ν/(ν+x²)}(ν/2, ½) for x ≥ 0
T.DIST.RT(x, ν) = 1 − ½ · I_{ν/(ν+x²)}(ν/2, ½) for x ≤ 0
Domain and range: x over all reals, ν > 0; the value decreases strictly from 1 (as
x → −∞) to 0 (as x → +∞), passing through exactly ½ at x = 0. No poles, no branch cuts.
The asymptotics are the reason this surface is separate from T.DIST rather than a convenience
wrapper. As x → ∞,
P(T > x) ~ ( Γ((ν+1)/2) · ν^(ν/2) ) / ( sqrt(νπ) · Γ(ν/2) · ν/2 ) · x^(−ν)
— a power law. The probability decays polynomially, so it stays representable as a double far
out into the tail, and it stays informative only if it is never formed by subtracting a
near-one quantity from one. A right-tail surface that internally computes 1 − T.DIST(...)
throws away the entire reason it exists.
Special cases with elementary closed forms, useful as exactness probes:
| ν | T.DIST.RT(x, ν) |
|---|---|
| 1 | ½ − arctan(x)/π |
| 2 | ½ · (1 − x / sqrt(x² + 2)) |
| ν → ∞ | 1 − Φ(x) |
| Argument | Meaning | Required |
|---|---|---|
x | The numeric value at which the distribution is evaluated. | Yes |
deg_freedom | ν, "an integer indicating the number of degrees of freedom" (Microsoft). | Yes |
Microsoft's T.DIST.RT page documents no restriction on the sign of x, which is a real
difference from the legacy TDIST spelling. TDIST documents x ≥ 0 and returns #NUM!
below it. If Excel honours the modern page as written, T.DIST.RT(−1, 5) is a number greater
than a half. That is a specific, cheap probe, and it appears on the list below.
The page describes deg_freedom as an integer but does not say what a non-integer value does.
The T.INV and T.INV.2T pages document truncation for the same parameter; these three
T.DIST* pages do not.
The numeric slots take ordinary to-number coercion; see Coercion and lifting.
Returns Number, a probability in (0, 1).
x = 0 gives exactly ½ for every ν, by symmetry.x gives a small probability that remains meaningful — the power-law tail
means T.DIST.RT keeps returning distinguishable values in a range where
1 − T.DIST(x, ν, TRUE) has already collapsed to zero. This is the intended use.x gives a value approaching 1 from below, where the other member of the
pair (T.DIST, cumulative) carries the accuracy instead. The two surfaces are accurate in
opposite halves of the line; neither is a superset of the other.T.DIST.RT(x, ν) + T.DIST(x, ν, TRUE) = 1 and
T.DIST.RT(−x, ν) = T.DIST(x, ν, TRUE) are exact mathematically. Whether Excel's published
bits satisfy them is exactly the kind of metamorphic question a suite should settle, and no
suite exists.Note also that this surface is one of the two on this page's module carrying an open upstream
defect stream, BUG-FUNC-021, whose title names a statistical numeric exactness drift. The
Handbook cites the stream by name; it does not restate its contents or its figures.
As documented on Microsoft's T.DIST.RT page:
| Error | Documented condition |
|---|---|
#VALUE! | Any argument is nonnumeric. |
#NUM! | deg_freedom < 1. |
No documented #NUM! for negative x — again, unlike the legacy TDIST. Errors in either
argument propagate under the universal coercion rule. The Handbook has not verified any of this
against Excel.
The whole engineering content of a right-tail distribution function is: never form it by
subtraction. Written as 1 − F(x; ν) in double precision, every value below about 2^-53
relative to one is gone, so the surface would saturate at zero for moderate x and stay there.
Computed directly as ½ I_{ν/(ν+x²)}(ν/2, ½), it stays accurate to relative precision as far out
as the power-law tail goes.
The reduction to the incomplete beta is the standard one; the continued fraction of Numerical
Recipes' betacf, with the reflection I_z(a,b) = 1 − I_{1−z}(b,a) applied so that the fraction
is always evaluated on its fast-converging side, is the canonical route. Cephes' stdtr and
Boost.Math's students_t_distribution (built on ibeta/ibetac, where the ibetac
complement entry point exists for exactly this reason) are the two implementations to read. The
existence of a separate complement entry point in a serious library is the same design decision
Excel made by publishing T.DIST.RT as its own function.
For integer ν, A&S 26.7.3–26.7.4 give finite closed forms in arctan and powers of sine and
cosine, and there is a companion recursion for the tail area. They are exact in exact arithmetic
and lose digits for large ν in floating point; a switch on integer ν is defensible but has to
name its crossover.
Argument reduction has one subtlety worth stating: the beta argument z = ν/(ν + x²) needs care
when x² overflows or when ν is huge. Computing it as 1/(1 + x²/ν) — or, better, keeping
the complement x²/(ν + x²) and calling the complementary beta — avoids both the overflow and
the loss of the small quantity.
None of this is a claim about Excel's internals. The Handbook does not know Excel's algorithm.
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.
T.DIST.RT · 4 lines · calc-func/src/catalogue/distributions.rs on GitHub41 t_dist_rt "T.DIST.RT" (2, 2) [V "x", V "deg_freedom"] |s, a, sv| {
let [x, df] = nums::<2>(s, a)?;
out(s, cft::t_dist_rt_kernel(x, df))
}
nums catalogue/distributionstruncate_positive_integer ported/chi_f_t_familyvalidate_nonnegative_x ported/chi_f_t_familyt_dist_rt_kernel ported/chi_f_t_familybinary_with ported/excel_numericexcel_x87_add ported/excel_numericexcel_x87_mul ported/excel_numericexcel_x87_mul_add ported/excel_numericmul ported/excel_numeric/x87add ported/excel_numeric/x87bratio_ftoi ported/special_math_commonbratio_spmpar1 ported/special_math_commonbratio_exparg ported/special_math_commonbratio_esum ported/special_math_commonbratio_esum20 ported/special_math_commonbratio_alnrel ported/special_math_commonbratio_rlog1 ported/special_math_commonbratio_gam1 ported/special_math_commonbratio_gamln1 ported/special_math_commonbratio_gamln ported/special_math_commonbratio_algdiv ported/special_math_commonbratio_bcorr ported/special_math_commonbratio_gsumln ported/special_math_commonbratio_betaln ported/special_math_commonbratio_betaln_60 ported/special_math_commonbratio_erf_nswc ported/special_math_commonbratio_erfc1 ported/special_math_commonbratio_rexp ported/special_math_commonbratio_psi ported/special_math_commonbratio_fpser ported/special_math_commonbratio_apser ported/special_math_commonbratio_bpser ported/special_math_commonbratio_bup ported/special_math_commonbratio_brcomp ported/special_math_commonbratio_brcmp1 ported/special_math_commonbratio_bfrac ported/special_math_commonbratio_bgrat ported/special_math_commonbratio_grat1 ported/special_math_commonbratio_basym ported/special_math_commonbratio ported/special_math_commonNo implementation has been published with a Handbook test suite for this function.
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 build | Platform and CPU | Captured inputs |
|---|---|---|
| 20131 | Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics | 6 |
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.
Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics
6 captured inputs are indexed for this environment. Capture dates: 2026-07-16 to 2026-07-16. This is a reading count, not a comparison with another build.
TDIST is the legacy spelling, and this is the one place in the t family where the
Handbook holds recorded evidence about the pairing. The Handbook's alias-pairing record
EV-DIST-0011 places TDIST and T.DIST.RT among five legacy/modern forward-CDF pairs found
to publish the same results everywhere the recorded battery probed them. Two cautions travel
with that, and the record states both: it is an Excel-versus-Excel identity, so it transfers
no pass rate onto either surface, and it covers forward CDFs only — no inverse pair has ever
been probed for identity. Note also that TDIST(x, ν, 1) is the corresponding call: TDIST
carries a tails argument, and tails = 2 corresponds to T.DIST.2T instead.x ≥ 0,
T.DIST.2T(x, ν) = 2 · T.DIST.RT(x, ν) exactly. Whether the two Excel surfaces satisfy that
in published bits is unprobed and is the sharpest cheap probe on the pair.T.INV.RT — the right-tail inverse is spelled
T.INV(1 − p, ν), which itself throws away precision for small p and is a real gap in the
surface set rather than an omission this page can paper over.T.TEST and the regression p-values are the main consumers of this surface in practice.No named variants are recorded yet.
Suggest a correction or contribute an implementation · For agents