# Why does Catboost outperform other boosting algorithms?

I have noticed while working with multiple datasets that catboost with its default parameters tends to outperform lightgbm or xgboost with its default parameters even on a tabular dataset with no categorical features.

I am assuming this has something to do with the way catboost constructs the decision trees but I just wanted to confirm this theory. If anyone could elaborate on why it performs better on non categorical data then that would be great! Thanks in advance!

• it is a theorem that no algorithm can consistently outperform all other algorithms under all circumstances (no free lunch theorem), so most probably what you observe is simply coincidence Feb 20 '21 at 18:22

There is no free lunch among Catboost, XGBoost and LightGBM. In my experience, some cases I found that XGBoost outperform other, some cases for LightGBM, and the rest for CatBoost. So there is no exact the best model until you test them all in your dataset with doing hyper parameters tune to your model. The only think clearly better from both CatBoost and LightGBM compare to XGBoost is only the way they deal with categorical features and faster fitting time.