← All Notion guides

Notion Guide

How to Calculate Project Progress in Notion With a Rollup

A project progress percentage is useful when you can explain what it measures. In this setup, progress means the proportion of related tasks recorded as complete. It does not measure client approval, time spent or budget used.

Build a numeric example first, test it with four tasks and check the limitations before applying it to real projects.

1. Prepare the two databases

Use your existing Projects and Tasks databases. In Tasks, add a Relation called Project connected to Projects. Enable its corresponding relation in Projects and name it Tasks. That project-side relation is the collection the rollup will summarize.

Follow how to connect two databases if needed. Do not create a second task database just to calculate progress.

2. Define a numeric completion value

For this introductory example, add a Number property in Tasks called Completion Unit. Use 0 for unfinished and 1 for complete. Give every included test task one of those values; leave no blanks.

This is a deliberately simple teaching model. If your workspace already uses a completion checkbox or Status, avoid maintaining two independent completion indicators indefinitely. Validate the calculation first, then choose one authoritative completion process before using it operationally.

3. Connect four test tasks

Create a fictional project called Website refresh — test. Connect these four tasks:

Illustrative task-completion test.
Task Completion Unit
Confirm page structure 1
Prepare first draft 1
Review mobile layout 0
Complete final checks 0

The expected ratio is 2 completed tasks divided by 4 related tasks: 0.5, or 50%. Every task has equal weight.

4. Add the project rollup

  1. In Projects, add a Rollup called Task Completion.
  2. Select Tasks as the relation.
  3. Select Completion Unit as the related property.
  4. Choose Average as the calculation.
  5. Inspect the raw result before changing its display.

Expect 0.5 for the test project. A percentage display should represent that as 50%. Do not enter 50 in Completion Unit to represent a completed task; this recipe averages values of 0 and 1.

5. Test changes in both directions

Change Review mobile layout from 0 to 1. Expect 3 divided by 4: 0.75, or 75%. Change it back to 0 and expect 50% again.

Add a fifth related task with Completion Unit 0. Expect 2 divided by 5: 0.4, or 40%. The drop is intentional: the project contains more unfinished work. Adding scope can reduce the percentage without undoing completed tasks.

6. Check what the percentage cannot tell you

A short administrative task and a large production task each count as one unit. Completing nine small tasks while one substantial deliverable remains unfinished can produce a high percentage that overstates practical readiness.

Label the result Task Completion rather than Project readiness. Keep client review, approval and delivery state separate. A task ratio of 100% does not establish client acceptance.

Inspect projects with no related tasks separately. An empty project has no meaningful completion ratio and should not be interpreted as finished.

Troubleshoot unexpected results

  • Too low: inspect all related tasks, including old or accidentally linked records.
  • No change: confirm you edited the selected numeric property and that the task belongs to this project.
  • Plausible but wrong: check blanks, values outside 0–1 and incorrect project assignments.
  • Dashboard only shows unfinished work: inspect the actual relation; a filtered display is not a substitute for checking the rollup’s inputs.

Use the rollup troubleshooting guide or review relations versus rollups.

Frequently asked questions

Does this percentage measure time spent?

No. It measures the average completion value of related tasks. Time spent needs separate recorded values and a calculation.

Why did progress fall after adding a task?

Adding an unfinished task increases the denominator. Two completed tasks out of five represent a smaller proportion than two out of four.

Should I use this alongside an existing Done checkbox?

Only temporarily for the teaching test. Maintaining separate completion fields manually can create contradictions. Choose a consistent operational process.

Does 100% mean the project is approved?

No. It means all included tasks have a completion value of 1. Client approval and delivery acceptance are separate outcomes.

Why should every test task have a value?

Explicit 0 and 1 values make the expected average reproducible. Blanks make the intended input set harder to verify.

Want this already built?

This guide shows you how to build and check the workflow yourself. For the wider client and project workspace, explore Freelancer CRM and compare its structure with how you work.

See the system →