Verdict

At matched compute on an RTX 5070 Ti, YOLOv9 is the more accurate family: it averages 5.3 mAP points higher and wins all 3 nearest-parameter pairs. YOLOX answers on speed, running 24.6% faster on average in PyTorch. Neither family wins on both axes, so pick YOLOv9 for accuracy per parameter and YOLOX when raw throughput leads.

YOLOv9 fields 4 measured variants; YOLOX fields 6. Both run the same COCO val2017 protocol at 640 px on an RTX 5070 Ti, so the two ladders line up by parameter count.

ModelFamilyParams (M)mAP@50-95FPS
YOLOX-NanoYOLOX0.92876.053.6
YOLOv9-TYOLOv92.04178.031.9
YOLOX-TinyYOLOX5.13547.061.6
YOLOv9-SYOLOv97.25045.030.8
YOLOX-SYOLOX9.04427.050.0
YOLOv9-MYOLOv920.15610.037.1
YOLOX-MYOLOX25.35169.048.2
YOLOv9-CYOLOv925.55709.042.3
YOLOX-LYOLOX54.25542.042.8
YOLOX-XYOLOX99.15627.039.6
YOLOv9 and YOLOX variant ladders interleaved by parameter count on NVIDIA RTX 5070 Ti, PyTorch FP32, batch 1. mAP in percent form. The family column shows where each frontier sits at every size.
Live chartverified data
Accuracy vs parameters on COCO val2017. Every YOLOv9 and YOLOX variant highlighted against the full set.

Accuracy at matched compute

mAP is shown in percent. Pairing each YOLOv9 model with the nearest YOLOX model by parameter count, YOLOv9 wins all 3 pairs and averages 5.3 mAP points higher. At the top end YOLOv9-C reaches 57.1 mAP against YOLOX-X at 56.3. The gap is widest in the small class, where YOLOv9-S posts 50.4 mAP to YOLOX-S at 44.3.

Speed

YOLOX is the faster family at matched compute: 24.6% faster on average in PyTorch FP32. Its smallest variant, YOLOX-Nano, runs 53.6 FPS at 0.91M parameters; YOLOv9-T runs 31.9 FPS at 2.04M. YOLOX trades accuracy for that throughput.

Licensing
YOLOv9
MIT (permissive)
YOLOX
Apache-2.0 (permissive)
Commercial use
Both families ship under permissive licenses

Which family to pick

Pick YOLOv9 when accuracy per parameter matters or when a size budget caps the model: it leads at every matched pair measured here. Pick YOLOX when throughput is the constraint and you can absorb the accuracy cost, or when you need the smallest possible model, down to 0.91M parameters. Both ship under permissive licenses, so licensing does not force the call. See the per-variant specs on the YOLOv9 and YOLOX model pages.

Every number on this page comes from the verified dataset: same 500-image COCO val2017 slice, conf 0.001, IoU 0.6, max 300 detections, pycocotools mAP, identical protocol across all hardware and runtimes. The full protocol is on the methodology page. To rerun this comparison with your own filters, open compare. Accuracy is measured on LibreYOLO retrained checkpoints; other weight sources can yield different values.