Skip to content

Climber catalog: how to use it

The /analytics/users page is a unified catalog of every climber with four ratings ("Mastery", "Explorer", "Current", "Altitude"), counters for ascents, routes, peaks, regions, and altitude categories. With presets, filters, and sorting, this catalog is a convenient way to carve out specific slices: "top form", "altitude athletes", "rising over 90 days", "active newcomers", and so on.

The page is connected to the other analytics sections:

  • /analytics/users/{id} — detailed breakdown of a single climber (history, structure, terrain, links to ascents).
  • /analytics/cohorts — segments with metrics for clubs and teams.
  • /analytics/compare — side-by-side comparison of up to 20 climbers.

If you need to understand what lies behind the rating numbers and why someone is marked "provisional", see the separate guide "How ratings are computed".

Quick presets

At the top of the page is a row of preset buttons. Each preset replaces the current filters and sorting with a pre-selected set of parameters. A tooltip describing the preset is shown on hover and on keyboard focus.

Available presets:

ButtonWhat it shows
Top by MasteryStrongest by technical ceiling. Eligible only.
Top by ExplorerStrongest by route, peak, and region diversity. Eligible only.
Top by CurrentStrongest by current form (recent ascents weigh more). Eligible only.
Top by AltitudeStrongest by altitude experience. Eligible only.
Rising (Current)Notable growth in Current rating over 90 days.
Rising (Mastery)Mastery growth over 90 days (new routes harder than prior ones).
Technical specialists≥50% leading + ≥50% alpine style.
All-roundersTerrain diversity index ≥0.7.
Active in 90 days≥3 successful ascents in the last 90 days.
Altitude climbersHighest peak ≥6000 m.
Geographically diverseAscents in ≥5 different regions.
Experienced but inactiveTop quartile by Mastery with any level of activity.
Route farmers≥10 successful ascents over a year, sorted by repeat ratio (repeaters at the top).
Altitude specialistsHighest ≥5000 m + ≥40% of ascents on snow terrain.

Important notes about presets

  • A preset replaces previously selected filters rather than adding to them. If you need precise manual tuning, open the "Filters" panel.
  • The active preset is highlighted with a distinct fill. Clicking it again does nothing — the preset is already applied.
  • To return to the initial state (no filters, no preset, default sorting), click the "Reset all" button that appears next to the presets while filters or a preset are active.
  • After applying a preset you can open "Filters" and refine the configuration — manual edits remove the highlight from the preset but keep its parameters as the baseline.

Filters

The "Filters" button opens a panel with all fields. A counter next to the label shows how many fields are currently active. If the counter is non-zero, the table below is showing an already-filtered slice.

Filters are split into 6 groups:

  • Ratings: raw and percentile values for the four ratings, eligible_only (hide provisional) and include_provisional (whether to show provisional ratings).
  • Activity: ascents over 30/90/365 days, number of active months, date of last ascent, rating deltas over 90 and 365 days.
  • Diversity: distinct routes, distinct peaks, local/large regions, maximum repeatability (repeat ratio), terrain diversity index.
  • Altitude: minimum highest peak (meters), plus counters by altitude categories 2500+/3000+/4000+/5000+/6000+/7000+/8000+.
  • Style and role: leading share (any and on all pitches), alpine style share, share of ascents without fixed ropes.
  • Terrain profile: dominant terrain type (rock/ice/mixed/snow/mixed-overall) and its minimum share.

Most numeric fields take a min-max range. If the range is invalid (min greater than max), the panel highlights the error and blocks apply.

The "Apply" button at the bottom of the panel closes it and refreshes the table. The "Reset" button inside the panel clears only the draft inside the panel, without touching the applied filters. To reset the entire slice, use "Reset all" on the main page.

Filter state is persisted in the URL (?mastery_raw_min=…&sort=…&page=…). Copy the address bar and send it to a colleague — they will see the same slice.

Table

The table shows up to 25 climbers per page with pagination at the bottom. Columns:

  • User — name and avatar, clickable → climber page.
  • Mastery / Explorer / Current / Altitude — raw rating value.
  • Routes — number of distinct routes the climber has completed.
  • Peaks — number of distinct peaks.
  • Local / Region — number of distinct "local" and "large" regions. Under the hood — an H3 grid at different resolutions. Think of it as: Local ≈ individual gorges/massifs, Region ≈ large geographic areas (Caucasus, Tien Shan, etc.).
  • Highest peak (m) — height of the highest summit climbed, in meters.
  • 5000+ / 6000+ / 7000+ / 8000+ — peak counters by altitude category.
  • Ascents 365d — successful ascents over the last 365 days.
  • Last ascent — date of the last ascent.
  • Provisional — an N/4 badge if some of the climber's ratings are still provisional (not enough ascent diversity has been accumulated).

Clicking a column header sorts the column in descending order. A second click — ascending. A third click removes the sort.

"Distributions" mode

The "Table ↔ Charts" toggle sits at the top. In "Charts" mode, histograms are built for five metrics (Mastery, Explorer, Current, Altitude, highest peak).

Important: the histograms are built not over the full dataset but over the currently loaded page (25–100 climbers). This shows the slice well but not statistics across the whole base — for overall statistics, look at the summary cards above the table.

CSV export

The button in the upper-right corner downloads a CSV of the current slice: all active filters and sorting are respected, but pagination is not — every row matching the filter is exported, up to the server limit. Separator — comma, encoding — UTF-8.

Common errors: "No export permission" (analyst role required), "Too many exports" (per-minute rate limit — wait a bit).

Summary cards

Above the table are 10 aggregates for the current filter:

  • "Total users" — how many climbers fall under the filter.
  • "Eligible" (for each of the four ratings) — how many of them have an eligible rating (i.e. non-provisional).
  • "Medians" for ratings, route counts, peaks, highest peak — to quickly gauge the center of the distribution.
  • "P75 days since last ascent" — 75th percentile of time since last activity. If it is large, most of the subgroup has been inactive for a while.
  • Climber page (/analytics/users/{id}) — deep breakdown of a single account: rating change history, portfolio structure by terrain, top peaks, ascent list with filters. The link is available from the catalog table by clicking the name.
  • Cohorts — if the same slices are needed regularly, turn them into a "cohort": a saved filter + metrics on a dashboard.
  • Compare — pick 2–20 climbers and compare them side by side across all metrics in one table.
  • How ratings are computed — if the numbers in the catalog look strange, this explains the logic.
Climber catalog: how to use it — SummitX