How to get a running count of occurrences
✓ Verified in LibreOffice 25.8.7.3 ✓ Verified in Google Sheets (2026-08-30)Number each appearance of a value as it recurs down a column — 1st, 2nd, 3rd time seen.
The formula
| App | Formula | Notes |
|---|---|---|
| Excel (desktop) | =COUNTIF($A$2:A2,A2) | Put it beside the first row and fill down — the expanding range does the work. |
| Google Sheets | =COUNTIF($A$2:A2,A2) | Identical. |
| LibreOffice Calc | =COUNTIF($A$2:A2,A2) | Identical. |
How it works
The trick is the half-anchored range $A$2:A2: the start is locked but the end grows as you fill down, so each row counts occurrences of its own value from the top down to itself. By row 4, "apple" has appeared twice, so its running count is 2. Useful for numbering duplicates, making unique keys (=A2&"-"&COUNTIF($A$2:A2,A2)), or finding each value's first appearance (running count = 1).
Verified, not just documented
We ran =COUNTIF($A$2:A4,A4) in LibreOffice 25.8.7.3 (headless, with forced recalculation) and it returned 2 — exactly the expected result. We then ran the same formulas in Google Sheets, executed 2026-08-30: a formula-only workbook goes into Google Drive, which converts it to a Sheet and recalculates every formula with Google’s own engine, and comes back out as .xlsx carrying the values Google computed. It returned 2 for the worked example, the same value LibreOffice produced. Both engines’ numbers on this page are executed results. The Excel formula follows Microsoft’s official documented syntax — we do not run desktop Excel.
Functions used
COUNTIF — see full Excel, Google Sheets & LibreOffice compatibility for each.
Related recipes
- How to check if a value exists in a list
- How to count cells that contain specific text
- How to count cells greater than a value
- How to count cells above the average
- How to count cells not equal to a value