← Back to NextFrag

CS2 Demo Analysis Example: donk on Mirage, Annotated

Updated

What does a demo report actually tell you to practise? Here is a real NextFrag report, read line by line, from a public HLTV pro demo: donk of Team Spirit against Team Vitality on Mirage, the opening map. The analysis covers 691 shots in total. Each section below uses its own sample, so those totals are not interchangeable.

A pro's numbers are not targets. This is an example of how to read your own report, not a judgement of donk's decisions or a recipe for copying his settings. The numbers describe this demo. They cannot explain what he intended, and they do not tell you which choice would have won a duel.

Stopping before the shot

Shots fired while moving: 22.9% of 105 rifle counter-strafe shots were still above 88 units/s. That tile rounds it to 23%.

Too early (moving): 27.1% in Counter-strafe timing, from 380 rifle and SMG shots, using 50 units/s.

Acc: clean vs moving: 17.6% / 11% — hit rate after a clean stop versus while still moving.

I would read the first line as: on the rifle shots where a stop was needed, some were still faster than 88 units/s when the shot fired. It measures speed at firing. The timing row uses a lower line and includes SMGs, which is why its percentage differs. Neither percentage is a count of rounds lost.

At 23% the tile stays green (it is green up to 40%), and this demo raises no stopping card: that card only appears above 45.8%. Green is not a pass mark for every duel either. The number describes the stop, not the result. The hit-rate comparison gives context, but it does not prove that movement alone caused the difference: the shots happened in different fights.

If this were my report: I would replay a few rifle peeks and check whether I fired before settling. I would look for a repeatable timing problem before choosing practice. I would not infer a playstyle or a deliberate trade-off from the percentage. The counter-strafe diagnosis guide explains how to separate firing early from waiting too long.

My ten-minute drill: in offline practice, choose a short sideways peek with a rifle and a fixed aiming point. Move out, tap the opposite direction to stop, then fire. Start slowly enough to feel the order. Alternate sides and gradually return to match pace while keeping that order. Finish by repeating the same peek without a long pause after stopping.

The limit: this sample selects particular movement and weapon situations. It is not every shot in the match, and a successful hit does not retrospectively make the stop clean. In my next demo I would check the same labels and replay similar peeks, rather than treating a lower percentage alone as proof that the drill worked.

Head-level shots: why the average is not enough

Head-level shots: 46% within ±2° of level, from 691 recorded shot pitches.

In Vertical pre-aim angle: Average lean at shot: −0.15° — No steady lean.

That average is practically level. It is tempting to read it as good crosshair height, but shots above and below level cancel out. A near-level average can hide a wide spread in both directions. That is why the report leads with Head-level shots: the share near level answers a different question from the average direction.

The deep-dive verdict here is No steady lean. The report also uses Aiming low and Aiming high for directional lean; none of those verdicts says that every shot was correctly placed. Positive lean points below level and negative lean above it. This small negative average does not establish a persistent high hold.

If this were my report: I would inspect approaches where my crosshair moved vertically before contact. Was I carrying the right height from the previous angle, or correcting in both directions? I would use the crosshair placement diagnosis guide to choose a question, then answer it in the replay.

My ten-minute drill: choose a short route on Mirage in offline practice. Check expected head positions at its corners, then walk the route while setting the crosshair before each peek. Repeat slowly, checking elevation changes and crouched positions separately. Finish at normal pace, keeping the same references rather than snapping upward only when a target appears.

The limit: level is a geometric reference, not proof of aiming at an enemy's head. Stance, distance and elevation change where a head will be. A demo cannot tell whether placement was intentional. For my next report I would compare Head-level shots and review similar approaches; an average even closer to level would not, by itself, show improvement.

Sensitivity: an estimate to check across sessions

Sensitivity estimate

Flick-based estimate (based on 28 flicks)

Undershoot: 63% · Overshoot: 37%

Verdict: Too low · Multiplier: 1.0492×

Confidence: medium — Good sample. More data improves accuracy.

These are classified flicks, not the full shot sample. Undershoot means stopping short; overshoot means going past. Here the direction reads Too low. The report shows the multiplier as 1.0492×. It is an estimate from this match, not advice to change a pro player's settings or to copy the adjustment yourself.

The analyzer needs at least 10 flicks to produce an estimate, 25 flicks for medium confidence and 50 for high. Those labels reflect sample size, not certainty that changing sensitivity will help. With a multiplier available, the report includes Current → Suggested. This demo has no sensitivity or DPI, so this page does not add them.

If this were my report: I would leave sensitivity unchanged and compare the direction across sessions. One match is not enough to change a sensitivity. I would check whether undershoot kept appearing in similar situations, or whether it disappeared in the next match. The sensitivity guide explains the multiplier and why the sample matters.

My ten-minute drill: keep the current settings and practise controlled flicks between fixed targets. Move across, stop, and notice whether the crosshair finishes short or past. Alternate directions and vary the starting angle without chasing speed. Finish with deliberate corrections. Use the session to observe a pattern, then check later demo reports before considering a small settings experiment.

The limit: this is a small slice of a match on a particular map. It does not isolate sensitivity from execution, fatigue or the kinds of fights taken. Medium confidence is useful context, not permission to treat a precise multiplier as a proven fix.

How to read your own report

Start with the label, check its sample, then turn the finding into a replay question. Choose a ten-minute drill only after you see the pattern. Keep the next step small enough to repeat, and compare similar situations in later demos.

This is one match on one map. Numbers move from match to match. Use your own reports to decide what to inspect, practise and recheck. For the wider boundaries, read what demo analysis can and cannot measure.

Upload a demo and read your own report

References

Source: a public HLTV demo of Team Spirit versus Team Vitality, Mirage, opening map. NextFrag analyzed that public demo for donk. This page uses no account history or private match data. The numbers are from that one analysis.