Prophet is Facebook's open source forecasting tool designed to produce high quality predictions for time series data exhibiting multiple seasonality patterns with linear or non-linear growth. Released by Facebook's Core Data Science team, the tool implements an additive model that fits non-linear trends alongside yearly, weekly, and daily seasonality components, plus holiday effects. It performs best with time series containing strong seasonal patterns and multiple seasons of historical data, while remaining robust to missing values, trend shifts, and outliers.
The project is available in both Python and R, distributed through PyPI and CRAN respectively. The Python implementation requires version 3.7 or later as of v1.1, while the R package can be installed from CRAN or built from the latest release. Installation options include standard package managers, conda-forge for Python users, and development builds from source. The tool uses cmdstan as its backend for model compilation, with support for alternative backends like cmdstanpy and an experimental cmdstanr option for R users.
According to GitGenius activity tracking across 87 items, the repository maintains a median issue and pull request response latency of 77.8 hours, though mean latency reaches 1261 hours, indicating variable response times across different types of requests. The most frequently tagged issues involve questions, enhancement requests, and Python-specific concerns. Core contributors tcuongd and bletham drive the majority of activity with 53 and 42 tracked events respectively, followed by Frocolate with 15 events. The repository shares overlapping contributors with mlflow, polars, and pandas, suggesting integration points and shared development practices across these data science ecosystems.
As of version 1.4.0, Prophet entered maintenance mode, with the development team announcing that only bug fixes, dependency updates, and R package changes to maintain parity with Python will be accepted going forward. This shift reflects the project's maturity after initial release in February 2017. The changelog documents substantial evolution, including the transition from pystan2 to cmdstan in v1.1, performance improvements such as 10x speedup in prediction and 3-7x improvements in uncertainty calculations, and architectural changes like replacing the custom holidays module with the external holidays package. Recent versions addressed compatibility with modern Python ecosystems, supporting pandas 3.0 and numpy 2.4 as of v1.3.0, while maintaining backward compatibility considerations through version constraints in intermediate releases.
The tool's capabilities expanded significantly over its development history, progressing from basic forecasting to include multiplicative seasonality, conditional seasonalities, cross-validation with error metrics, extra regressors, sub-daily forecasting, and nested Prophet models for advanced use cases. The implementation provides access to posterior predictive samples and includes visualization tools, with Python users gaining plotly integration. Documentation is comprehensive, with HTML guides, quick start tutorials, and a peer-reviewed paper published in The American Statistician establishing the theoretical foundation for forecasting at scale.