On-Budget Delivery
On-Budget Delivery: Percentage of projects completed in the period within their budgeted hours.
Formula
On-Budget = Projects within budget / Total projects × 100 Computable definition
The canonical formula in the GASP formula grammar. The MCP server compiles it to SQL over the datasets listed below.
count_distinct(field.project_id where in_period(field.project_completion_date) and field.hours_actual <= field.hours_budgeted) / count_distinct(field.project_id where in_period(field.project_completion_date)) Unit: percent (the formula yields an unscaled ratio)
Notes: Budget is measured in hours.
Data requirements
Grain: Per event · Frequency: Per milestone · Aggregation: event · Staged: no · Main source: PSA.
| Field | Dataset | Type |
|---|---|---|
hours_actual | project | decimal |
hours_budgeted | project | decimal |
project_completion_date | project | date |
project_id | project | string |
snapshot_date | project | date |
Example SQL (Postgres)
SELECT (CAST((SELECT COUNT(DISTINCT project_id) FROM project WHERE snapshot_date = :period_end AND ((project_completion_date >= :period_start AND project_completion_date <= :period_end) AND hours_actual <= hours_budgeted)) AS DOUBLE PRECISION) / NULLIF((SELECT COUNT(DISTINCT project_id) FROM project WHERE snapshot_date = :period_end AND (project_completion_date >= :period_start AND project_completion_date <= :period_end)), 0)) AS on_budget_delivery From an agent: with the GASP MCP server, call
lookup_metric({ "name": "On-Budget Delivery" }) or generate_query({ "metric": "On-Budget Delivery", "adapter": "<your adapter JSON>" }).