Guide · Open source
How to use Prophet: install and forecast time series in Python
Updated · written with AI from the project's own documentation and checked against our catalogue data
Prophet is an open-source forecasting procedure for time series data, released by Facebook's Core Data Science team and available for Python and R. It fits an additive model with non-linear trends, yearly, weekly and daily seasonality, and holiday effects. This guide shows you how to install it, what kind of data it suits, and how to decide whether it fits your forecasting job.
Quick start
- 1Check your Python version. Confirm you have Python 3.7 or newer, as the README requires, and that pip or conda is available.
- 2Install Prophet. Run python -m pip install prophet, or use conda install -c conda-forge prophet if you use conda.
- 3Prepare your time series. Gather a history with a date column and a value column, covering several seasons if you can.
- 4Read the quick start. Open the official quick start guide for the Python API and follow its example on your data.
- 5Add holidays and regressors if needed. If you know the holiday dates or extra factors that move your metric, add them as the docs describe.
- 6Validate the forecast. Use cross_validate and performance_metrics from prophet.diagnostics to check accuracy on held-out data.
What Prophet does and when it fits
Prophet is based on an additive model. It fits a non-linear trend along with yearly, weekly and daily seasonality, plus holiday effects. The README says it is robust to missing data and shifts in the trend, and typically handles outliers well.
It works best with time series that have strong seasonal effects and several seasons of historical data. The README's best-fit users are analysts forecasting business metrics with weekly or yearly seasonality, and Python or R users who want a forecasting model they can run without deep statistics expertise.
- Good fit: business metrics with clear weekly or yearly patterns and several seasons of history
- Good fit: series where you know the holiday dates that affect the numbers
- Poor fit: very short histories or series without clear seasonal patterns
- Poor fit: teams that need a Spark or JVM implementation (see the Helter Skelter section)
Install Prophet with pip or conda
Prophet is on PyPI, so you can install it with pip. The README's install command is shown below. The README sets the minimum Python version at 3.7 or newer.
If you use conda, Prophet is also available through conda-forge.
- Install from PyPI with pip. The package name on PyPI is 'prophet'. Older releases used 'fbprophet'.
- Python 2 is no longer supported.
- In R, install the CRAN package with install.packages('prophet'). The README warns that the CRAN version is fairly outdated, so the remotes-based latest release is suggested for bug fixes and updated country holiday data.
python -m pip install prophet
conda install -c conda-forge prophetCheck system requirements before you install
The README lists compiler and memory requirements that matter on Linux, Windows and virtual machines. Prophet compiles model executables, so a working C++ toolchain is needed in some setups.
On Linux, the README asks for gcc, g++ and build-essential, plus Python development tools. If you run in a VM, it says you need at least 4GB of memory to install Prophet and at least 2GB to use it.
On Windows, the README says R needs Rtools and Python needs a Unix-compatible C compiler such as mingw-gcc, which can be installed through cmdstanpy.install_cxx_toolchain.
- Linux: gcc, g++, build-essential, python-dev or python3-dev
- Red Hat systems: gcc64 and gcc64-c++
- VM: at least 4GB of memory to install, 2GB to use
- Windows R: install Rtools before the package
Build your first forecast
Once installed, the README points to the quick start guide for the Python and R APIs. Prophet expects a time series with a date column and a value column, and it models trend and seasonality from that history.
For more control, the README mentions extra regressors and holiday effects. To check forecast quality, the package includes cross_validate and performance_metrics in prophet.diagnostics, and the 1.5.0 changelog notes that performance_metrics now lives in a new prophet.metrics module but is still importable from prophet.diagnostics.
- Read the quick start guide for the exact Python or R API calls
- Prepare your history with enough seasons for the seasonality you expect
- Add holiday effects when you know the dates that move your metric
- Use cross-validation to compare the forecast against held-out history
Know the maintenance status and the Helter Skelter alternative
The README's 2026 update says Prophet is in maintenance mode. Only bug fixes, dependency bumps, and changes to the R package for parity with Python will be accepted, and no new features are planned. Plan for a stable tool, not a growing feature set.
If you need a Spark or JVM implementation, the README points to Helter Skelter. It is a separate, simplified reimplementation in Scala for Apache Spark, developed and maintained by Amadeus. It is not this project.
- Prophet is MIT licensed and written in Python, with an R package on CRAN
- Helter Skelter is a different codebase from Amadeus, built for distributed Spark computing
- Other tools the README's comparison list covers: statsmodels, Darts, NeuralProphet, sktime
What people use it for
- Forecasting weekly sales or traffic for a business metric with a clear weekly pattern
- Projecting yearly demand that rises and falls with the seasons
- Estimating how holidays change a daily metric and planning around them
- Giving a non-specialist team a forecast they can rerun without tuning statistical models by hand
Frequently asked questions
Is Prophet free to use?
Yes. The project is licensed under the MIT license, according to the directory listing. You can use it, including in commercial work, under the terms of that license.
How do I install Prophet?
For Python, run python -m pip install prophet, or use conda install -c conda-forge prophet. For R, run install.packages('prophet') from CRAN, though the README notes the CRAN version is outdated.
What Python version does Prophet need?
The README says the minimum supported Python version is 3.7. Older Python 2 support was removed in an earlier release.
Why does the install fail on Windows or Linux?
The README says Prophet needs a C++ toolchain. On Linux, install gcc, g++, build-essential and Python development packages. On Windows, install a Unix-compatible compiler such as mingw-gcc, and for R, install Rtools first.
Is Prophet still being developed?
The README says it is in maintenance mode. Only bug fixes, dependency bumps, and R/Python parity changes will be accepted, and no new features are planned.
What are alternatives to Prophet?
The README's comparison list names statsmodels, Darts, NeuralProphet and sktime. If you need a Spark or JVM version, the README points to Helter Skelter, a separate reimplementation by Amadeus.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Prophet suits analysts and Python or R users who forecast business metrics with clear weekly or yearly seasonality and several seasons of history. Pick something else if your series is short or lacks seasonal patterns, if you need features the project will no longer add, or if you need a Spark implementation.
Install options & downloads