Accuracy
Accuracy in osu! is a percentage measure of how cleanly a player hit the objects in a beatmap, calculated by weighting every hit judgement against the maximum value that object could have earned. In osu!standard the formula is (300 x 300s + 100 x 100s + 50 x 50s) divided by 300 x (300s + 100s + 50s + misses), which makes a 100 worth exactly one third of a 300 and a 50 worth one sixth. Each game mode uses its own weighting. Accuracy is one of the inputs to a play's pp value, and the lifetime accuracy shown on an osu! profile is a pp-weighted average of per-beatmap best scores rather than a simple mean.
The formula in each game mode
Accuracy always answers the same question — what fraction of the maximum available hit value did this play actually earn — but each mode fills in that fraction differently.
| Mode | Accuracy |
|---|---|
| osu! | (300 × 300s + 100 × 100s + 50 × 50s) ÷ (300 × (300s + 100s + 50s + misses)) |
| osu!taiko | (GREATs + 0.5 × GOODs) ÷ (GREATs + GOODs + misses) |
| osu!catch | (caught fruits + caught drops + caught droplets) ÷ (all fruits + all drops + all droplets) |
| osu!mania, ScoreV1 | (300 × (MAXs + 300s) + 200 × 200s + 100 × 100s + 50 × 50s) ÷ (300 × all judged objects) |
| osu!mania, ScoreV2 | (305 × MAXs + 300 × 300s + 200 × 200s + 100 × 100s + 50 × 50s) ÷ (305 × all judged objects) |
Two consequences follow from the table. In osu!taiko, drum rolls and spinners are excluded entirely, so hitting or missing them cannot change accuracy at all. In osu!catch there is no timing component: every non-spinner object counts equally and accuracy is simply the proportion of fruits, drops and droplets caught, with bananas excluded because they belong to the spinner object.
A worked example in osu!standard
Take a 500-object beatmap played with 480 300s, 18 100s, 2 50s and no misses. The numerator is (300 × 480) + (100 × 18) + (50 × 2) = 145,900. The denominator is 300 × 500 = 150,000. Accuracy is 145,900 ÷ 150,000 = 97.27%.
The same arithmetic gives a useful sense of scale. On that map, downgrading one 300 to a 100 costs 200 ÷ 150,000 of the total, about 0.13 percentage points. Turning one 300 into a 50 costs about 0.17 points, and into a miss about 0.20 points. Because the denominator is the object count, an identical mistake is worth several times more on a 120-object map than on a 1,500-object one — which is why short, dense maps produce far more volatile accuracy figures than marathons.
Stable and lazer do not count the same objects
In osu!standard, an accuracy figure is client-specific. On the stable client a slider produces a single 300, 100 or 50 judgement for the whole object, based on the proportion of its parts that were hit, and the slider head only has to be tapped inside the widest hit window to count. In osu!(lazer), slider heads are judged like hit circles, and slider ticks and slider tails carry their own accuracy-affecting judgements. The Classic mod exposes a No slider head accuracy requirement setting, described in the client as scoring sliders proportionally to the number of ticks hit, which moves the behaviour back towards stable.
The practical effect is that the same physical performance can report slightly different accuracy on the two clients. An accuracy number is only strictly comparable with another number produced by the same client, mode and mod set.
Profile accuracy is a weighted average, not a mean
The accuracy on an osu! profile is not the average of every play. The server takes the player's ranked scores that carry a pp value, keeps only the best-scoring attempt on each beatmap, orders those by pp from highest to lowest, and takes a weighted average of their accuracies. The n-th entry is weighted by 0.95 raised to the power n − 1 — the same decay used for pp — and the result is normalised by the sum of the weights so that it remains a genuine percentage.
Those weights fall away quickly. The 20th entry carries roughly 38% of the weight of the first, the 50th roughly 8%, and the 100th roughly 0.6%. Profile accuracy is therefore dominated by the accuracy of a player's highest-pp scores. A 100% SS on an easy map barely moves it, because that score sits far down the pp ordering; a sloppy 93% on a big new top play moves it noticeably. Note also that the ordering is by pp, not by accuracy — a high-pp play set at mediocre accuracy is the heaviest single drag on the figure.
What accuracy is not
Accuracy is not consistency. The osu! performance graph reports unstable rate, the standard deviation of hit errors in tenths of a millisecond, and the osu! wiki is explicit that the two are different: a player who hits every object late, but late by a consistent amount, can post a very low unstable rate and poor accuracy at the same time.
Accuracy is also not a grade. On the stable client an osu!standard S is defined by the proportion of 300 judgements, the share of 50s and the absence of misses — not by the accuracy percentage — so two plays with identical accuracy can carry different letters. And accuracy says nothing about combo: a play can be 99% accurate and still have broken its streak a dozen times, which is exactly the kind of play that underperforms on pp.
Accuracy in a tracked session
TrackMyOsu records accuracy on every refresh while a session is open, once a minute, together with the lifetime 300, 100, 50 and miss counts behind it. Because the same fields are stored at session start and session end, a finished session shows the net change in profile accuracy alongside the pp and rank movement.
Watching profile accuracy across a single session is a practical lesson in how slowly a weighted lifetime average moves. A strong session can add several hundred pp while shifting profile accuracy by hundredths of a percentage point, because a new score only carries real weight once it has climbed high in the pp ordering. Session-level accuracy is best read as a trend across many sessions rather than a verdict on any one of them.
See also
- Grades (SS, S, A, B, C, D) — Letter grades D to SS awarded per play; thresholds differ by mode and by client.
- PP (performance points) — osu!'s skill rating: a decaying weighted sum of your best score on each ranked beatmap.
- Combo — A streak of consecutive hits without a break; max combo is the longest streak.
- Top play — One of the highest-pp scores on your profile; best performance keeps one per beatmap.
Related guides
Longer explainers that use this term: browse all osu! guides, or start with Understanding osu! pp, How to read your osu! stats and Star rating explained.
Sources
Definitions follow the official osu! wiki and the ppy/osu source. Session figures come from TrackMyOsu's own tracked-session database.
By carrot12_. Last updated 2026-08-13.
Track your own osu! sessions
TrackMyOsu snapshots your pp, rank and top plays when you start playing, then shows exactly what changed when you stop. Every session is kept permanently. Free, no install, no password — it uses osu! OAuth.