1. Home
  2. How accurate is the scoring?

Measurement

How accurate is the scoring?

Updated 27 August 2026

The score comes from the timestamp carried by the MIDI message itself — attached as the message arrives from your kit, not when the app gets round to reading it. It only counts if it lands within 50 ms of the app’s own clock; anything stranger is quietly replaced with the local receive time instead of trusted blindly.

Everything downstream is built on that one number: the green window, the orange window, how tight a fast passage gets graded. What follows is the whole chain, including the part of it that is wider than you would expect, and the things a MIDI stream simply cannot show.

Where the timestamp actually comes from

Every MIDI message from your kit arrives carrying a hardware timestamp, applied at the point it reaches your iPad or Mac. iQuantize reads that timestamp rather than the moment its own callback happens to run, which can lag behind the strike for reasons that have nothing to do with your playing.

That stamp is trusted only within 50 ms either side of the app’s own receive time. A timestamp of zero — which some virtual MIDI sources send — or one that drifts further than that is discarded, and the app falls back to the moment it received the message locally.

One more filter sits underneath all of this: if the same drum fires again within 30 ms, it is treated as the pad double-firing, not a second note, and is absorbed without a dot. A much softer hit on the same pad within 80 ms of a stroke — half its strength or less — is the pad reporting the stick’s rebound and is absorbed the same way, unless it lands on a note you still had to play. Those are trigger quirks, not rhythm mistakes, and they should not cost you one. When a pad keeps doing it, the result can point to that pad, so you can check its retrigger settings on the module.

Windows that fit the chart

A hit within ±35 ms of its note scores a green dot. Further out it still counts for that note, as an orange dot, until it sits half-way to the neighbouring note on that side — never tighter than ±60 ms and never wider than ±180 ms. Past that it is red: the note counts as missed and the hit as an extra.

On a dense passage the green window shrinks further, capped to a quarter of the gap between consecutive notes on the same drum, and the orange limit follows the nearest note on any drum. A kick played on the “e” of a sixteenth-note hi-hat line reads as the wrong note, not a late one, while a half-note crash keeps the full width.

The windows are part of the app, not a setting: every player and every chart is judged the same way. Velocity zones and timing calibration are fixed the instant a take starts. Change one mid-take and it applies to your next take; the one you are playing right now cannot be recoloured or rescored underneath you.

Doesn’t a wide window make anyone look good?

It would, if the window were the score. We make that exact complaint about other apps one page over, so here is the answer to it. The windows only decide which note a hit belongs to and the colour of its dot. Timing with the click is measured on every matched hit separately: nothing is deducted within 8 ms of the grid, and every millisecond after that costs the same small amount, up to a full loss at 180 ms. A hit 10 ms out and a hit 70 ms out can both belong to their note, and they do not score the same.

A steady lean costs very little. Sit 15 ms behind the click on every note and the click score loses a few points, because sitting behind the beat is a choice plenty of good drummers make on purpose. Average dead on the beat but scatter widely either side, and it is the scatter that costs you.

Timing stability is the number built for that. It is your own scatter measured against 180 ms, so every millisecond of wobble you take out of your playing shows up there, whatever your average offset. The offset is never hidden from you either: the per-bar map under your result labels the bar in plain figures — 8 notes late (+15 ms) — whatever the click axis decided.

What the score cannot see

A MIDI stream tells you when a drum was hit and how hard. It does not tell you how you got there. Grip, posture, stick height, the angle of a fill — all invisible. Two players can land an identical timestamp with completely different technique, and the score cannot tell them apart.

It cannot judge taste either. Play a fill that was not the one written but arguably better, and the app still scores against the notes it was told to expect. Whether that substitution was a mistake or an improvement is a judgment only a teacher’s ear can make, which is why this is built as a second opinion between lessons rather than a replacement for one.

A skill it could not measure shows no number, never a zero

Every diagnosis needs enough evidence before it is shown at all. Internal pulse — whether your tempo holds once the click drops out — needs two complete bars played with no click after a valid count-in, plus the section that follows and a bar to recover in. Anything thinner comes back as not measured, and the drill that earns it is a separate piece of work.

  • Dynamic range is not scored unless the chart itself asks for real contrast between soft and loud.
  • Limb independence is not scored unless the chart demands hands and feet working against each other — a hands-only groove does not earn a fake 100.
  • When note accuracy on a take falls below 55%, the timing, dynamics and limb diagnoses are all withheld. You cannot read someone’s pocket on a take where the notes did not land in the first place.

A few smaller cases work the same way: a disqualifying mode, too few matched hits, evidence too thin to interpret.

The measurement chain in numbers

Green window
±35 ms
Note window
half-way to the neighbouring note, 60–180 ms
Window settings
none — every player is judged the same way
Dense-chart cap
green: ¼ of the nearest same-drum note spacing
Click-timing loss
none within 8 ms, full at 180 ms
Timestamp trust window
50 ms either side of receive time
Echo debounce
30 ms same-drum retrigger absorbed
Pad rebound
same-pad hit at half strength or less within 80 ms absorbed, unless it lands on its own note
Extra-hit weight
0.5 — about half a missed note

Hear your own numbers

Connect your e-drum kit, play one groove, and see which skills it will judge — and which it refuses to.

Requires an electronic drum kit or a MIDI-capable drum module.

Common questions

Can changing a setting alter the score of a take I already played?

No. Velocity zones and timing calibration are captured the instant a take starts, so a change you make afterwards only affects your next take, never the one you just finished. The timing windows are not a setting at all.

Why does the app sometimes show no number instead of a low score?

Because a low score and no measurement mean different things. If a take did not give iQuantize enough evidence — too few bars without a click, a chart with no real dynamic contrast to judge against — it reports the skill as not measured rather than guessing at a number.

Does the app know if my grip or stick height is wrong?

No. It only sees MIDI: which drum, how hard, and exactly when. Technique, posture and stick height stay invisible to it, which is why it is built to sit alongside a teacher rather than replace one.

Why do the hit windows get narrower on faster songs?

Because a window wider than the gap between notes stops meaning anything. A hit counts for a note only until it sits half-way to the neighbouring note, and the green window is capped to a quarter of the gap between notes on the same drum, so a fast pattern is never graded more loosely than the notes themselves allow.

What happens if I play a different fill to the one written?

It scores against the notes the chart asked for, so a substituted fill reads as missed and extra notes rather than a stylistic choice. Whether it was actually the better musical decision is a judgment only a teacher can make.

Requires an electronic drum kit or MIDI drum module.