Vertical band of failed paint and plaster stripped back to the white substrate on an olive interior wall
A band of failed finish like this is one template row: location, trade, severity, a photo and a due date, in under a minute.

Part of the guide: The Complete Guide to Inspection Reports: Structure, Evidence, Sign-off and Examples

Most free punch list templates you will find are a five-column spreadsheet: item, location, description, responsible, done. They work for about forty items. Past that, they generate disputes, because they lack the fields that let you prove what was raised, when, by whom, and whether it was ever actually verified.

Here is the full field set, what each one is for, and which ones you can safely drop.

The 12 fields

#FieldWhy it existsSkippable?
1ReferenceUnambiguous identity for tracking, correspondence and disputesNo
2LocationBuilding / level / room / grid. The single biggest time-saver for the subNo
3Trade or responsible partyLets you split the list per subcontractorNo
4DescriptionWhat is wrong, factually and specificallyNo
5PhotographEnds 90% of "that's not what I saw" conversationsNo
6SeverityHow bad the defect is, objectivelyNo
7PriorityHow urgently this project needs it fixedSometimes
8Required actionWhat "fixed" looks likeNo
9Raised by / date raisedProvenance. Matters when the list is contestedNo
10Due dateWithout it, nothing is late, so nothing is urgentNo
11StatusOpen → in progress → closed → rejectedNo
12Verified by / date closedProof of back-check. The field most templates omitNo

The four that most templates omit, priority, raised by, due date and verified by, are precisely the four you need when a closeout goes wrong. Add them even if you never look at them on a good project.

Infographic of the twelve fields of a punch list template with an example value for each: reference, location, description, photo, trade, assignee, severity, priority, status, due date, verified by, closed on
The twelve fields, with the kind of value each one holds. Everything else is optional.

Reference numbering that survives contact with a project

Sequential numbering (1, 2, 3…) breaks the moment two people punch simultaneously, or when you insert an item later. Use a compound reference:

A project in Punch List AI with items numbered from the project reference
Numbering in the app: project reference plus a running number, assigned on save, never reused.

{PROJECT}-{AREA}-{SEQ}RIVERSIDE-L2-047

Three properties make a reference scheme good:

  • Unique forever. Never reuse a number, even for a deleted item.
  • Readable aloud. Someone will say it on the phone. "Riverside level two, forty-seven" works; a UUID does not.
  • Sortable by area. So the sub working level 2 can filter to their own items.

Auto-generate it and allow a manual override. Auto-generation prevents collisions; the override handles the project where the client insists on their own scheme.

Severity vs priority: keep both

Most templates collapse these into one column. That is a mistake, and it shows up as soon as you have a cosmetic defect in the show apartment the owner is walking on Friday.

SeverityPriority
AnswersHow serious is this defect?How soon must it be fixed?
Derived fromThe defect itselfProject context, sequence, who is visiting
Changes over time?RarelyConstantly
ScaleLow / Medium / High / CriticalLow / Medium / High / Critical
ExampleScuffed skirting = Low severity…but High priority if it is in the show unit

Keeping them separate lets you sort by severity for the client report and by priority for the week's work schedule. Same data, two audiences.

Severity definitions worth writing down

  • Critical: safety risk, structural concern, or prevents occupation. Stop and escalate.
  • High: will cause damage, failure or a legitimate complaint if not corrected. Water ingress belongs here.
  • Medium: clear non-conformance with the spec or workmanship standard, no immediate consequence.
  • Low: cosmetic, minor, visible only on close inspection.

Put these four definitions in the report header. Without them, "high" means whatever the reader wants it to mean.

The status workflow

Five states, and the transitions matter more than the states:

  1. Open: raised, issued, untouched
  2. In progress: the sub has started
  3. Ready for inspection: the sub says it is done. Only the sub sets this.
  4. Closed: verified by the person who raised it. Only the raiser sets this.
  5. Rejected: inspected, still wrong, with a written reason. Returns to open.

Add a sixth, On hold, if you regularly hit items blocked by something outside the sub's control: waiting on a variation instruction, waiting on a long-lead part. Without it, those items sit as "open" and pollute your overdue count.

A copyable structure

If you are building this in a spreadsheet today, these are the columns in the order that works on a phone screen:

RefLocationTradeDescriptionSeverityPriority Action requiredRaised byRaisedDueStatusVerified byClosedPhoto
RIV-L2-047L2 / Rm 214 / N wallPlastering Diagonal crack in plaster approx. 300 mm from door frame cornerMediumMedium Expose, assess cause, make good and redecorate to matchJ. Okafor10 Sep24 Sep Open,,IMG_4471
RIV-L3-112L3 / Apt 3B / ensuiteWet trades Discontinuous silicone at shower tray / wall junction, approx. 120 mmHighHigh Strip and reapply full mould-resistant beadJ. Okafor10 Sep17 Sep Ready for inspection,,IMG_4488

Fields to leave out

Templates bloat. These usually earn their removal:

  • Cost estimate per item, unless you are the one paying for the fix, this invites argument and is rarely accurate at inspection time.
  • Free-text "comments" with no owner, becomes a graveyard. Use rejection reasons and dated notes instead.
  • Duplicate location fields (building / block / zone / area / room), collapse to one structured location string.
  • "% complete" per item, an item is done or it is not. Percentages hide the truth.

Where spreadsheets break down

A spreadsheet is a perfectly good punch list for a small job. It fails on three specific things, and it fails predictably:

  • Photos. The moment images live in a separate folder referenced by filename, they start getting lost, and a punch list without photographs is an opinion.
  • Concurrent editing on site. Two people punching different floors into one file produces two versions of the file.
  • The transcription gap. Notes taken on site get typed up later, that evening at best. Detail decays fast, and roughly a third of the items lose the specificity that made them actionable.

That last one is the real cost. Whatever tool you use, the test is whether the item is finished before you walk away from the defect.

Every field above, filled in on site

Punch List AI has this exact structure built in, auto reference numbering, separate severity and priority, the five-state status workflow, and drafts the description and required action from your photograph.

Get the free app

Questions people ask

Should I use a spreadsheet or an app for a punch list?

A spreadsheet is fine for a small job with one trade. It breaks down when photos have to travel with items, when the list is updated on site rather than at a desk, and when the client wants a report rather than a file. Here is how to choose an app if you are past that point.

What is the difference between severity and priority on a punch list?

Severity is how bad the defect is; priority is how soon it has to be dealt with. A cosmetic scratch on the handover day is low severity but high priority. Keeping both lets you sort the client report one way and the week's work the other.

How should punch list items be numbered?

Project code, then a running number that never gets reused, even when an item is closed or rejected. PROJ-014 stays PROJ-014 for the life of the job. Renumbering is how items get lost.