A single number hides the risk
“This takes 5 days” throws away everything you know about uncertainty. A distribution keeps that knowledge and tells you how often you'll actually be late.
Try it. No install needed.
Four tasks, real dependencies. Every drag runs a fresh 10,000-trial Monte Carlo, exactly what planaco does.
How long until project completion?
project = Project(name="Web App", unit="days") project.add_task(design) # 5 · 7 · 14 project.add_task(frontend, depends_on=[design]) # 8 · 12 · 15 project.add_task(backend, depends_on=[design]) # 10 · 15 · 25 project.add_task(testing, depends_on=[frontend, backend]) project.statistics(n=10_000) # → P50, P85, P95
Three steps from tasks to confidence
Model each task
Give a min / most-likely / max, or pick one of six distributions. Planaco captures the uncertainty you already feel.
Link dependencies
Declare what blocks what. Planaco builds a DAG and computes the critical path on every simulated run.
Simulate & decide
Run 10,000 Monte Carlo trials in milliseconds. Read off percentiles, confidence intervals, and the riskiest tasks.
Define it once, simulate forever
from planaco import Task, Project project = Project(name="Web App", unit="days") design = Task(name="Design", min_duration=5, mode_duration=7, max_duration=14) frontend = Task(name="Frontend", min_duration=8, mode_duration=12, max_duration=15) backend = Task(name="Backend", min_duration=10, mode_duration=15, max_duration=25) testing = Task(name="Testing", min_duration=2, mode_duration=3, max_duration=5) project.add_task(design) project.add_task(frontend, depends_on=[design]) project.add_task(backend, depends_on=[design]) project.add_task(testing, depends_on=[frontend, backend]) stats = project.statistics(n=10_000) print(stats["percentiles"]["p85"])
# project.yaml, then run: planaco stats project.yaml project: name: "Web App" unit: days seed: 42 tasks: design: estimator: pert min_duration: 5 mode_duration: 7 max_duration: 14 build: estimator: triangular min_duration: 10 mode_duration: 15 max_duration: 25 depends_on: [design]
# Web App · 10,000 simsMean24.3 daysMedian (P50)24.0 daysStd dev3.1 daysP8527.4 daysP9529.8 days95% CI[18.2, 30.4]