Research · Analysis · Public ContractsThe Public Service Institute
1.3M+ records2004–2026 coverage11 publications
How-to Guide For suppliers October 2026

How to Build a Compliance Matrix

The compliance matrix is the one working document that keeps a response compliant while it tries to be persuasive. Built before writing, it becomes the outline; used at assembly, it becomes the last check.

The Public Service InstitutePractical guidance grounded in the compiled open-data corpus

Here is the build, start to finish. It takes about an hour on a moderate solicitation, and it is the highest leverage hour in the bid. The lifecycle context — where the matrix sits between qualification and submission — is in How to Bid on Government Contracts.

Step one: extract, do not summarize. Walk the entire package — the instructions, the evaluation criteria, the specifications, every annex, every addendum issued so far — and pull out each discrete requirement verbatim: every must and shall (mandatory), every scored criterion and sub-criterion, every administrative condition (signatures, certificates, formats, deadlines). Copy the tender's own wording and keep its numbering. A requirement paraphrased is a requirement half-read.

Step two: give every row five columns. Requirement (verbatim, with the tender's reference number). Where addressed (section and page of your response). Evidence (the certificate, project, metric, or named person that proves it). Owner (the person accountable for that row being real). Status — and hold the status to three values: done, in progress, cannot comply. The third value is bid/no-bid information, and finding it on day one instead of submission week is the matrix paying for itself.

Step three: write to the matrix, not around it. The matrix is the outline: your response's section structure mirrors it, so an evaluator working row by row finds each answer where the row says it lives. This is also effort allocation — the rows attached to scored criteria get the hours; the rows attached to administrative conditions get checkboxes, twice.

Step four: make the final pass a matrix pass. At assembly, before submission, re-walk every row against the final documents — amended for any late addenda — and tick each one against the actual assembled package, not the draft. The omissions that disqualify live in the gap between what was planned and what got uploaded. The mistakes this pass catches are exactly the ones that lose bids; the catalogue is in Proposal Mistakes That Lose Bids.

Step five: keep it after submission. The matrix is the delivery checklist in waiting — what you promised, where — and the starting point at recompete, when the next solicitation inherits three-quarters of the same rows. Firms that bid repeatedly stop rebuilding the wheel. A drafting assistant that works against the requirement list rather than a blank page — pubsec.pro's generator does, free — speeds the writing, but the matrix itself stays the source of truth.

Common questions

Should I use the tender's numbering or my own?

The tender's. Evaluators score against their own structure; mirroring it makes every row of their sheet easy to fill and every gap visible. Your house style can live inside each section.

One matrix or separate ones for mandatories and rated criteria?

One, with a column marking which kind each row is. The full picture is the point: administrative rows, mandatory rows, and scored rows in a single place, because disqualification ignores the distinctions your document layout makes.

When is it too late to build one?

It is never too late until the deadline, but building it after writing means auditing a finished document against requirements it may not meet. Before writing is the design; after is damage control.