KURT Function (LibreOffice Calc)
Learn the KURT function in LibreOffice Calc: Returns the kurtosis of a distribution.
Verification status: Official documentation referenced; example outcomes independently reasoned or arithmetically checked where stated. Not executed in LibreOffice Calc. How formula examples are checked
Historical validation scope: Native observations refer to saved LibreOffice Calc 25.2.3.2 Linux evidence dated 13 October 2026 at 00:06 UTC. This later review checked all artifact hashes and all 60 ODS/result pairs, and independently recalculated the series and sample-kurtosis examples. Calc was not rerun.
KURT measures the excess kurtosis of a numeric sample. It helps describe the shape of a distribution in terms of the relative weight of its tails and extreme observations. A value near zero is compatible with the reference kurtosis of a normal distribution, positive values indicate greater excess kurtosis, and negative values indicate less. A single KURT score is not a test for normality, and a small or unrepresentative sample can make it unstable. [S1; E1]
Validation scope (13 October 2026): All results marked native-tested were calculated in LibreOffice Calc 25.2.3.2 (Linux) and checked against a separately implemented Python corrected-sample excess-kurtosis formula. The current LibreOffice online Help displays 26.8, a version not executed for this manuscript. Excel and Google Sheets were checked against their documentation, not executed.
Syntax and exact argument requirements
=KURT(Argument1 [; Argument2 [; … ; Argument255]])
Argument1 is required as a function argument; additional arguments are optional. They may be values, cell references, or ranges. The official English Help allows up to 255 argument slots, but at least four numeric observations are needed to calculate a usable kurtosis. One argument such as A2:A11 can contain ten valid numbers; you do not need ten separate arguments. No argument has a documented default value. [S1]
| Input | What to expect in Calc 25.2.3.2 |
|---|---|
| Four or more varying numeric observations | KURT computes a corrected sample excess kurtosis. |
| A range with text or genuinely empty cells | Text and empties were ignored in local diagnostic cases, matching the official Help note. |
Direct nonnumeric text argument such as "no" |
Native error Err:504 in this test (do not confuse with a text cell inside a range). |
A range with Boolean TRUE() |
Native test counted TRUE as 1; do not assume Excel’s documented behavior matches. |
| Fewer than four numeric values | Native #DIV/0! (error 532). |
| Four identical values | Native #DIV/0! (zero sample variance). |
The function displayed in English-language Calc is KURT (not a separately generated KURTOSIS page). ; is the argument separator used in the LibreOffice English Help and the saved tests. Depending on installed formula locale, decimal symbols/separators can be different; preserve the function name while adapting syntax to the Calc formula editor’s settings. [S1; N1]
What KURT computes, and what it does not
The calculation is corrected sample excess kurtosis rather than the unadjusted fourth standardized moment. If x̄ is the mean, n is the number of included numeric observations, and s² = Σ(xᵢ−x̄)²/(n−1) is the sample variance, the formula checked against Calc was:
KURT = [n(n+1)/((n-1)(n-2)(n-3))] × [Σ(xi−mean)^4 / s^4]
− [3(n−1)^2/((n−2)(n−3))]
This is the conventional bias-adjusted Fisher–Pearson sample excess-kurtosis estimator used for the independent verification in this package. The correction terms explain the minimum of four observations and why simply taking the fourth moment divided by the squared population variance would produce a different number. [E1; N1]
Interpretation caution: Excess kurtosis is especially affected by unusual observations and tail behavior. It cannot by itself establish that a distribution is or is not normal, nor should a large positive result be described solely as a taller central peak. Check the data quality and sample size first. [E1; N1]
Example 1: copy ten values and calculate KURT
Enter this data down column A in a new sheet:
| Cell | Number | Cell | Number |
|---|---|---|---|
| A2 | 3 | A7 | 4 |
| A3 | 4 | A8 | 5 |
| A4 | 5 | A9 | 6 |
| A5 | 2 | A10 | 4 |
| A6 | 3 | A11 | 7 |
In B2, enter:
=KURT(A2:A11)
Native observed result: approximately -0.151799637208415. The independent corrected sample formula gave the same value within floating-point tolerance. Microsoft provides the same ten-number example and a rounded result of -0.151799637 for Excel; this does not imply all input-handling rules are identical. [E1; N1]
For this data, the kurtosis is slightly negative. That number is a descriptive statistic for the ten supplied observations, not a probability of normality or of any particular future outcome.
Example 2: four, five, and six observations
The smallest usable numeric sample contains four varying observations. These were native-tested:
| Input formula | Result in Calc 25.2.3.2 | Interpretation |
|---|---|---|
=KURT(1;2;3;4) |
-1.2 |
Four evenly spaced observations. |
=KURT(1;2;3;4;5) |
-1.2 |
Adding a fifth evenly spaced value retains this sample’s score. |
=KURT(2;2;2;10) |
4 |
One unusually large value strongly changes excess kurtosis. |
=KURT(1;1;1;1;4) |
5 |
One high value among repeated low values. |
=KURT(10;10;10;20;20;20) |
-3.3333333333 |
Two equally repeated clusters. |
These outputs were also independently calculated using the sample formula above. One number on its own should not drive business, scientific, or financial decisions; inspect a histogram/plot and investigate potential outliers first. [N1]
Example 3: data cleaned from a CSV export
Suppose A2:A6 contains 1, 2, a text label n/a, 4, and 5. Use:
=KURT(A2:A6)
In the native test, the text value was excluded, and the result was -3.3, matching the independent KURT value for [1,2,4,5]. Replacing the text label with a truly blank cell gave the same output in Calc 25.2.3.2. Therefore, check that a missing measurement is not accidentally stored as zero, which would count as real data and change the statistic. The official Calc Help explicitly says text and empty cells within a range are ignored. [S1; N1]
For a quick audit of how much data you actually have, use COUNT on the same source range. If you need to distinguish genuine missing entries from zeros, keep a separate data-quality column rather than silently replacing every blank with zero.
Example 4: survey results, sales figures, and skewed samples
KURT works on both positive and negative observations. Sample datasets that were native-tested include:
| Dataset | Native observed excess kurtosis |
|---|---|
[5,7,9,12,14,20,21] |
-1.417542882602 |
[-3,-2,1,2,5,9] |
-0.363 |
[0,1,1,2,4,7] |
0.991312096235 |
[0,0,2,3,4,5,7] |
-0.822 |
These numbers describe different datasets, not a ranking of performance or reliability. For analysis, pair KURT with AVERAGE, STDEV, and MEDIAN as appropriate. Inspect the actual values (especially extremes) rather than treating kurtosis as an all-purpose data-quality indicator. [N1]
Advanced use: compare rolling groups consistently
If the cells across B2:M2 contain successive observations for a single group, enter in N2:
=IF(COUNT(B2:M2)>=4;KURT(B2:M2);"")
Copy that formula down for additional groups. COUNT excludes text and blanks, avoiding an error when fewer than four numeric observations are available. Upstream errors may still propagate. This guard does not guarantee success: a group containing four or more identical numbers still has zero variance and produces #DIV/0!. To test that as well, use a descriptive STDEV check:
=IF(COUNT(B2:M2)<4;"";IF(STDEV(B2:M2)=0;"";KURT(B2:M2)))
For a wider range or variable-size source, prefer a helper field and a careful examination of missing values; four data points may meet the mathematical minimum but can be unstable for inferential interpretation. The guard formulas are documentation-based constructions using verified existing Calc function names and source paths; they were not among the 16 native numeric KURT assertions in this run. [S1; N1]
Why not substitute VAR, STDEV, or SKEW?
VAR measures sample variance, STDEV its square root, and AVERAGE the sample mean. Those are not interchangeable with a fourth-moment statistic. SKEW measures asymmetry.
Common errors and remedies
| Symptom | Local native observation (Calc 25.2.3.2) | Remedy |
|---|---|---|
#DIV/0! / error 532 |
Three numeric values, four identical values, or a text-only range | Provide at least four varying numeric observations and check sample variance. |
Err:504 |
A quoted text argument, including =KURT(1;2;3;"4") |
Convert the text to actual numeric cells; do not assume Excel’s direct-argument text-coercion rules apply. |
| Unexpected value after importing data | Text/blank entries inside a range were excluded | Check which data points are numeric; COUNT reveals their count. |
| Unexpected value when TRUE/FALSE appear | In the tested Calc build, TRUE inside a range counted as numeric 1 | Filter or convert Booleans consistently; compare with source program when importing. |
#DIV/0! from range with error cell |
Source cell contained =1/0; error propagated to KURT |
Fix upstream formula error before summarizing. |
| Extremely volatile estimate | Only a few data points or one extreme outlier | Inspect sample size, plots, and repeated measurement groups. |
Cross-program pitfall: Microsoft documents that direct logical values and numeric-looking text can count in Excel’s argument list, while logical values inside Excel cell references are ignored. In native Calc 25.2.3.2, a quoted numeric text direct argument produced Err:504, and a TRUE cell inside a range contributed 1. These input-handling differences were observed in Calc and contrasted against Microsoft’s documentation, not demonstrated by executing Excel. Google Sheets says text inputs are ignored; it was not executed. [E1; G1; N1]
Compatibility and edition scope
| Application | Documentation check | Execution check |
|---|---|---|
| LibreOffice Calc 25.2.3.2 (Linux) | Official function syntax and threshold, text/blank handling | 16/16 independent numerical assertions passed, plus 13 recorded diagnostics. |
| LibreOffice online Help, label 26.8 | Says at least four values; max 255 argument positions; range text and blanks ignored | 26.8 not executed. |
| Microsoft Excel | Official KURT documentation gives corresponding sample kurtosis formula and example; direct-argument text/Boolean behavior may differ | Not executed. [E1] |
| Google Sheets | Official KURT help describes syntax, accepts arbitrary additional argument count, and says text is ignored | Not executed; do not assume identical error/Boolean behavior. [G1] |
Use the canonical English Calc function name KURT. The displayed formulas use semicolons, while English-language Excel/Google examples generally use commas. No unsupported historic version-introduction date, ODF internal namespace, or locale-specific function-name translation is asserted here. [S1; E1; G1]
Verification method and supporting source records
A real .ods workbook was created in LibreOffice Calc 25.2.3.2 and recalculated using the installed UNO engine. The KURT numeric assertions covered 16 different datasets, including negative values, ties, data with zeros, outliers, and an offset of one million. A separate Python implementation of corrected sample excess kurtosis produced the expectations; all 16 were numerically consistent within the recorded tolerance. Thirteen diagnostic formulas recorded source text/blank/Boolean handling and error codes without mislabeling them as independent numerical passes. This happened 13 October 2026 (UTC). The scripts, workbook, and raw diagnostic JSON are included in the saved dated evidence. No Excel or Google Sheets runtime testing was performed. [N1]
Dated official references (all accessed 13 October 2026)
- [S1] LibreOffice Help — Statistical Functions Part Three, KURT: official syntax; minimum four numeric observations; max 255 argument positions; treatment of text/blank cells within a range. Online page displays 26.8 Help.
- [E1] Microsoft Support — KURT: formula and Excel’s documented input handling, sample data, errors.
- [G1] Google Docs Editors Help — KURT: Sheets syntax and text handling.
- [N1] Local independent verification:
native-results.json,run_seriessum_kurt_native.py, andSERIESSUM_KURT_Calc_native_tests.odsin the saved dated evidence. Method: native execution plus independent Python calculations, not documentation-only testing.