How far can you trust one number, where do you take it from, and is there anything better than G7?
I’ve had measured Cd-Mach curves for 183 modern match bullets (Lapua, Hornady, Berger) lying around for a while, which is finally enough data to go after the questions at the heart of modern youth’s preoccupations.
One: how accurate is a single G7 BC over the supersonic part of the flight, for the usual spitzer boat-tail match bullet? The standard answer is "pretty damn accurate". I wanted a number. Two: the old two-point BC question that comes up every time short-range BC calculations get discussed (Labrabaco and co.). Which near and far velocities give the smallest trajectory error down into transonic, and what do you lose if you only have a good muzzle velocity and a short baseline? Three: could some kind of "G7++" do better than plain G7 for modern VLDs?
1. How good is a single G7 BC?
"G7-ish" needs defining first, because plenty of bullets aren’t. Hunting bullets, AP, FMJ and the like can drag quite differently. My filter was simple. Fit one G7 form factor (same thing as a BC) to each bullet’s measured supersonic curve, and see how far the real curve wanders off it. Under 3% is G7-ish, anything over goes in "other". The 3% line ends up sorting things the way the product names would anyway: Scenar/Scenar-L, BTHP, ELD-M, ELD-X, CX and Aeromatch on one side, Naturalis, AP, FMJ and Sub-X on the other. That gave 183 G7-ish bullets (34 Lapua, 101 Hornady, 48 Berger). Two borderline ones didn’t survive a closer look, so the trajectory runs use 181.
Here’s one of them, a 155gr .308 Scenar, against plain G7 scaled by its best-fit BC:
Close almost everywhere. They split around the transonic hump, no surprise there.
And that’s what a G7 BC is. You take the G7 reference curve, scale it up or down, and hope it lands on top of your bullet’s curve. It won’t, because your bullet has its own shape and its own bumps. The best a scaled curve can do is touch the real one at a single Mach number. There the BC is exactly right. Everywhere else it’s a bit off.
Off in which direction? Depends on the bullet. Move the touch-point from the muzzle down toward transonic and for some bullets the BC that keeps the curves touching goes up the whole way, for others it goes down the whole way. Both kinds are nominally G7-ish. I couldn’t find a rule of thumb for this.
Picking one velocity and solving for the BC that makes the curves cross exactly there, I’ll call Method P (pointwise). If you have a measured drag curve, it’s the obvious way to read a BC off it.
To score a Method-P BC, I fly the full trajectory with it and compare against the trajectory from the bullet’s real drag curve, then squash the differences into one RMSE in mrad. Same unit as your scope clicks, which are usually 0.1 mrad. Everything below is scored from the muzzle down to Mach 1.3, whatever the muzzle velocity, so long-flying bullets don’t get a free pass.
Across the pool, at three muzzle velocities, with the touch-point anywhere between the muzzle and Mach 1.5:
| Muzzle Mach | BC swing, % (typical / worst bullet) | RMSE, best pick, mrad (typical / worst bullet) | RMSE, typical pick, mrad (typical / worst bullet) | RMSE, worst pick, mrad (typical / worst bullet) |
|---|---|---|---|---|
| 2.2 | 2.60 / 6.33 | 0.0021 / 0.0064 | 0.0104 / 0.0301 | 0.0200 / 0.0748 |
| 2.5 | 3.76 / 8.58 | 0.0042 / 0.0122 | 0.0207 / 0.0654 | 0.0457 / 0.1034 |
| 2.9 | 4.57 / 11.07 | 0.0055 / 0.0211 | 0.0218 / 0.1074 | 0.0801 / 0.2021 |
Take Mach 2.5 at the muzzle, which is where a lot of modern cartridges live. Average error is 0.2 clicks. If you got unlucky with the touch-point it’s 0.4, and the single worst bullet in the pool manages 1 click.
Start faster and it gets worse, since the bullet stays supersonic longer and the mismatch has more time to turn into drop. At Mach 2.9 the worst cases sit between 1 and 2 clicks.
So: bad touch-point, fast magnum load, scored all the way to the edge of transonic, and you’re still about one click off. Usually much less. Not bad at all for a scaled copy of somebody else’s curve.
Keep in mind, though, these numbers assume a more or less random touch-point between the muzzle and Mach 1.5. The method doesn’t care which one you pick. The trajectory does.
2. Where should you take a BC from?
Two ways to get a BC in practice. Read it off a known drag curve (Method P), or measure two velocities in the field and back out whatever BC explains the loss in between. Method P first, it’s the simpler one.
If you’re choosing the touch-point on purpose, "best" can mean two things:
- Criterion A: lowest error averaged over the whole flight, muzzle to the end of transonic.
- Criterion B: most accurate at the edge where supersonic turns transonic, which is arguably where it matters most, since that’s where G7 starts getting shaky.
Results over 181 bullets:
| Muzzle Mach | Optimal touch-point, Criterion A | Optimal touch-point, Criterion B |
|---|---|---|
| 2.2 | Mach 1.95 | Mach 1.95 |
| 2.3 | Mach 2.00 | Mach 2.00 |
| 2.4 | Mach 2.05 | Mach 2.05 |
| 2.5 | Mach 2.10 | Mach 2.10 |
| 2.6 | Mach 2.15 | Mach 2.15 |
| 2.7 | Mach 2.20 | Mach 2.20 |
| 2.8 | Mach 2.20 | Mach 2.20 |
| 2.9 | Mach 2.25 | Mach 2.25 |
Same answer in every row. I’m not going to argue about which criterion is better.
The distribution at a Mach 2.5 muzzle, A and B on top of each other:
That’s a sharp spike at Mach 2.1, not some broad bell. It slides with muzzle velocity, from 1.95 at a Mach 2.2 muzzle to 2.25 at Mach 2.9. If you want one value for everything, use Mach 2.1. Right on for mid-range loads, close enough at both ends.
So what does a good pick buy you? Here every bullet gets its BC from Mach 2.1, and that one BC is used at every muzzle velocity, scored muzzle to Mach 1.3:
| Muzzle Mach | RMSE, mrad (typical) | RMSE, mrad (best 5%) | RMSE, mrad (worst 5%) | RMSE, mrad (worst observed) |
|---|---|---|---|---|
| 2.2 | 0.0089 | 0.0012 | 0.0172 | 0.0208 |
| 2.5 | 0.0076 | 0.0026 | 0.0191 | 0.0366 |
| 2.9 | 0.0258 | 0.0038 | 0.0774 | 0.1247 |
Under a tenth of a click for a typical bullet at normal muzzle velocities, a quarter of a click at Mach 2.9. That’s about the limit of what one number on top of a reference curve can give you.
Outliers exist. A few of the less G7-ish bullets, launched above 975 m/s (3200 fps), pick up a full click by the time they reach transonic even with the best touch-point. Rare, but if you load something fast and odd, now you know.
At this point the attentive reader objects that only a total nerd (am I?) would compute a BC like this when he already has the full Cd-Mach curve, which Method P needs to work at all. Fine. Nobody has a measured drag curve. People have a chronograph, a rangefinder and a muzzle velocity.
Method V
The field version: measure velocity near and far over a known distance, compute the one BC that explains the difference. Method V, for velocity. Near is basically always at the muzzle. Far is the interesting part.
I moved the far point through the whole supersonic band, every bullet, every muzzle velocity:
| Muzzle Mach | Median optimal far-Mach, Criterion A | Median optimal far-Mach, Criterion B | Median A−B gap |
|---|---|---|---|
| 2.2 | 1.70 | 1.70 | 0.00 |
| 2.3 | 1.75 | 1.75 | 0.00 |
| 2.4 | 1.75 | 1.80 | 0.00 |
| 2.5 | 1.80 | 1.80 | 0.00 |
| 2.6 | 1.80 | 1.80 | 0.00 |
| 2.7 | 1.85 | 1.85 | 0.00 |
| 2.8 | 1.85 | 1.85 | 0.00 |
| 2.9 | 1.85 | 1.85 | 0.00 |
A and B agree again. The far point creeps up with muzzle velocity, Mach 1.7 to 1.85.
In meters it’s a different story. How long a bullet takes to slow down to Mach 1.8 depends on the bullet, a lot. Light, low-BC bullet at a modest muzzle velocity: 350–400 m. Heavy VLD pushed hard: 700 m, often more.
So don’t measure at a fixed distance. If you’re working off the velocity table on an ammo box instead of your own chrono data, look up where the velocity is right and use that distance. (Mach 1.0 at 15°C = 340 m/s = 1115 fps.)
Not sure which side to err on? Go long. Being 0.5 Mach off the optimum usually costs about 0.02 mrad either way, but it’s not symmetric. With the far point pulled in toward the muzzle, the worst cases I saw lost over a full click at long range. Pushed 0.5 Mach further down toward transonic, it was typically a tenth of a click and never worse than three quarters.
Really short baselines
When I first put Labrabaco together, a few years back, it set off a forum fight. Some random guy kept insisting that a BC from short-range data (the 100–200 m a Labradar covers) was impossible and invalid. Illiterate and resentful dork, but he’d stumbled onto a fair question. What does a short baseline actually cost?
Same setup, now comparing a BC from only the first 100 m or 200 m with each bullet’s best achievable one:
| Muzzle Mach | 100 m: extra mrad (median/worst) | 100 m: % of pool under 0.05 mrad extra | 200 m: extra mrad (median/worst) | 200 m: % of pool under 0.05 mrad extra |
|---|---|---|---|---|
| 2.2 | 0.0182 / 0.0535 | 98.3% | 0.0064 / 0.0375 | 100.0% |
| 2.5 | 0.0354 / 0.1562 | 74.6% | 0.0240 / 0.1113 | 92.3% |
| 2.9 | 0.0323 / 0.2180 | 71.8% | 0.0295 / 0.1665 | 79.6% |
Over all muzzle velocities, 100 m typically costs you under 0.03 mrad over the supersonic trajectory. 200 m, 0.021.
Faster bullets punish short baselines more, as usual. Mach 2.5 muzzle (850 m/s, 2790 fps, very common): 75% of bullets stay under half a click of extra error at 100 m, 92% at 200 m.
And since I like tables, the best, typical and worst cases at Mach 2.5, sorted by extra error at 100 m:
| Bullet | Optimal BC | 100 m BC | 200 m BC | Extra mrad (100 m / 200 m) | |
|---|---|---|---|---|---|
| Best | 250gr BTHP, Hornady | 0.3156 | 0.3157 | 0.3156 | 0.0001 / 0.0001 |
| 230gr ELD-X, Hornady | 0.3085 | 0.3085 | 0.3091 | 0.0001 / 0.0047 | |
| 300gr Hybrid TAC, Berger | 0.4224 | 0.4225 | 0.4226 | 0.0005 / 0.0011 | |
| Typical | 109gr ELD-M, Hornady | 0.2790 | 0.2824 | 0.2815 | 0.0354 / 0.0255 |
| 123gr FMJ, Lapua | 0.1334 | 0.1373 | 0.1344 | 0.0355 / 0.0046 | |
| 168gr BTHP, Hornady | 0.2463 | 0.2495 | 0.2483 | 0.0352 / 0.0204 | |
| Worst | 230gr A-TIP, Hornady | 0.4142 | 0.4292 | 0.4250 | 0.1562 / 0.1113 |
| 190gr A-TIP, Hornady | 0.3864 | 0.3981 | 0.3957 | 0.1134 / 0.0882 | |
| 147gr ELD-M, Hornady | 0.3183 | 0.3293 | 0.3261 | 0.1055 / 0.0727 |
The BC columns are boring, and that’s the point. The short-baseline values are within a couple of percent of optimal, best group and worst group alike. You only see the difference in the trajectory, never in the number itself.
Labrabaco isn’t going to replace a military Doppler radar. Used properly, it still gets you pretty damn close.
3. A better generic curve than G7?
What I was looking for: not some new drag model that needs its own measurements, but a drop-in replacement for G7. Same ordinary G7 BC as input, from the box or from your chrono, and a curve that fits real bullets better than plain G7. Free accuracy, basically.
There isn’t one that beats G7 for all three manufacturers.
The simplest correction I tried had two parameters, roughly a little less drag correction in transonic than in subsonic. It worked. Fitted on Lapua only, it cut typical error by a fifth to a third, worst case about the same, and held up almost as well on Hornady bullets it had never seen.
Then the ambitious one: a full pointwise "average shape", all 183 curves pooled at every speed. Split by manufacturer, it fell apart a bit. In transonic, the part I cared about most, Hornady got 15% better on average, Lapua didn’t move, and Berger got a quarter worse.
Using the manufacturers’ published BCs as input didn’t rescue it. The curve was tuned for a BC obtained one specific way, and a published BC is close to that but not computed the same way, which brings back a small version of the mismatch the curve was meant to remove.
Published BCs vs. mine, by the way: typically within 1.4–1.9%. Reassuring, for two completely different methods. And as sections 1 and 2 keep showing, a gap that small still turns into real trajectory error after a few hundred meters.
One more thing about G7 itself. It isn’t any bullet you can buy. It’s a fixed reference built around a slender boat-tail shape from generations ago, long before polymer tips and modern low-drag ogives, and a scaled copy of it still tracks today’s match bullets this well. I find that impressive. But every universal replacement I tried came out manufacturer-dependent. My reading: each bullet family has drifted away from the old reference in its own direction, so no single G7++ fits them all. If you want better than G7, it has to be per bullet.
Key takeaways (I asked AI to sort my garbage)
- One G7 BC is very good for G7-ish match bullets. Fraction of a click typically, one click worst case.
- There’s no single correct BC. Where you take it changes the number and the error.
- Best-over-the-whole-flight and best-at-the-transonic-edge give the same answer.
- Off a drag curve: Mach 2.1, a bit lower for slow loads, a bit higher for fast ones.
- Two-point chrono BC: near at the muzzle, far at Mach 1.7–1.85.
- In distance that’s anywhere from 350 m to well past 700 m, depending on the bullet.
- In doubt, go long.
- 100–200 m baselines are fine for most bullets. 200 m beats 100 m.
- A bad short-baseline BC looks exactly like a good one.
- No universal G7 replacement. Fixes have to be per bullet.