PERCENTRANK Function (LibreOffice Calc)
LibreOffice Calc PERCENTRANK ranks and interpolates values in a sample, including ties, endpoints and optional significant-digit rounding.
Verification status: Official release source and independently calculated examples for PERCENTRANK were reviewed. No new LibreOffice Calc application execution is claimed for this guide; the stated version and example limits still apply. How formula examples are checked
Quick answer: For the values 10, 20, 30, 40, 50, 60, 70 in A2:A8, =PERCENTRANK(A2:A8;20) returns approximately 0.167. Format the numeric result as a percentage to display its relative position.
Availability and version history
- Introduced: First release not established. The LibreOffice 3.3 function appendix documents this name; that establishes historical presence, not its introduction.
- Supported in: LibreOffice 26.8.1.1; no final supported release established.
- Scope: Desktop Calc. Examples use English function names and semicolon argument separators; the numeric contract is release-specific.
- Checked: October 14, 2026. Retained official sources and independent mathematics checked. No new LibreOffice Calc execution is claimed here.
Syntax and product-specific precision
=PERCENTRANK(Data; Value [; Significance])
Data and Value are required. Significance is optional, defaults to 3, is floored, and must be at least 1. It controls significant digits, not decimal places. For example, 1/6 becomes 0.167 at the default precision; Significance=5 gives 0.16667. Pinned evaluator.
The function sorts the usable sample values internally and locates Value between the smallest and largest observations. Values outside that span are rejected rather than extrapolated. The sample can be unsorted, but a consistently documented reference population is still essential for interpreting the result.
Reproducible worksheet
Enter A as a distinct seven-value sample and B as a seven-value sample with three tied 20s.
| Row | A | B |
|---|---|---|
| 2 | 10 | 10 |
| 3 | 20 | 20 |
| 4 | 30 | 20 |
| 5 | 40 | 20 |
| 6 | 50 | 40 |
| 7 | 60 | 50 |
| 8 | 70 | 60 |
The references below are independently computed. The rounding shown is part of the function’s default three-significant-digit contract.
| Formula | Expected result, approximately |
|---|---|
=PERCENTRANK(A2:A8;20) |
0.167 |
=PERCENTRANK(A2:A8;25) |
0.25 |
=PERCENTRANK(A2:A8;10) |
0 |
=PERCENTRANK(A2:A8;70) |
1 |
=PERCENTRANK(A2:A8;40) |
0.5 |
=PERCENTRANK(B2:B8;20) |
0.167 |
=PERCENTRANK(B2:B8;30) |
0.583 |
=PERCENTRANK(B2:B8;60) |
1 |
For the distinct sample, an exact match at zero-based sorted position i has rank i/(n−1). Thus 10 maps to 0, 40 to 0.5 and 70 to 1. The value 25 falls halfway between 20 and 30, yielding rank 1.5/6=0.25.
Ties are not averaged ranks
For B, the exact value 20 uses the first tied position, yielding 1/6 before any rounding. It does not average all three positions and is not simply the fraction of observations at or below 20. A value of 30 interpolates between the final 20 and 40, giving 3.5/6 before rounding. Rank/interpolation logic.
This distinction also affects repeated maxima. In a separate sample containing only 10, 20, 20, the exact value 20 has rank 0.5, rather than 1. A sample consisting of a single matching observation returns 1. These are implementation conventions; do not infer that every maximum always gets 100% regardless of ties or sample size.
Practical interpretation and display
Use percentage formatting for a readable percentile position: 0.25 becomes 25%. Do not multiply by 100 and also apply percentage formatting, which would display 2500%. Preserve a numeric result so it can be sorted or used in comparisons.
For a threshold analysis, explicitly select sufficient Significance, since a rounded result can cross a cutoff. For example, =PERCENTRANK(A2:A8;20;1) gives 0.2, while the five-digit result is 0.16667. Cell number formatting only changes display; Significance changes the returned value.
Advanced cautions and related concepts
A percentile rank locates an observed value within this chosen sample. It is not a probability model for a future observation, and it should not be compared across groups with different reference populations without explaining that difference. A percentile function answers the inverse kind of question: which value lies at a specified percentile. Ties and rounding mean a rank-to-percentile round trip need not recover the original value exactly.
Use numeric observations and inspect missing or text entries before ranking. An empty numeric sample, an out-of-range Value or invalid Significance is not a meaningful zero-percent result. Keep those failures visible instead of concealing them with IFERROR(…;0).
Official evidence and calculation scope
The numerical references were recomputed independently against the retained release contract. Native application execution, import paths and locale behavior are not newly verified by these reference calculations.