Find the most frequent items

Paste a list and get each unique item back with a count of how many times it appears, sorted by frequency (descending) or alphabetically. Output is `count<tab>item` on each line - paste-friendly for Excel or spreadsheet columns.

Input
Ready
Output
Live

Frequency counting with tab-separated output

The tool tallies each distinct item using a JavaScript `Map`, then emits one line per unique value with the count first, a tab character, then the item. That format pastes cleanly into a two-column spreadsheet (count in column A, item in column B) without any further munging.

Sort by Frequency (default) lists the most common item first, ties broken alphabetically for stability. Sort by Alphabetical orders A-Z by item name with the count along for the ride. Pick based on what question you are answering - "what is the most common?" vs "how often does X appear?".

Case sensitive (off) treats `Apple` and `apple` as the same item. Trim (on) strips whitespace before counting. Both are independent toggles. Blank lines are always skipped - empty items are not counted.

How to use find the most frequent items

  1. 1Paste your list into the input panel
  2. 2Toggle Case sensitive to distinguish case variants (default: off)
  3. 3Toggle Trim to normalise whitespace before counting (default: on)
  4. 4Pick Sort by: Frequency (default) or Alphabetical
  5. 5Output is `count<tab>item` per line - paste directly into a spreadsheet

Keyboard shortcuts

Drive ListShift without touching the mouse.

Shortcut Action
Ctrl ZUndo last input change
Ctrl Shift ZRedo
Ctrl Shift EnterToggle fullscreen focus on the editor
EscExit fullscreen
Ctrl KOpen the command palette to jump to any tool
Ctrl SSave current pipeline draft Plus
Ctrl PRun a saved pipeline Plus

What this counter actually does

Map-based tally with three options.

Tab-separated `count<tab>item` output

Each line is the count followed by a tab character followed by the item text. Pastes cleanly into a two-column spreadsheet without any further parsing.

Frequency descending (default), alphabetical tiebreak

Default Sort by Frequency orders most-common first. When two items have the same count, they sort alphabetically for a stable, predictable order.

Case-insensitive counting by default

Case sensitive off means `Apple` and `apple` are the same item (and the first-seen casing is displayed). On treats them as distinct entries. Pick based on whether case is data or noise.

Trim-aware counting by default

With Trim on, `Apple` and ` Apple ` count as the same item. The first occurrence's original whitespace is not displayed - the trimmed version is.

Blank lines skipped

Empty or whitespace-only lines are not counted. You will not see an empty-string item in the output.

Worked example

Six input lines with three unique items - output sorted by frequency descending.

Input
apple
banana
apple
orange
banana
apple
Output
3	apple
2	banana
1	orange

Settings reference

How each option shapes the frequency output.

Setting What it does Effect on the sample
Sort by: Frequency (default) Most common first, alphabetical tiebreak `3\tapple` / `2\tbanana` / `1\torange`
Sort by: Alphabetical A → Z by item name `3\tapple` / `2\tbanana` / `1\torange` (same order in this sample)
Case sensitive: off (default) `Apple`, `apple`, `APPLE` all count together First-seen casing displayed
Trim: on (default) Whitespace stripped before tallying `Apple` and ` Apple ` collapse into one entry

FAQ

Why is the output tab-separated instead of `item: count`?
So the output pastes directly into a two-column spreadsheet. Count in column A, item in column B. If you need a different format, chain Replace to swap the tab for whatever separator you want.
How are ties broken in Frequency sort?
Alphabetically. Two items with the same count appear in A-Z order among themselves. That keeps the output stable - running the tool twice on the same input gives the same result.
Does case sensitive affect how items display in the output?
With Case sensitive off (default), the first-seen casing of each unique item is displayed. So if your input has `apple, Apple, apple`, the output shows `apple` (the first casing). With on, each casing is its own entry.
What happens to blank lines?
They are skipped before counting. You will not see an empty-string item with a count in the output. Blank lines are not treated as a distinct value.
How is this different from Count list item occurrences?
Same operation and same output format. This page is for the "most frequent" search intent; Count list item occurrences is the same tool with a different SEO name.