Contract Performance & EVM — Controller Guide
Earned Value Management (EVM) answers one question: is this contract on track — on cost and on schedule — and where is it going to end up? Arcvue takes three numbers from your contract (what you planned to spend, what you've earned by finishing work, and what you've actually spent) and turns them into a health read and a projected final cost. This guide explains the numbers in plain English, then walks the exact clicks to work them on a contract. It assumes you run a business but aren't a career government accountant.
For: controllers and program managers · Time: ~15 minutes · You'll need: the Accounting module and a contract with a funded value set.
There is no standalone "EVM" page. The EAC / EVM surfaces render inside a single contract's detail page. Get there via Accounting → Contracts → Contracts (/accounting/contracts), then click a contract to open its detail (/accounting/contracts/:id). Scroll to the bottom — the EAC / ETC (EVM) panel sits below the contract's Funding status, CLINs, and GL activity. The Management Reserve, CPR Format 1, and Variance Narrative sections are inside that same panel, below its Recent snapshots strip.
Part 1 — The ideas you need first (read once)
The three EVM numbers everything is built from
- BAC — Budget at Completion. The total budget you're measuring against. In Arcvue you pick the basis: funded value or total contract value (more on this below).
- PV — Planned Value (classically BCWS). The budgeted cost of the work you planned to have done by now.
- EV — Earned Value (BCWP). The budgeted cost of the work you've actually completed — what you planned to spend on the work that's genuinely done.
- AC — Actual Cost (ACWP). What you've actually spent to do it, from the ledger.
Comparing the three tells you everything:
- CV — Cost Variance = EV − AC. Positive = under budget for the work done.
- SV — Schedule Variance = EV − PV. Positive = ahead of schedule.
- CPI — Cost Performance Index = EV ÷ AC. SPI — Schedule Performance Index = EV ÷ PV. Above 1.0 is good; below is a warning. Arcvue colors both to the DCMA convention: ≥ 0.95 green, ≥ 0.85 yellow, below 0.85 red.
% complete: PM-entered vs. LOE
EV depends on how much of the work is actually done. If a program manager has entered a physical % complete, Arcvue uses it. If not, it defaults to LOE (level of effort), where EV is set equal to PV — meaning CPI/SPI become a time-vs-cost read rather than a progress-vs-cost read. The panel always labels which mode is active, so you know whether you're looking at real progress or a time proxy.
PV source: spend curve vs. linear
PV needs a shape over time. With no spend plan loaded, Arcvue spreads the budget straight-line across the period of performance (the "linear default"). If you load a spend plan — a month-by-month planned-value curve — PV follows that curve instead, and SPI compares actual cost to the real planned shape. Front-loaded or back-loaded contracts need the curve to read schedule honestly.
EAC — where this contract is headed
The Estimate at Completion projects the final total cost from performance so far. Arcvue doesn't compute one optimistic number; it shows several standard methods side by side and recommends one:
| Variant | Formula | When it fits |
|---|---|---|
| BURN_RATE | AC + burn × months remaining | Simple run-rate projection |
| EAC1 | AC + (BAC − EV) | Overrun to date was a one-off; rest goes to plan |
| EAC2 | BAC ÷ CPI | Current cost efficiency continues |
| EAC3 | AC + (BAC − EV) ÷ CPI | Cost variance continues on remaining work |
| EAC4 | AC + (BAC − EV) ÷ (CPI × SPI) | Both cost and schedule are off |
| PM | Bottom-up estimate | You've entered your own number |
VAC — Variance at Completion = BAC − EAC. Negative means you're headed over budget. TCPI (To-Complete Performance Index) tells you the efficiency you'd need on the remaining work to still finish at BAC (or at the system EAC) — a TCPI far above your current CPI is a warning that BAC is no longer realistic.
Management reserve (the cushion, tracked honestly)
Management reserve (MR) is budget deliberately held back for in-scope unknowns — it sits outside the Performance Measurement Baseline (EIA-748 Guideline 8) and isn't assigned to any task until a risk materializes. The discipline is tracking it: authorized, consumed, remaining, and every consumption event logged (amount, destination CLIN, reason, who authorized it) for DCMA surveillance. MR that quietly disappears is a program in trouble; MR tracked openly is a program managed.
The CPR and variance narratives
The Contract Performance Report (Format 1) is the standard monthly EVMS report — cost and schedule performance by WBS element — that you submit to the contracting officer. When CPI or SPI falls below 0.95, DCMA requires a variance narrative explaining why; Arcvue's Bookkeeper can draft one against the actual GL drivers for a PM to review and finalize.
What Arcvue deliberately will not do
- It won't compute an EAC that ignores performance — a contract running over doesn't get an optimistic finish just because the budget said so.
- It won't let management reserve vanish untracked — every release is a logged event with an authorizer.
- It won't fabricate progress — with no PM % complete, it says so (LOE mode) rather than pretending it knows how done the work is.
Part 2 — How to run it
Two controls write on the management reserve and they are a step apart. Authorize MR records the authorization and reads Authorizing… while it saves. Log Consumption then records a draw against it, reading Logging…. Authorizing does not consume anything.
Step 1 — Open the contract and find the EVM panel
In the left nav, go to Accounting → Contracts → Contracts (/accounting/contracts). Click the contract you want to analyze. On the detail page, scroll past Funding status, Period of performance, CLINs, and Recent GL activity to the panel headed EAC / ETC (EVM).
The panel's subtitle line tells you the ground truth of the read at a glance: As of date, the BAC basis and dollar value, whether % complete is from PM or LOE (time-based), and the PV source (spend curve in green, or linear default).
If the panel shows a red "Funded value not set" banner, BAC is 0 and every EVM metric is degenerate. Fix funding first — upload the award PDF for extraction or set the funded value on the contract — then return. (Accounting-side contracts synced from an upstream ERP may not carry a funded value; pending prior-system confirmation you may need to set it manually.)
Step 2 — Pick the BAC basis
Top-right of the panel is a dropdown with two options: BAC = funded and BAC = total CV (total contract value). Choose the one you're measuring against — usually funded for in-period execution, total CV for whole-of-contract projection. Every card, variant, and index below recomputes against your choice.
Step 3 — Read performance top to bottom
Read the three rows of cards in order:
- BAC / AC / PV / EV — the four base numbers. AC shows monthly burn; PV shows elapsed %; EV shows % complete.
- CV / SV / CPI / SPI — CV and SV are ringed green when positive, rose when negative. CPI and SPI carry the DCMA color (green ≥ 0.95). This row is your health read.
- TCPI to BAC / TCPI to EAC / Projected complete — the efficiency you'd need to still land on budget, and the projected finish date with months of PoP remaining.
A CPI sliding below 0.95 with a projected-complete date past your PoP is your early warning to act.
Step 4 — Read the EAC variants and the recommendation
The EAC variants table lists BURN_RATE, EAC1–EAC4, and PM (if set), each with its formula, EAC, ETC (estimate to complete), and VAC vs BAC (green if you'll finish under, rose if over). The row Arcvue recommends is highlighted and tagged recommended, with the reason in italics beneath the table. Start from the recommended variant; use the others as a sensitivity range.
Step 5 — Load or refine the spend plan (for honest schedule)
If the subtitle says PV source is linear default and your burn isn't straight-line, load a curve. Click Spend plan (top-right). A modal opens:
- If none is loaded, click Generate linear plan to seed a straight-line curve from BAC + PoP, then refine it.
- Below the modal's summary table sits the Spend Plan Entry editor with three tabs: linear, manual, and paste.
- linear — enter Total ($), Start year/month, End year/month; the preview spreads it evenly.
- manual — click + add month and fill year / month / monthly $ rows (× to delete a row).
- paste — paste tab- or comma-separated rows (
year, month, monthly $) straight from a spreadsheet.
- Check the Preview: N months, total $… line, then click Save curve.
Once saved, PV follows your curve and the subtitle flips to spend curve (green).
The editor asks for a Start month and an End month as numbers, 1 to 12, and spreads the plan across that window. The loaded plan then shows one row per period with Monthly planned beside Cumulative PV, and a source column saying where each figure came from.
Loading a spend plan changes how SPI is calculated. With no plan, schedule performance is measured against a straight line. With one loaded, actual cost is compared to your curve instead — so the same costs can produce a different schedule verdict, and that is the point of loading it rather than a side effect. A contract that front-loads or back-loads work is misjudged by the straight line, which is exactly when the plan is worth entering.
Read Cumulative PV, not Monthly planned, when you are asking whether you
are behind. The monthly figure is the shape; the cumulative figure is the
comparison SPI actually makes.
Step 6 — Enter a PM override when you have better information
When the PM has a physical % complete or a bottom-up estimate, click PM Override (the blue button, top-right). In the PM EVM override modal:
- Physical % complete — enter a number like
35.5; this recomputes EV. Leave blank to stay on LOE. - Bottom-up EAC ($) — enter the PM's own estimate; the modal shows the system EAC for comparison.
- Note — the rationale, for the audit trail.
Click Save. The panel re-reads with the override; a PM note line appears when one is set, and a PM row joins the EAC variants table.
Step 7 — Snapshot the period
Click Snapshot (top-right) to freeze the current EVM read as a dated record. Snapshots accumulate in the Recent snapshots strip at the bottom of the panel (date, system EAC, PM EAC, CPI, VAC), giving you a trend line across reporting periods. Snapshot at each period close so the history is complete.
Management Reserve, CPR Format 1, and Variance Narratives
Arcvue has fully built surfaces for these three EVMS deliverables — Management Reserve tracking (authorized / consumed / remaining with a per-event log and a Log MR Consumption form), the CPR Format 1 generator (pick period year/month, then Download PDF or Download Excel), and AI-drafted Variance Narratives (Draft Variance Narrative → edit → Save final).
All three render inside the EAC / ETC (EVM) panel, below the Recent snapshots strip, separated by a divider. Scroll to the bottom of the contract detail page.
Management Reserve appears only once MR is authorized on the contract — a contract with no MR shows nothing there rather than a row of zeros. When MR is authorized, a Contract Budget Base (CBB) line sits above it showing the EIA-748 identity: CBB = PMB (your BAC) + MR. MR deliberately sits outside the performance measurement baseline, which is why it is never folded into BAC.
The fields these three forms ask for
Management Reserve records a dollar figure and who approved it —
Amount (USD) on one form and Amount ($) on the other. They are
the same kind of field wearing two labels; there is no difference between
them. Both take an Authorized by, which is also a column on the
allocation table, and an allocation additionally records its destination CLIN
and a reason.
Authorized by is the field that makes reserve movement defensible.
A reserve draw with no named authority is indistinguishable from an overrun
after the fact, which is precisely the question an auditor asks about MR.
CPR Format 1 is stamped to a period: a Period year and a Period month, the month chosen by name rather than a number.
A variance narrative starts from a Variance type, and the system drafts the text for you. Edit + finalize is where you correct that draft, and Save final records you — the person signed in — as the reviewer who signed off on the wording. There is no name to type: the reviewer is always whoever saved it.
The draft is a starting point, not the submission. The finalized text is what goes out, and the reviewer named beside it is asserting the narrative is true — not that the draft was generated.
Cancel closes any of these forms without recording.
Part 3 — When something looks wrong
| Symptom | What it means → Fix |
|---|---|
| Every metric is zero / "Funded value not set" banner | BAC is 0. Set the contract's funded value (award PDF extraction or manual entry), then reopen the panel. |
| CPI/SPI say "green" but you know you're behind | You're in LOE mode (subtitle says % complete = LOE). Enter a real Physical % complete via PM Override so EV reflects progress, not time. |
| SPI looks wrong on a front/back-loaded contract | PV is on the linear default. Load a real Spend plan curve (Step 5); the subtitle should read spend curve. |
| The EAC jumped between snapshots | Performance changed. A drop in CPI pushes the projected final cost up. Compare the two Recent snapshots rows and trace the driving cost variance in Recent GL activity above the panel. |
| The recommended variant seems too pessimistic | It follows performance, by design. Read the recommendation reason italics; if you have a defensible bottom-up number, enter it via PM Override — but log the rationale in the note. |
| CPI/SPI look wrong | They're ratios of the three base numbers, so a wrong index means a wrong input: EV overstated (claimed more complete than reality), AC not fully posted for the period, or a spend plan that doesn't match the current baseline. Verify inputs before trusting the index. |
| Management reserve doesn't add up | Authorized − consumed should equal remaining. A gap means a consumption event wasn't logged. Every draw must go through Log MR Consumption with amount, reason, and authorizer — MR only works if every release is recorded. |
| Two people see different EAC | Check the BAC basis dropdown (funded vs total CV) and the as-of date — they change every downstream number. Align on both first. |
| The spend plan or management reserve says it couldn't load, with Retry | The request did not complete — that is not a missing plan or an empty reserve. The spend-plan sub-panel no longer offers to generate a straight-line plan over one you may have shaped by hand, and the management reserve section stays on screen instead of disappearing. Click Retry to re-run that request alone; the rest of the panel is unaffected. |
One-line summary
EVM measures contract health from three numbers — planned, earned, and actual cost — yielding CV/SV, CPI/SPI (DCMA-colored), and a set of EAC methods that project the real finish. Work it on the EAC / ETC (EVM) panel at the bottom of a contract's detail page (Accounting → Contracts → a contract): pick the BAC basis, read the cards, load a spend plan and enter PM % complete for an honest read, then Snapshot the period. Management reserve, CPR Format 1 and AI-drafted variance narratives all live in the same panel, below the Recent snapshots strip.
Related
- Hours budgeted against hours used, by person and contract line → the contract's Hours tab, beside Revenue → Hours Budget
- Where funding, CLINs, and award documents live → Contract detail (Funding status)
- What a GovCon close covers → Close a Month (Period Close)
- How rates flow into cost-reimbursable billing → Indirect Rates