MyStatusFlow Docs

Status and Percent Complete

How status and percent complete work together, how they're calculated for parent tasks, and how to edit them.

What are Status and Percent Complete?

  • status: A task's current state: "Not Started", "In Progress", or "Completed".
  • percent complete: A numeric value from 0 to 100 representing how much work is done.
  • relationship: Percent Complete drives Status (one-way sync); Status doesn't change Percent Complete.
  • parent tasks: Both values are calculated from children for parent tasks (groups).

How Status and Percent Complete work together

One-way sync: Percent → Status

  • source of truth: Percent Complete is the source of truth.
  • automatic update: Status is automatically set based on Percent Complete.
  • no reverse sync: Changing Status does NOT change Percent Complete.

Status mapping

0% → "Not Started"
1-99% → "In Progress"
100% → "Completed"

For regular tasks

  • you edit percent: Enter a percentage (0-100) in the Percent Complete column.
  • status updates automatically: Status changes based on the percentage you entered.
  • examples:
    • Set 0% → Status becomes "Not Started"
    • Set 50% → Status becomes "In Progress"
    • Set 100% → Status becomes "Completed"

For parent tasks (groups)

  • calculated from children: Both Percent Complete and Status are calculated from immediate children.
  • cannot edit directly: Editing parent percent/status has no effect; edit child values instead.
  • roll up automatically: Parent values update automatically when children change.

Percent Complete calculation

For regular tasks

  • you set it: Enter any value from 0 to 100.
  • validation: Values outside 0-100 are clamped to valid range.
  • integer only: Only whole numbers are supported (no decimals).

For parent tasks

  • average of children: Parent percent = average of immediate children's percent complete.
  • immediate children only: Only direct children are included (not grandchildren).
  • non-milestone children: Only non-milestone children are included in the calculation.
  • default value: Children with no percent default to 0.
  • rounding: Result is rounded to nearest integer.

Formula: ROUND(SUM(child_percent) / COUNT(children))

Example:

  • Child 1: 100%
  • Child 2: 50%
  • Child 3: 0%
  • Parent: (100 + 50 + 0) / 3 = 50%

Status calculation

For regular tasks

  • derived from percent: Status is automatically set based on Percent Complete.
  • rules:
    • 0% → "Not Started"
    • 1-99% → "In Progress"
    • 100% → "Completed"

For parent tasks

  • averaged from children: Status is averaged from immediate children's status values.
  • status values:
    • Not Started = 0
    • In Progress = 1
    • Completed = 2
  • floor rounding: Uses floor (favors more conservative status).
  • formula: FLOOR(AVG(status_values))

Example:

  • Child 1: Completed (2)
  • Child 2: In Progress (1)
  • Child 3: Not Started (0)
  • Average: (2 + 1 + 0) / 3 = 1.0
  • Floor: 1 → "In Progress"

Editing Status and Percent Complete

Percent Complete column

  • cell type: Number input (0-100).
  • editing: Click cell and type a number.
  • validation: Automatically clamped to 0-100 on blur.
  • integer only: Decimals are rounded to whole numbers.

Status column

  • cell type: Dropdown select.
  • options: "Not Started", "In Progress", "Completed".
  • editing: Click cell and select from dropdown.
  • overwritten: Manual status changes are overwritten when percent changes.

Parent tasks

  • read-only: Parent percent and status are calculated automatically.
  • edit children: To change parent values, edit child values instead.
  • immediate feedback: Parent values update immediately when children change.

Examples

Example 1: Regular task

  1. Set Percent Complete: Enter 50 in Percent Complete column.
  2. Status updates: Status automatically changes to "In Progress".
  3. Change to 100%: Enter 100 → Status changes to "Completed".

Example 2: Parent task with 3 children

Children:

  • Child 1: 100% (Completed)
  • Child 2: 50% (In Progress)
  • Child 3: 0% (Not Started)

Parent calculation:

  • Percent Complete: (100 + 50 + 0) / 3 = 50%
  • Status: FLOOR((2 + 1 + 0) / 3) = FLOOR(1.0) = "In Progress"

Example 3: All children complete

Children:

  • Child 1: 100% (Completed)
  • Child 2: 100% (Completed)
  • Child 3: 100% (Completed)

Parent:

  • Percent Complete: (100 + 100 + 100) / 3 = 100%
  • Status: FLOOR((2 + 2 + 2) / 3) = FLOOR(2.0) = "Completed"

Example 4: Mixed statuses

Children:

  • Child 1: 100% (Completed)
  • Child 2: 75% (In Progress)
  • Child 3: 0% (Not Started)

Parent:

  • Percent Complete: (100 + 75 + 0) / 3 = 58% (rounded)
  • Status: FLOOR((2 + 1 + 0) / 3) = FLOOR(1.0) = "In Progress"

Example 5: Milestone children

Children:

  • Child 1: 100% (Milestone, Completed)
  • Child 2: 50% (Regular task, In Progress)
  • Child 3: 0% (Regular task, Not Started)

Parent:

  • Percent Complete: Only includes non-milestone children: (50 + 0) / 2 = 25%
  • Status: FLOOR((1 + 0) / 2) = FLOOR(0.5) = "Not Started"

Tips

  • Focus on Percent Complete: It's the source of truth; Status follows automatically.
  • Edit children for parents: To change parent values, edit child values.
  • Use milestones carefully: Milestone children are excluded from percent calculations.
  • Keep it simple: Use round numbers (0, 25, 50, 75, 100) for clarity.

FAQ

Why did my Status change when I only edited Percent Complete?

Status automatically syncs from Percent Complete. This is by design to keep them consistent.

Can I set Status without Percent Complete?

Yes, but Status will be overwritten when Percent Complete changes. Percent Complete is the source of truth.

Why isn't my parent task showing 100% when all children are complete?

Make sure all immediate children have 100% percent complete. Grandchildren don't affect parent percent.

Why can't I edit Percent Complete for a parent task?

Parent tasks calculate percent from children. Edit child values instead.

How are milestone children handled?

Milestone children are excluded from parent Percent Complete calculations but included in Status calculations.

What happens if I delete a child?

Parent values recalculate automatically from remaining children.

Can I have a parent with 0% complete but "In Progress" status?

No. Status is derived from Percent Complete. If percent is 0, status is "Not Started".


Last updated: 2025‑01‑15