← Back to BlogAI Development

How We Achieved 74% Accuracy in Sports ML Predictions

Predrag Mitrovic · 2026-05-15 · 5 min read

The Challenge


Build ML models that predict football match outcomes better than random chance. The baseline for predicting draws is ~26%. Can we beat it significantly?


Feature Engineering > Model Complexity


We tried deep learning first. Neural networks with match embeddings, attention layers, the works. Accuracy: 38% on draws.


Then we switched to feature engineering. We created 62-65 features per match:

  • Team form over last 5/10/20 matches
  • Head-to-head statistics
  • Home/away performance deltas
  • Goal-scoring patterns
  • League-specific adjustments

  • With Scikit-learn’s ensemble methods on these engineered features: 44.7% accuracy on draws (+19% edge over baseline).


    Three Models, Three Markets


  • **ODYSSEUS** — Draw predictions: 44.7% accuracy (vs 26% baseline)
  • **LEONIDAS** — BTTS (Both Teams To Score): 74.1% accuracy
  • **ACHILLES** — Over 2.5 Goals: 72.3% accuracy

  • Why Scikit-learn Won


  • Tabular data with engineered features favors gradient boosting
  • Training time: minutes vs hours
  • Interpretability: feature importance is transparent
  • Deployment: pickle files, no GPU needed

  • Key Takeaway


    In ML, the quality of your features matters more than the complexity of your model. Spend 80% of your time on data and features, 20% on model selection.

    Ready to build something?

    Contact Us →