Matching Arrow Weights

If one is shooting at a distance L (say 70m, the Olympic distance), roughly how closely must the arrows be matched in weight to guarantee that a perfect shooter can make a group of them land within a vertical distance H (perhaps half an inch)?

As we will see, matching to one grain (around 65mg) is a good idea, despite the fact that this seems like a tiny amount of weight (indeed, it is at the limit of the typical arrow scale's ability to measure).

As always, if you happen to observe any mistakes on my part, please be so kind as to tell me, so I can fix them!


If we ignore air resistance, variation in arrow spine, and many other important considerations of arrow dynamics, slow arrows at long distance (that's Olympic archery) need  to be matched to about one grain (that's about 65mg)!  Fast arrows at close distance (that's indoor 20 yard "spot" shooting) need to be matched only to perhaps six grains.

It is relatively simple to understand matching arrow weights, as is shown below.  In particular, you can calculate the numbers for your own particular equipment and requirements!  (Look for the boxed equations.)

At some point I will add drag into this model, and write a second web page on the topic of spine variation in arrows.

How Much can Arrow Speed Change?

The height of an arrow at some time t is given by this equation, where vy is its vertical launch velocity, and g is the acceleration due to gravity:

y[vy_, t_]:= vy t - (1/2) g t^2

The amount of time to cross a distance L to a target is given by L/vx, where vx is the arrow's horizontal velocity (preserved throughout flight).  So, the impact height is roughly:

y[vy, L/vx]

(usually around 0).  If the arrow is made slightly heavier, it will move a bit slower (at velocity 1-a), and we define H as the extra drop at impact that will be manifest as a vertical spread on the target:

H == y[vy, L/vx] - y[vy(1-a),L/(vx(1-a))]

Given that a is very small (we're looking at tiny changes in mass and speed), we can take a series expansion to get H:

H == Series[%[[2]], {a,0,1}]



Think of the above equation as follows:  You pick the limit of H that you view as tolerable, give L (the distance to target), g (= 32m/s^2), and vx (this is close to what your chronometer will report for your arrow speed) and calculate a, the maximum permissible variation in arrow speed.

How much can the Mass Change?

In our previous section we enable the arrow velocity to change by (1-a), where a is a small number.  Now, we need to relate a change in mass to a change in velocity, where we will play the same game, and let the mass change by (1+b), where b is small.

The energy of an object is given by:

ke[m_,v_] := 1/2 m v^2

For archery, we pretend that the bow shoots both the arrow (m) and a "virtual mass" (k) at the same speed (v).  We describe how to calculate k in the following section, but this is a term that accounts for the fact that some energy is kept inside moving pieces on the bow (the limbs, in particular).

ke[m + k, v] == ke[m (1 + b) + k, v (1 - a)] /. v->1

For small values of a:

Simplify[Solve[%, b]/. a^2 -> 0][[1,1]]
Series[b /. %, {a, 0, 1}]

We can substitute for a and multiply by the arrow weight (m) and determine the change in weight that we permit given your choice of H:

deltaM -> m Normal[%] /. %5

The Virtual Mass of a Bow

The simplest "reasonable" model of a bow says that the energy put into the draw goes into the kinetic energy of the arrow, as well as a "virtual mass" that is used to conserve energy.

The amount of energy put into recurve bow limbs (call it frec) is found roughly as follows, where fmax is the peak draw force and d is the distance of the pull (where the brace height counts as d=0), and we assume that the limbs are linear (d <= dmax), with dmax being the maximum distance the string is pulled back.

frec[x_]:= (fmax / dmax) x
work[F_,xmax_] := Integrate[F[x], {x, 0, xmax}]

The energy of the draw goes into the arrow (of mass m), and a (fake) "virtual mass" (k) that makes energy conservation "work."  It is important to know the virtual mass for a given bow as it is an important parameter for many equations.

work[frec, dmax] == ke[m + k, v]

So we can easily solve for the virtual mass:


To make this easy to use in practice (in archery draw length is measured in inches, draw weight in pounds, and velocity in fps):

Convert[Inch PoundForce / (Foot / Second)^2, Grain]

A 68" Hoyt AeroTec that I measured has fmax=38#, dmax=18", v=199fps, and m=306gr, so the virtual mass is given by:

-306. + (18768.2) 18 38 / 199^2

I was told that this number is around 100gr (I suspect that this is probably for compound bows, and not recurves), but perhaps the Hoyt FX limbs are "fast," or the measurements (particularly of peak draw weight) are not correct.  (Fast limbs are defined to have a low virtual mass.)  Note that the arrow is just over 29", very close to the AMO draw length, but it only gets pulled back about 18".  In fact, think of your AMO draw length minus 1.75" (to get your actual draw length) minus the brace height...  this should be something around 18".


I worked out two examples with numbers that I found "reasonable."  I'm not sure what value to put in for the virtual mass of a typical compound bow; perhaps I should measure my Hoyt UltraTec at some point....

If you use these equations, be careful with your units.  If you're not sure what it means to be "careful with your units," email me your details and I am delighted to do your computation.

70m Olympic Example

Let's demand that the arrows can spread 2cm, and imagine the target at 70m, with an arrow at going at 60m/s,

%11 /. {H->0.020, vx->60, g->9.8, L->70, m->306, k->20}

(In passing, the Olympic bow's clicker is so important for keeping arrow velocities the same [among other reasons]!)

18m Indoor Spot Shooting Example

%11 /. {H->0.005, vx->76, g->9.8, L->18, k->40, m->306}

Kleanthes Koniaris, email.