YONDER

Ballistics validation: our solver vs. Hornady 4DOF

The full methodology, the actual numbers, and what we do not claim. If you find an error, we want it: alex@shootyonder.com

The claim

Yonder's trajectory solver reproduces the come-up (elevation) predicted by Hornady 4DOF (a solver built on Doppler-radar-measured drag for specific bullets) to within 0.02 mil at every 100-yard increment from 300 to 1,100 yards (0.03 mil at 1,200, the transonic edge) for three validated match loads. The tables below show every number, and those three aren't outliers: 56 of the 60 loads in the app are trued to the same Doppler data, and 51 of those agree within 0.05 mil, under two inches at 1,000 yards. These three just get the full receipts.

This is an end-to-end output comparison: same load, same atmosphere, same zero in both solvers; we compare the dial-up each one tells you to put on the turret.

Method

The numbers

6.5 CM 140 ELD-M handload: MV 2604 fps, 100 yd zero, 1.5″ sight height 4,700 ft · 59°F · 50% RH · published G7 BC 0.314 → trued 0.3098 · worst diff 0.012 mil to 1,100 (0.009 at 1,200)
ydHornady 4DOF (mil)Yonder (mil)diff
3001.341.34+0.00
4002.212.20-0.01
5003.153.15+0.00
6004.184.17-0.01
7005.295.28-0.01
8006.496.48-0.01
9007.807.80+0.00
10009.239.23+0.00
110010.7910.79+0.00
120012.5012.51+0.01
6.5 CM 147 ELD-M factory: MV 2695 fps, 100 yd zero, 1.5″ sight height ICAO sea level · 59°F · 50% RH · published G7 BC 0.351 → trued 0.3217 · worst diff 0.011 mil to 1,100 (0.027 at 1,200)
ydHornady 4DOF (mil)Yonder (mil)diff
2000.530.53+0.00
3001.261.26+0.00
4002.092.08-0.01
5003.003.00+0.00
6004.004.00+0.00
7005.115.10-0.01
8006.316.31+0.00
9007.657.64-0.01
10009.129.12+0.00
110010.7510.76+0.01
120012.5612.59+0.03
.308 Win 178 ELD-M factory: MV 2600 fps, 100 yd zero, 1.5″ sight height ICAO sea level · 59°F · 50% RH · published G7 BC 0.272 → trued 0.2706 · worst diff 0.015 mil to 1,100 (0.011 at 1,200)
ydHornady 4DOF (mil)Yonder (mil)diff
2000.610.61+0.00
3001.441.43-0.01
4002.392.38-0.01
5003.463.45-0.01
6004.674.65-0.02
7006.026.01-0.01
8007.557.53-0.02
9009.289.27-0.01
100011.2411.24+0.00
110013.4913.50+0.01
120016.0516.06+0.01

Windage

Come-up is half the shot, so here are the windage columns from the same pulls: spin drift for all three loads, and a dedicated 10 mph crosswind run on the 140. The sign convention is Hornady’s: negative means the bullet drifts right and you hold left.

6.5 CM 140 ELD-M: wind drift, 10 mph full-value from the left Dedicated crosswind pull, 2026-07-13 (wind angle 270° in 4DOF) · pure wind drift, spin drift separate below · worst diff 0.011 mil
ydHornady 4DOF (mil)Yonder (mil)diff
300-0.43-0.43+0.00
400-0.59-0.59+0.00
500-0.76-0.76+0.00
600-0.94-0.94+0.00
700-1.14-1.13+0.01
800-1.34-1.33+0.01
900-1.55-1.55+0.00
1000-1.78-1.79-0.01
1100-2.03-2.03+0.00
1200-2.29-2.30-0.01
6.5 CM 140 ELD-M: spin drift, zero wind Same 2026-07-12 pull as the come-up table · worst diff 0.012 mil
ydHornady 4DOF (mil)Yonder (mil)diff
300-0.04-0.05-0.01
400-0.05-0.06-0.01
500-0.07-0.08-0.01
600-0.09-0.10-0.01
700-0.11-0.11+0.00
800-0.13-0.14-0.01
900-0.15-0.16-0.01
1000-0.18-0.18+0.00
1100-0.20-0.21-0.01
1200-0.23-0.24-0.01
6.5 CM 147 ELD-M: spin drift, zero wind 2026-07-13 pull · worst diff 0.007 mil
ydHornady 4DOF (mil)Yonder (mil)diff
200-0.02-0.03-0.01
300-0.03-0.04-0.01
400-0.05-0.05+0.00
500-0.06-0.06+0.00
600-0.08-0.08+0.00
700-0.10-0.10+0.00
800-0.12-0.11+0.01
900-0.14-0.13+0.01
1000-0.16-0.16+0.00
1100-0.18-0.18+0.00
1200-0.21-0.21+0.00
.308 Win 178 ELD-M: spin drift, zero wind 2026-07-13 pull · worst diff 0.007 mil
ydHornady 4DOF (mil)Yonder (mil)diff
200-0.03-0.04-0.01
300-0.05-0.05+0.00
400-0.07-0.07+0.00
500-0.10-0.10+0.00
600-0.12-0.12+0.00
700-0.15-0.15+0.00
800-0.18-0.18+0.00
900-0.22-0.21+0.01
1000-0.26-0.25+0.01
1100-0.30-0.30+0.00
1200-0.36-0.35+0.01
Reading these in 4DOF: the Spin Drift checkbox only displays the column (it never changes their solution), so compare the column itself. The wind table is the same 140 load run again with wind set to 10 mph at 270°. Both pulls had Earth-based effects off, deliberately: Coriolis depends on your latitude and bearing, and with it off anyone, anywhere, can reproduce these tables exactly.

Run it yourself

You can check these tables against Hornady’s own calculator in a couple of minutes, and our columns are already printed above. Open the 4DOF ballistic calculator, pick the bullet from their library, enter the inputs below, zero the wind, and leave Earth-based effects off. Read the Total Come Up column in MRAD at 100-yard steps out to 1,200. The windage tables check the same way: their Spin Drift column, and for the wind table the 140 run again at 10 mph, angle 270°.

Start with the two factory loads: they run on 4DOF’s default sea-level atmosphere (29.9 inHg · 59°F · 50% RH), so you only touch the bullet, velocity, twist, zero, and sight height. Then zero the wind.

6.5 CM 147 ELD-M factory: archived pull 2026-07-13

Bullet (their library)
HORNADY 6.5 MM 147 GR ELD MATCH
Velocity / twist
2695 fps · 1:8
Zero / sight height
100 yd · 1.5″
Atmosphere
defaults (0 ft · 29.9 inHg · 59°F · 50% RH)
Wind / Earth effects
0 mph · OFF

.308 Win 178 ELD-M factory: archived pull 2026-07-13

Bullet (their library)
HORNADY 30 CAL 178 GR ELD MATCH
Velocity / twist
2600 fps · 1:10
Zero / sight height
100 yd · 1.5″
Atmosphere
defaults (0 ft · 29.9 inHg · 59°F · 50% RH)
Wind / Earth effects
0 mph · OFF

6.5 CM 140 ELD-M handload: archived pull 2026-07-12

Bullet (their library)
HORNADY 6.5 MM 140 GR ELD MATCH
Velocity / twist
2604 fps · 1:8
Zero / sight height
100 yd · 1.5″
Atmosphere
4,700 ft · 25.2 inHg · 59°F · 50% RH
Wind / Earth effects
0 mph · OFF

On the 140: the web calculator only takes pressure to one decimal (the phone app takes two), so that pull ran at 25.2 inHg against our 25.17. That costs about 0.006 mil at 1,000 yards.

Your numbers should match ours within 0.02 mil out to 1,100 yards, 0.03 at 1,200. If you land outside that, email us: alex@shootyonder.com

What we do not claim

56 of 60 loads are Doppler-validated; the rest say so. The three golden loads (6.5 CM 140/147 ELD-M, .308 178 ELD-M) are trued and test-pinned at the tightest tolerance, and as of July 2026 the rest of the library (Hornady, Berger, Sierra, and more) is trued against 4DOF’s Doppler-derived drag data, each load with its own recorded pull and its own pinned band: 51 of those agree within 0.05 mil, with 2 at a wider published band. The four without a Doppler entry (.223 55gr V-MAX, .204 32gr V-MAX, .300 BLK 125gr TGK, 7.62x39 123gr SST) ship published numbers and are labeled as such. Any load trues in-app against your own drops: a published BC is a decent start, not a promise.
Windage / spin drift: trued to the same Doppler model (2026-07). Come-up was the first validated axis; the spin-drift channel is now trued against current Hornady 4DOF for the same three validated loads: within ~0.01 mil from 300 to 1,200 yards. What changed: the standard Miller stability estimate reads low for long match bullets (up to ~23% on the .308 178 ELD-M), so validated loads carry a stability correction trued to 4DOF's own gyroscopic output, with the Litz drift coefficient re-fit to match. Loads we haven't trued still use the published Litz model and will read somewhat higher than 4DOF. True your own data if the margin matters. Crosswind drift itself matches 4DOF to within 0.008 mil out to 1,200 yards (validated against a dedicated 10 mph crosswind pull: the wind table above).
The transonic edge is real. Past ~1,200 yards a single trued BC starts to peel away from the Doppler curve; that's why the 1,200-yd tolerance is 0.03 mil. Deep transonic and subsonic flight need measured drag, not a BC. We don't pretend otherwise.

Audit us

Run a validated load in the app against your DOPE (for free you can true the reference .308 to your own velocity, conditions, and drops) or check it against 4DOF/your solver of choice, and tell us where we're off: alex@shootyonder.com. Reproducible discrepancies get fixed and credited.

PLAY YONDER: FREE PRESS KIT