1. Home
  2. Help
  3. Engines
  4. Bid vs Actual
Tracking · Engine

Bid vs Actual

Closeout report comparing original bid line items against actual PO and CO outcomes. Surfaces which trades came in over, which estimating ratios were wrong, and which subs delivered to bid.

Engine Phase: Analytics Runtime: 15-30 seconds Business+

What it does

Bid vs Actual is the historical-learning engine that closes the loop between estimating and the field. After substantial completion, it reconciles every original bid line item against the actual procurement_items committed and the approved change_orders, then produces a structured variance report: executive summary, trade-level variance table, top wins (came in under), top overruns (came in over), CO drivers grouped by reason, and specific lessons for next bid.

This is the engine that feeds the company's estimate library. Generic benchmarks are useful; your own history is better. Every closed project run through Bid vs Actual sharpens the next bid because the estimating ratios get re-anchored to real outcomes.

When to use it

Investigate CO drivers

When variance traces to a heavy CO load, chain into Change Order Review filtered to the approved COs on the project — see which patterns drove the spread vs the original bid.

What to upload

Nothing — this is a server-side aggregation engine. It reads the original bid line items (historical_bids), the final PO log (procurement_items), and the approved change_orders for the project. The variance numbers are computed from those tables; there's no document upload step.

What it needs is the data already being there: historical_bids populated with the original line items, procurement_items committed and finalized, change_orders marked approved. The engine is honest about gaps — if data is incomplete, the report calls it out rather than guessing at the missing rows.

Step by step

  1. Open the engine

    Sidebar → EnginesBid vs Actual.

  2. Confirm project is closed

    The engine runs against post-completion data. Banner shows the project's final-billing status; if open, the result is provisional.

  3. Review source preview

    Banner shows: N bid line items, M committed procurement items, K approved COs. Gaps surface here.

  4. Run analysis

    15–30 seconds. CPM-style aggregation plus Claude-composed narrative.

  5. Read the executive summary

    Top of the result: total bid, total spent, variance percentage, and the one-line headline finding.

  6. Walk the trade-level variance table

    Every trade with bid vs actual, variance percentage, and rank. Sort by variance to find the biggest swings.

  7. Read the wins, overruns, and CO drivers

    Top wins (came in under), top overruns (came in over), CO drivers grouped by reason (scope-change / design-error / field-condition / coordination / other).

  8. Capture lessons for next bid

    The engine writes specific lessons (e.g., "Electrical estimating ratio was 12% low on this project type — raise the next bid"). Save to the company's learning library.

Understanding the results

Executive summary

Total bid, total spent, dollar variance, percentage variance, headline finding. The line for the exec brief.

Trade-level variance table

Every trade with bid amount, actual amount, dollar variance, percentage variance. Sortable and color-coded by direction.

Top wins / top overruns

Top 5 each. The wins teach you what to lean into; the overruns teach you what to fix in the next estimate.

CO drivers

Approved COs grouped by reason (scope-change / design-error / field-condition / coordination / other) with the cumulative dollar impact per category.

Sub performance ranking

Which subcontractors delivered to bid, which came in over. Feeds back into vendor reliability scoring for future bids.

Specific lessons

Claude-written lessons tied to specific line items. Saves to the learning library for the next estimating cycle.

Every control, explained

Run analysis

Consumes one run. 15–30 seconds.

Sort variance table

By trade / by bid / by actual / by variance percentage / by dollar variance.

Filter by CO reason

Narrow the CO drivers section to one category — useful for design-error postmortems.

Chain to CO Review

Opens CO Review filtered to the project's approved COs for deeper inspection of the drivers.

Chain to Procurement Tracker

Drill into procurement for the cost-code level detail behind any variance.

Save lessons to library

Persists the engine-written lessons to the company learning library, tagged with project type and trade.

Export PDF

Executive closeout variance report. Standard format for portfolio reviews.

Export XLSX

Raw bid vs actual data. Trade-level table for further analysis in Excel.