See how your processes really run, where they differ from the plan and where time is lost, all with just a few lines of Python code. Researchers, developers and software companies around the world build on PM4Py.
pip install pm4pyBuilding a commercial product? See licensing options
PM4Py is a collection of ready-made process mining functions for the Python programming language. Instead of clicking through a user interface, you pick the tools you need and use them directly in your own code, so you don't have to build the algorithms yourself.
With PM4Py, you're never limited to the buttons and menus of a user interface. Every step of your analysis is up to you: automate recurring analyses, combine PM4Py with any other Python tool, or build something completely new. If you can imagine it, you can build it.
Software companies, data scientists and researchers build on PM4Py instead of starting from scratch, from quick one-time analyses to complete software products. Our own tool, PMTk, is built on it too. PM4Py is downloaded more than 100,000+ times every month1.
1 According to pypistats.org
Quick to learn, close to the latest research, and ready for commercial use.
Runs on all major platforms. Step-by-step tutorials and complete API documentation get you to your first result quickly.
Installation instructionsPM4Py covers the full range of process mining, from discovering processes and checking whether they run as planned to predictive and object-centric process mining. Developed close to research, it brings you new methods early.
List of PM4Py featuresPM4Py is free and open source under the AGPL v3 license. If you build a commercial product and want to keep your source code private, we offer dedicated licenses and professional support.
Compare licensing optionsA selection of features with visual output, each in just a few lines of Python.
Discover process models from event data, from directly-follows graphs to Petri nets, BPMN models, and process trees.
Compare observed behavior with a process model, case by case, and measure how well the model fits.
Find out where time is spent: between activities, along process paths, and across whole cases.
Summarize an event log at a glance: its variants, activity volumes, and when events happen.
See how work is handed over between resources, where it is done in batches, and which roles emerge from the data.
Narrow an event log down to the cases and paths that matter before you analyze it.
Turn cases into feature tables for machine learning, ready for pandas and scikit-learn.
Analyze processes in which events relate to several objects at once, such as orders, items, and deliveries.
More example scripts can be found online:Tutorials & ExamplesMore examples on GitHub
| Comparison | Community VersionOpen-Source License | Commercial VersionClosed-Source License |
|---|---|---|
| Main User Groups | Students, teachers, lecturers, and researchers | Companies and other commercial organizations |
| Main Use Case | Teaching, research, and open-source projects | Commercial applications |
| License | GNU Affero General Public License v3.0 (GNU AGPL V3) | Individual license agreement |
| Modifications | Modifications allowed | Modifications allowed |
| Covered Work1 | Covered work1 (e.g., scripts or software using PM4Py) must be published open-source under AGPL | Covered work1 (e.g., scripts or software using PM4Py) may remain closed-source |
| Commercial Usage | Not viable for most commercial use: any script or software using PM4Py must be published open-source under AGPL | Unrestricted commercial use permitted |
| Distribution | GitHub | Private repository |
| Release Cycle | No fixed release schedule | Regular releases with early feature access |
| Support | — | Dedicated professional support |
| Pricing | Free of charge | Request a Quote |
1 A covered work (as defined in the AGPL) includes any software or script using PM4Py in any way, such as by importing or using its functionality. This applies regardless of whether PM4Py itself is modified. Furthermore, if a covered work is made accessible over a network (e.g., as a web service or API), the AGPL requires the source code to be made available to users of that service.
Licensing Basics
The AGPL in Detail
Commercial Version
About PM4Py