Skip to content

Repository files navigation

Predicting Minecraft Mod Popularity

An end-to-end data analysis of what makes a Minecraft mod popular, using metadata for the top 5,000 mods on Modrinth. The project collects data from the Modrinth REST API, engineers features from the raw mod records, explores the download distribution, and fits two models to identify which mod attributes correlate with download counts.

A Note on the Data

Modrinth's catalog changes over time: new mods appear, download counts grow, and some mods are removed. To keep the findings stable and checkable, this repository separates the data I analyzed from the live pipeline that produced it.

  • modrinth_mods_snapshot.json is the exact data snapshot I collected and analyzed (5,000 mods, captured May 2026). This is the file behind every number and chart in the report. It is committed to the repository and is never modified by the notebook.
  • Predicting_Minecraft_Mod_Popularity.html is the rendered notebook with all outputs and figures baked in. It is the frozen record of my findings on that snapshot, viewable without running anything.
  • Predicting_Minecraft_Mod_Popularity.ipynb is a live tool. Running it pulls fresh data from the Modrinth API, so your results will differ from mine as the platform changes. Re-running it writes its own working file (modrinth_mods_raw.json) and does not touch the committed snapshot.

To reproduce my exact figures, read the HTML or load modrinth_mods_snapshot.json. To see what the ecosystem looks like today, run the notebook.

The Question

A small number of Minecraft mods reach massive audiences while most are seen by only a handful of players. This project asks a single question: what features of a mod correlate with how many downloads it gets? The analysis looks at mod age, update recency, version coverage, loader support, content category, and gallery size to find which of these carry a meaningful relationship with popularity and which do not.

Data

The data comes from the Modrinth API, a public REST/JSON API requiring no authentication. The collection routine paginates through the /search endpoint, sorted by total downloads, and captures the top 5,000 mods (filtered to project_type=mod). Requests are rate-limited with a short delay to stay well under the API limit.

In the analyzed snapshot, download counts range from about 94,000 to over 168 million, and creation dates span October 2020 to April 2026.

Method

  1. Collection. Paginated, rate-limited requests to the Modrinth /search endpoint.
  2. Cleaning and feature engineering. Dates are converted to age features (mod_age_days, days_since_modified) relative to the latest date in the data. Modrinth mixes mod loaders (Fabric, Forge, NeoForge, etc.) and content tags (utility, adventure, library, etc.) into one categories field, so these are split into separate columns. List-valued fields are summarized as counts (num_loaders, num_versions, num_gallery_images). A small number of mods missing a content category (163, about 3%) are filled with a placeholder rather than dropped.
  3. Exploration. Downloads span more than three orders of magnitude and are strongly right-skewed, so the analysis works with the log of downloads and uses medians and box plots for group comparisons.
  4. Modeling. A linear regression and a decision tree regressor are fit on log-scaled downloads using the same train/test split, so the two models can be compared directly.

Key Findings

  • Mod age is the strongest single predictor of popularity. The decision tree assigns it about 42% of total feature importance, and both models place it in the top two.
  • Multi-loader support is a clear second. The number of loaders a mod supports matters more than which specific loader it picks.
  • Active maintenance, library status, and version coverage all move in the expected direction but have smaller effects.
  • Both models explain about 18% of the variation in log-downloads (linear regression R² = 0.183, decision tree R² = 0.163). The close fit between the two suggests the relationships are largely linear. The remaining variation reflects factors the metadata cannot measure, such as mod quality, gameplay design, and word-of-mouth.

Repository Structure

.
├── README.md
├── Predicting_Minecraft_Mod_Popularity.ipynb   # the analysis (pulls fresh data when run)
├── Predicting_Minecraft_Mod_Popularity.html    # frozen record of findings on the snapshot
├── modrinth_mods_snapshot.json                 # the data behind the reported results
├── requirements.txt
└── .gitignore

Note: running the notebook creates modrinth_mods_raw.json from a fresh API pull. That working file is gitignored and is intentionally separate from the committed snapshot.

Running It

git clone https://github.com/mraj05/minecraft-mod-popularity.git
cd minecraft-mod-popularity
pip install -r requirements.txt
jupyter notebook Predicting_Minecraft_Mod_Popularity.ipynb

Running the notebook fetches current data from the Modrinth API, so the numbers it produces will not match the reported figures. This is expected; the platform changes over time. The committed snapshot and HTML preserve the original results.

Limitations

The analysis covers only the top 5,000 mods, which are the popular end of the distribution, and only Modrinth rather than also including CurseForge, the larger of the two major platforms. The data is a single snapshot in time, so the only outcome studied is total downloads to date. Natural next steps would be pulling the same data from CurseForge for a platform comparison, adding text features from mod descriptions, and treating downloads as a time series.

Tech Stack

Python, Modrinth API, pandas, NumPy, scikit-learn, Matplotlib, seaborn.

About

What predicts Minecraft mod popularity? An analysis of the top 5,000 mods from the Modrinth API.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages