ML in Practice

Why Your Model Performs Like a God Offline, but Crashes on the Leaderboard

Zheng Zhu · July 7, 2026 · 7 min read

If you’ve done any ML competitions or real-world data science projects (for example, stock market prediction), you’ve probably been there. You add a new feature, your local CV score shoots up, you feel like a genius — and then you submit or deploy in production, and shake up. The online score drops significantly.

Here are 3 hard truths I learned from the past.

1. The “Golden Rule” is Validation, not the Model itself

Classic train_test_split or basic K-Fold will almost always fail you in real life. The real data distribution is usually a mess.

2. Feature Engineering Decides Your Upper Limit

In tabular data, features beat models every single time. It’s all about mapping domain knowledge into data.

3. Stop Overcomplicating Your Models (Occam’s Razor)

Beginners always think deeper networks or zero-regularization trees equal higher scores. Actually, it’s the exact opposite.

Plus, in production, super complex models are a nightmare to maintain. There is always a trade-off between a 0.001 score lift and the actual engineering cost.

Keep it simple, validate it strictly, and focus on the data.