โœจ No LLM required ยท runs 100% on your machine

Turn any spreadsheet into real answers, automatically.

Upload a CSV. Auto Data Analyst cleans it, explores it, trains and compares a dozen+ machine learning models โ€” including XGBoost, LightGBM, and CatBoost โ€” and hands you concrete recommendations. Every step is visible and editable, and your data never leaves your computer.

127.0.0.1:5000/analyze
Auto Data Analyst results page showing the pipeline steps timeline and model comparison

How it works

Four steps, fully automatic by default โ€” or take the wheel at any point.

1

Upload

Drop in a CSV, or several related ones โ€” the app finds the join columns for you.

2

Clean & engineer

Missing values, outliers, encoding, and optional derived features โ€” see the plan, edit any of it.

3

Compare models

Runs classification, regression, or clustering across a wide model pool and ensembles the best.

4

Get answers

Plain-language recommendations, plus a chat box to ask your own questions about the results.

Why not just use a black-box AutoML tool?

Most AutoML platforms trade transparency and privacy for convenience. This doesn't.

๐Ÿ”

Nothing is a black box

Every cleaning decision, every model tried, every threshold chosen is shown to you โ€” not just a final score.

๐Ÿ”’

Your data stays yours

Everything runs locally. No upload to a third-party cloud, no API calls with your rows in them.

๐Ÿงฌ

A real model bake-off

Not one model's guess โ€” a dozen+ candidates including XGBoost, LightGBM, and CatBoost, cross-validated and ensembled.

๐Ÿ†“

Free, open source

No subscription, no per-row pricing. Flask + scikit-learn, the code is yours to read on GitHub.

If you give a target column, the app trains classification or regression models to predict it. Leave it blank to auto-segment the data (clustering) and detect anomalies.

By default every model in the chosen level runs and the best (or an ensemble of the top performers) is used. Check specific models to run only those instead.

Prediction models (used if you give a target column)

Clustering models (used if no target column)