Construction Control — Articles

How to Fill Out AIA G702 and G703: A Line-by-Line Walkthrough for Subcontractor Billing Staff

If you bill on AIA forms, two pages decide your month: the G703 and the G702 — in that order. The G703 continuation sheet is the detail: every schedule-of-values line — what was completed before this period, what was completed in it, what is sitting stored. The G702 is the one-page summary and certification that turns it into the amount you are asking for. Mastt's guide to the two forms uses the same working order: complete the continuation sheet first, because its totals feed the summary — an error in the G703 carries straight into the G702.

WerxApp's pay-application FAQ names the most common G702 and G703 error as 'Totals that disagree between the two forms.' A billing lead quoted on the Procore Community forum described the spreadsheet version of the same risk: 'We were using the old trusty Excel AIA G702/G703's but there's a lot of room for input error.' The walkthrough below covers where that room is — column by column, line by line, and the tie-outs to run before the application leaves your office.

1. What you need on the desk before you start

Five things — every figure on the two forms traces back to one of them.

Your subcontract and the GC's billing instructions. They set the form rendition, the submission deadline, the retainage rate, and whether stored materials can be billed at all. Where they and this walkthrough disagree, the subcontract governs.

The schedule of values as approved at job setup — the skeleton of the G703: the same lines, in the same order, at the same values.

Your approved change orders, in writing — Mastt's before-you-start list says the same: only change orders formally approved in writing. Executed change orders change the contract sum; pending and verbal ones do not.

Last month's certified application — the one certified for payment, not your working draft and not one still waiting on certification; two of this month's most-copied figures (G703 column D, G702 line 7) come straight from it.

Stored-material documentation, if you bill stored materials: delivery receipts, invoices, and insurance or bonded-storage records where the contract requires them.

A caution on editions: versions differ, and spreadsheet renditions label the right-hand columns differently — percent complete, balance to finish, and retainage trade positions. The walkthrough names each figure by what it holds; check the heading on your version before you trust a column letter.

2. The G703, column by column

Columns A, B, and C are the skeleton. Column A is the line number and column B the description, both carried from the approved schedule of values — Mastt's guide advises keeping the descriptions from the original bid or estimate, because renamed lines invite questions. Approved change orders get their own lines, labeled by change-order number. Column C is each line's scheduled value. Add column C and you should get the contract sum to date: original contract plus approved change orders. If it doesn't, stop and fix the skeleton.

Column D — work completed from previous applications — is, line by line, the last certified application's column D plus its column E, copied from that application. Stored material (column F) is not in D: it reaches D only after it has been installed and moved into column E on a prior application. WerxApp's checklist calls a stale previous column 'a silent killer': rebuild the sheet from an old file, or carry the wrong month forward, and a line gets billed twice or money left behind — with no entry looking wrong.

Column E — work completed this period — is the value of work performed since the last application, line by line, taken from field progress — walkthroughs, progress reports, the superintendent's read. Mastt's guide warns against guesswork and round numbers here; a sheet where every line sits at a convenient percentage is a sheet a reviewer reads twice.

Column F — materials and equipment suitably stored — is material delivered but not yet installed, on site or in a bonded or insured off-site facility, billed only where the contract allows it, with the receipts to prove it. When stored material is installed later, its value moves out of column F into completed work. The move changes the category, not the total: the value comes out of F and goes into E in the same amount, so column G does not change. Add it to E and leave it in F, and the line is billed twice.

Column G — total completed and stored to date — is D plus E plus F, line by line. Its total is the single most-traveled number in the package: it becomes line 4 of the G702. The two figures derived from it are percent complete (G divided by C, line by line) and balance to finish (C minus G).

Retainage sits on the G702 for most jobs; the exception is variable retainage — different rates by line, or a rate that steps down at a milestone — where retainage is figured line by line on the continuation sheet and its total carries to line 5 on the G702.

3. The G702, line by line

Start with the header: owner, contractor, project, application number, and the period-to date. Application numbers run in sequence — Planyard's step-by-step G702 guide lists sequential numbering for each billing period as part of the header — and a gap or a repeat invites questions about what else was assembled carelessly. Then the nine lines, each copied from somewhere named or computed from the lines above it.

Line 1 — Original contract sum. The contract as signed, before any change orders. It does not change from month to month.

Line 2 — Net change by change orders. The total of approved change orders to date, additions minus deductions. Approved only — the same written-approval test as the G703 skeleton. The form's change-order summary breaks this figure down by change order.

Line 3 — Contract sum to date. Line 1 plus line 2. Check it against the total of G703 column C; the two must be equal.

Line 4 — Total completed and stored to date. Copied from the total of G703 column G — not re-typed from a progress report, not estimated.

Line 5 — Retainage. The amount withheld to date, figured at the rate or rates in your subcontract. The form splits it: 5a on completed work, 5b on stored material, where the contract treats the two differently.

Line 6 — Total earned less retainage. Line 4 minus line 5. Everything earned to date, net of what is being held.

Line 7 — Less previous certificates for payment. The line 6 figure from the last certified application, copied exactly. If the amount certified differed from the amount you submitted, use the certified amount. If last month's application was submitted but not yet certified, use the last one that was. Mastt's guide is explicit that this line 'has nothing to do with what you've been paid': if last month's application was certified but the money has not arrived, line 7 still carries the full certified figure. Entering what you actually received understates the credit and overstates this month's request.

Line 8 — Current payment due. Line 6 minus line 7. The amount this application asks for — this period's earnings, net of retainage, that have not been certified before.

Line 9 — Balance to finish, including retainage. Line 3 minus line 6: the contract value still unearned, counting the retainage still held, which is released under the terms of your contract.

Below the lines sit the signatures: the contractor's certification — signed, and notarized where the project requires it — and the certificate for payment completed by the reviewer. An unsigned certification can hold an otherwise clean application; treat the block as a line item, not an afterthought.

4. The tie-outs to run before it leaves

Six checks, mostly arithmetic, all yours:

Before you submit: confirm the total of G703 column C equals G702 line 3, and the total of G703 column G equals G702 line 4 — the pair behind the 'totals that disagree' error. Check every line's column D against last month's certified to-date figure, line by line, not just in total. Confirm no line is more than 100% complete: column G must not exceed column C on any line. If the work has outgrown the line, an approved change order has to raise the scheduled value, or get its own line, before you bill past it. Confirm line 7 is last month's line 6, copied, not recomputed. Confirm the retainage rate and the base it is applied to match the subcontract and last month's treatment. And confirm the application number and period are this month's, on every page.

That is the forms layer. It says nothing about whether the work behind the numbers is documented — which is the layer underneath.

5. Where the workbook fits — and where it doesn't

Clear boundary first: the Construction Control workbook does not fill in the G702 or G703, and it does not check any total in the list above. The forms math stays on your own review.

What it reconciles is the layer that feeds the extra-work lines of the schedule of values. A change-order line on the G703 starts life as field tickets and a change-order request; if a ticket was entered twice, a request has no tickets behind it, an approved change order never reached the schedule of values, or a billed value disagrees with the approved one, the error arrives on the G703 baked into column C or column E. The workbook reconciles T&M tickets to change-order requests to the pay-app schedule of values and flags seven exceptions by name: Duplicate ticket, Missing fields, Unlinked ticket, COR without backup, Pending COR vs ticket mismatch, Approved COR missing from pay app, and Approved COR vs billed value. It does not approve anything, it does not check ticket hours against payroll, and it does not guarantee an application will be accepted or paid. One figure needs the same care on both sides: the workbook's pay-app sheet has a 'Prior completed $' column, typed in by hand rather than carried forward. Treat it as you treat G703 column D: copy it from the certified application, not from memory.

The forms reward the same habit as the backup behind them: every number copied from a named source, and every total proven against the sheet it came from, before the package goes out.

Before your next application