Sign in

Blog · Finance metrics and formulas · Professional services

Project margin analysis: revenue, costs and commitments

Compare project revenue with delivery costs and the work still to come. Build separate views of billed revenue, recognized revenue and forecast final margin, then reconcile them to your finance exports.

The short answerProject margin analysis compares a project's recognized revenue with its incurred delivery costs and separately estimates the margin expected at completion. Start with revenue, labor and supplier exports using the same project IDs and cutoff date. Reconcile current costs to the ledger, then add outstanding commitments and uncommitted remaining work without counting either twice.

Project margin analysis compares recognized project revenue with incurred delivery costs, then tests whether the remaining work preserves that profit. Keep billed revenue separate and build a second view for expected final margin. Otherwise an early invoice or an unrecorded supplier commitment can make a weak project look healthy.

Start with three different questions

The current accounting view asks how much margin the delivered work has earned. The billing view asks how much has been invoiced. The completion view asks what the entire approved job is now expected to earn.

These views share project IDs, but their revenue and cost boundaries differ. FASB's revenue recognition implementation guidance describes recognition around transferring promised goods or services to customers. An invoice date alone therefore does not establish earned revenue.

For this review, project margin includes assigned delivery labor, subcontractors and other direct delivery expenses. Central overhead and unassigned staff costs remain outside the calculation and must be reconciled separately. Use a contribution margin ratio only with its own explicit variable-cost definition; do not silently substitute it for project margin.

Gather the exports and fix the cutoff

Take a recognized-revenue ledger extract, invoice register, payroll or time-cost export, supplier cost detail and outstanding purchase-order report. Ask each project manager for remaining work not covered by existing commitments. Use approved contract value rather than an unsigned proposal for the completion revenue estimate.

Keep these fields wherever available:

Field Why it matters
Project ID and transaction ID Assign each row once and identify duplicates
Service date and posting date Test the reporting cutoff and late entries
Revenue or cost category Separate labor, subcontractors and other delivery costs
Recognized, billed or remaining status Prevent unlike amounts from being added
Purchase-order reference Remove incurred amounts from future commitments
Amount and currency Compare consistent USD amounts

Use inception-to-date figures throughout the current project view. A month's revenue against lifetime costs is not a margin. Keep canceled orders out of remaining commitments and flag missing project IDs rather than allocating them by guesswork.

Calculate margin to date

Consider a US consulting company's projects through September 30, 2026. Labor includes the firm's assigned payroll burden; all amounts below are illustrative USD. Percentages are rounded to one decimal, using unrounded calculations.

Project Billed revenue (USD) Recognized revenue (USD) Labor (USD) Subcontractors (USD) Other costs (USD) Incurred costs (USD) Margin dollars (USD) Margin
Atlas 170,000 150,000 60,000 15,000 5,000 80,000 70,000 46.7%
Birch 85,000 100,000 55,000 25,000 5,000 85,000 15,000 15.0%
Cedar 80,000 80,000 35,000 10,000 5,000 50,000 30,000 37.5%
Total 335,000 330,000 150,000 50,000 15,000 215,000 115,000 34.8%

Place these columns in A:I, with Atlas on row 2. In Excel, enter the following in G2, H2 and I2, respectively, then fill down:

=SUM(D2:F2)
=C2-G2
=IF(C2=0,NA(),H2/C2)

For the total margin, divide total dollars rather than averaging project percentages:

=SUM(H2:H4)/SUM(C2:C4)

If your raw export has project IDs in column A and recognized revenue in column D, summarize Atlas with:

=SUMIFS(Revenue!$D$2:$D$5000,Revenue!$A$2:$A$5000,$A2)

Microsoft documents SUMIFS as summing rows meeting specified criteria. Filter the source to the agreed cutoff before applying this example, or add date criteria. Covirage is not affiliated with Microsoft.

Atlas's billed revenue exceeds recognized revenue by $20,000. Birch's recognized revenue exceeds billing by $15,000. These differences need explanations, but neither belongs in the current margin numerator as extra profit or expense. Collection timing belongs in the separate project cash flow review.

Add the cost of finishing

For each project, split remaining costs into open commitments not already incurred and additional work not yet committed. Ask for remaining hours and rates rather than a single unexplained contingency.

Project Approved total revenue (USD) Incurred costs (USD) Remaining commitments (USD) Uncommitted remaining work (USD) Forecast final cost (USD) Forecast final margin (USD) Final margin
Atlas 240,000 80,000 20,000 35,000 135,000 105,000 43.8%
Birch 130,000 85,000 10,000 10,000 105,000 25,000 19.2%
Cedar 120,000 50,000 15,000 15,000 80,000 40,000 33.3%
Total 490,000 215,000 45,000 60,000 320,000 170,000 34.7%

With this table in A:H, use these formulas in F2, G2 and H2:

=SUM(C2:E2)
=B2-F2
=IF(B2=0,NA(),G2/B2)

Birch has the lowest current and final margins. Its review should focus on the commercial terms and delivery estimate. Cedar's final margin falls below its current margin because the remaining work carries additional cost relative to the approved revenue left to earn. Review the assumptions with the project manager before changing staffing or price.

Prove the two views

Recognized revenue of $330,000 less incurred costs of $215,000 must equal current margin of $115,000. Tie recognized revenue to the ledger and the cost categories to the underlying payroll and supplier detail. The SEC's income statement presentation rule distinguishes service revenues, cost of services and selling and administrative expenses; your project view needs an explicit bridge to those company totals.

The completion proof is separate: $215,000 plus $45,000 plus $60,000 equals $320,000 of final cost. Approved revenue of $490,000 less that cost equals $170,000 of final margin. Each remaining supplier amount should have an order reference or a documented estimate, with no overlap.

Construction jobs need additional attention to their contract and recognition policies. Use the distinct construction project profitability analysis for that review.

Where project margin goes wrong

  • Billing treated as earnings. Advance invoicing changes the billing position without proving delivery margin.
  • Commitments counted twice. A received supplier service may appear in both an accrual and the open order report. Remove the incurred portion from future costs.
  • Labor priced inconsistently. Billing rates are not labor costs. Apply the same payroll-cost policy and reconcile assigned labor to the payroll total.
  • Unsigned changes treated as approved revenue. Keep commercial upside separate until it belongs in the approved forecast under the company's policy.
  • Only current margin reviewed. A profitable start can be followed by expensive remaining work. Ask for evidence behind the completion estimate every review cycle.

Review your own project file in Covirage

Bring a sample of your own project revenue, labor, supplier-cost and commitment exports. Covirage maps the columns, and its tools compute and check the figures; the external AI model explains the results with every figure traced to its rows. Create a free Covirage account, which takes about a minute, then set up your business and bring your file.

See Covirage for professional services for the industry context.

Questions people ask

Should project margin use billed or recognized revenue?

Use recognized revenue for an accounting margin and keep billed revenue in a separate column. Billing follows invoice milestones, which can precede or follow delivery. A billed-revenue view is useful for reviewing invoicing progress, but it needs its own label and does not replace the recognized-revenue calculation.

Are open purchase orders project costs?

An open purchase order may represent a future commitment rather than an expense already incurred. Determine what has been delivered or accrued, remove that part from the remaining commitment, and add only the undelivered balance to the forecast. Check cancellation rights and whether the work is still required.

What does a negative project margin mean?

It means the included costs exceed the revenue used in that view. Investigate missing revenue entries, scope changes, late supplier accruals and genuine overruns before acting. A negative margin to date and a negative forecast final margin answer different questions and may need different responses.

Who should own the project margin review?

Finance should reconcile recognized revenue and incurred costs. Project managers should explain remaining hours, supplier commitments and delivery risks. The engagement sponsor should approve commercial actions such as scope changes. Shared ownership keeps the accounting evidence connected to the work still required.