Skip to content
Calc.

MIDI Velocity & Dynamics Calculator

Convert classical dynamic markings (pp, mp, ff, etc.) into MIDI velocity values (1–127) with accent and beat-position weighting, plus the humanization range to randomise around it.

Last updated: September 2026

Fill in the required fields to see your result.
Compare 3 scenarios

Formula below · 2 sources (aes.org, Wikipedia) · Updated Sep 2026

Compare with similar

About this calculator

MIDI velocity is an integer from 1 to 127 representing how hard a note is played. Musical dynamics map roughly to velocity ranges: pp ≈ 20, p ≈ 40, mp ≈ 60, mf ≈ 80, f ≈ 100, ff ≈ 115. The formula here is: velocity = clamp(1, 127, round(dynamicMarking × accentMultiplier × positionFactor)), where the position factor is 1.0 for a downbeat, 0.9 for a strong beat, 0.8 for a weak beat and 0.7 for an off-beat. The accentMultiplier boosts stressed notes. The result is the centre velocity; the Humanization Amount gives the random spread to apply around it in your DAW, ±(humanization/2)% (for example ±5% at 10%), so each note lands within that window. The clamp ensures output stays within MIDI's valid range.

How to use

Set dynamicMarking = 80 (mf), accentMultiplier = 1.2 (accented note), humanization = 10% and Note Position = Downbeat (1.0). Step 1: Base = 80 × 1.2 = 96. Step 2: Position factor 1.0 → 96 × 1.0 = 96. Step 3: velocity = round(96) = 96, within 1–127. With 10% humanization, randomise each note within ±5%, about 91–101. The same note on an off-beat (0.7) gives round(96 × 0.7) = 67.

Frequently asked questions

What MIDI velocity values correspond to standard musical dynamic markings?

There is no single universal standard, but widely used mappings are: ppp ≈ 10–15, pp ≈ 20–30, p ≈ 35–45, mp ≈ 50–65, mf ≈ 70–85, f ≈ 90–105, ff ≈ 110–120, fff ≈ 120–127. DAWs like Logic Pro and Sibelius use slightly different internal scales. What matters most is the relative difference between dynamics rather than absolute values. Programming a gradual crescendo means incrementally raising velocity across a phrase, not jumping between fixed numbers.

Why should I add humanization to MIDI velocity in music production?

Perfectly uniform MIDI velocities sound mechanical and lifeless because real musicians never strike every note with identical force. Subtle random variation of ±5–15% on velocity (and also timing) is the key to making programmed performances feel natural. Most DAWs have a built-in humanise function, but this calculator lets you preview and control the exact amount of variation before committing. Even classical piano pieces benefit from humanization — the ear is extremely sensitive to robotic regularity in velocity.

How does the accent multiplier work when programming drum patterns in MIDI?

In a standard 4/4 drum groove, beat 1 and beat 3 are typically the strongest hits, beat 2 and beat 4 (the backbeat) are accented differently, and off-beats are softer. Applying an accent multiplier greater than 1.0 (e.g., 1.3) to downbeats and 0.9 to weaker beats creates the push-and-pull feel of a live drummer. In this calculator, setting accentMultiplier = 1.3 for snare backbeats and 0.85 for ghost notes dramatically improves groove. Professional MIDI drum libraries layer velocity-switching samples, so getting velocity right also triggers more realistic sample layers.

Related calculators

Sources & references