Compliance · 9 min read · Free template

Compliance matrix template for Canadian RFPs (free download)

A compliance matrix is a spreadsheet that lists every requirement in an RFP and maps each one to your response. One row per requirement, one location per row, one owner per row. On a Canadian RFP, it covers the mandatory and rated criteria in Part 4, the certifications in Part 5, the security and bonding requirements in Part 6, and the Statement of Work in Annex A. Download the free CSV template below, fill it in as you read the solicitation, and use it as your final pre-submission checklist. The bids that miss mandatory requirements are almost always the ones that skipped the matrix.

Download the free template

CSV file. Opens in Excel, Google Sheets, Numbers. Already filled with a worked Canadian RFP example you can wipe and reuse.

Download CSV →

What a compliance matrix actually does

Compliance matrix: a tracking spreadsheet that creates a one-to-one map between each requirement in an RFP and the place in your bid where you address it. It is part checklist, part audit trail, and part assignment tool.

The job of a compliance matrix is to make it impossible to miss a requirement. That is it. Everything else (assignment tracking, status, risk flags) is bonus. The core function is: read the RFP, write down every requirement, point to where your bid answers it, sign off, submit.

Buyers evaluate Canadian public-sector bids pass/fail on the mandatory criteria first. Miss one and your bid is non-compliant before anyone scores a single rated criterion. The matrix is the cheapest insurance against that outcome. Two to four hours of structured reading prevents the most expensive bid-writing failure mode, which is writing 60 pages of beautiful proposal that never gets evaluated because of an unanswered mandatory on page 14.

Why Canadian RFPs need a Canadian-shaped matrix

Most compliance matrix templates online are built for US federal RFPs. They reference Section L (Instructions to Offerors), Section M (Evaluation Factors), and Section C (Statement of Work). Those sections do not exist in a Canadian RFP. Use a US template against a Canadian solicitation and you will spend ten minutes confused about where to put each requirement.

Canadian federal RFPs are typically organized differently:

Your matrix has to reflect this structure. The Type column should distinguish Mandatory, Rated, Certification, Security, Financial, and Insurance, because each one fails differently. A missed certification page is just as fatal as a missed mandatory criterion, but the failure modes are different enough that they should sit in different buckets during your review. If you are still figuring out which clauses are which, our guide to mandatory vs desirable criteria in Canadian federal RFPs covers the language patterns that signal each.

The 10 columns to use

Skinny matrices miss things. Bloated matrices get abandoned. Ten columns is the sweet spot: enough to capture what matters, few enough that the team will actually fill them in.

ColumnWhat it holds
IDSequential within type (M1, M2, R1, R2, C1, S1, F1, I1). Used everywhere else to refer back.
TypeMandatory, Rated, Certification, Security, Financial, Insurance, Other.
RFP LocationExact reference: Part 4 §4.1.1.1, Annex A §3.2, page number. So you can find the source instantly.
RequirementVerbatim or a tight summary. When wording matters (it usually does for mandatories), use verbatim.
Bidder ResponseComplies / Partial / Does Not Comply / N/A. Any "Partial" or "Does Not Comply" on a mandatory is a bid-killer.
Evidence LocationWhere in your bid the response sits: Volume 1 §2.3, Annex 3, etc.
OwnerOne name. Not "the team." A single owner per row or nothing happens.
StatusNot Started / Drafting / Drafted / Reviewed / Final.
Notes / Risk FlagsHonest assessment. "Borderline match," "needs CISD signature," "PM resume gap."
Reviewer Sign-offInitials and date. The audit trail. Use it.

The two columns that get cut from amateur matrices are Notes and Reviewer Sign-off. Both are the ones that prevent late-stage disasters. Keep them.

The template (copy-paste ready)

Here is the structure with a few sample rows from a real-world Canadian construction bid (masonry restoration on a federal heritage building). The full version with 12 example rows lives in the CSV download above. Copy this into a spreadsheet, or grab the CSV.

ID Type RFP Location Requirement Response Evidence Location Owner Status Notes
M1 Mandatory Part 4 §4.1.1.1 Bidder shall have completed at least 3 projects of similar scope and value within the last 5 years. Complies Vol 1 §2.3 + Annex 3 (PS-1, PS-2, PS-3) J. Smith Drafted PS-3 borderline match. Confirm scope mapping.
R1 Rated Part 4 §4.2.2 Crit 2 Demonstrated PM experience on heritage masonry restoration. Max 10 pts. Complies Vol 1 §3.2 + Annex 5 (PM resume) L. Wong Reviewed Highlight National Trust project for max pts.
C1 Certification Part 5 §5.1 Federal Contractors Program Employment Equity certification (if 100+ employees and contract over $1M). Complies Vol 2 §1 (signed form) M. Patel Final Required: 140 employees.
S1 Security Annex C (SRCL) Personnel performing the work require Reliability status. SRCL completed and signed by CISD. Complies Vol 3 §2 (SRCL Form 350-103) R. Singh Drafted Confirm CISD signature 5 days before close.
F1 Financial Part 6 §6.1 Bid bond at 10% of bid value on CCDC 220 OR irrevocable letter of credit. Complies Vol 4 (CCDC 220 from Trisura) F. Costa Drafted Bond requested. Expected 3 days before close.

Get the full CSV (12 example rows)

The downloadable version covers Mandatory, Rated, Certification, Security, Financial, Insurance, and Other categories. Wipe the example data and you have a blank Canadian-RFP-shaped matrix.

Download CSV →

How to build one for a real RFP

Six steps. Two to four hours total for a typical 50 to 100 page solicitation.

Step 1: Download the template. Use the CSV above or start a blank spreadsheet with the 10 columns from the table. Either works. The spreadsheet tool does not matter; the column discipline does.

Step 2: Extract every requirement. Read the RFP linearly, top to bottom. Add one row per requirement. Hunt for signal words: "shall," "must," "is required," "minimum," "no less than," "at the time of bid closing." Each one is a row. Focus your read on Part 4 (evaluation), Part 5 (certifications), Part 6 (security/bonding/insurance), and Annex A (Statement of Work). You can scan Part 7 (contract clauses) faster since you cannot negotiate them at bid stage. If you have not read a Canadian tender notice before, the CanadaBuys notice walkthrough covers what is on the surface before you open the full RFP package.

Step 3: Tag Type and RFP Location. For each row, set the Type (M, R, C, S, F, I, O) and record the exact RFP reference. The location field is for your future self. When a teammate flags "wait, where did that come from?" three days before close, you do not want to be hunting through 80 pages.

Step 4: Assign owner and evidence location. Each row gets one human owner. Each row gets a planned location in your bid (Volume, section, annex). Empty owner cells turn into missing work. Empty evidence cells turn into unanswered requirements.

Step 5: Mark response status and risk. Once an owner has drafted, set the Bidder Response (Complies / Partial / Does Not Comply / N/A). Be honest. The matrix is internal until the moment you decide to submit. Hiding a "Partial" from yourself does not change the outcome; it just delays the conversation about whether to bid at all. If a mandatory is Partial or Does Not Comply, route it back through the bid/no-bid framework before sinking more hours.

Step 6: Final review against the original RFP. The day before submission, sit with the printed (or split-screen) RFP next to the matrix. Walk each requirement. Confirm every mandatory has Complies and an evidence pointer. Confirm every certification is signed. Initial the Reviewer Sign-off column. That column is not bureaucracy; it is the moment a second pair of eyes catches what the author missed.

Skip the manual matrix entirely.

BidFit auto-extracts mandatory and rated criteria from any CanadaBuys URL in 30 seconds. Same shape as this template, zero hours of reading.

Try BidFit free →

A worked example row

Here is what one row actually looks like in practice. The RFP says, in Part 4 §4.1.1.1:

"The Bidder shall have completed at least three (3) projects of similar scope and value within the last five (5) years."

The row:

That last line is what saves you. Marking "Complies" without flagging the borderline match means the reviewer never knows to scrutinize PS-3. Marking it honestly means the conversation happens before submission, not after the buyer's evaluation panel writes you a non-compliance letter.

Five mistakes that sink bids

1. Skipping certifications. Part 5 is short and easy to skim past. It includes signed forms (Federal Contractors Program Employment Equity, Integrity Provisions, and others depending on the buyer) that count as mandatory. A missing signature on a single certification form makes an entire bid non-compliant.

2. Treating the SRCL as paperwork instead of a requirement. If Part 6 says personnel need Reliability status and the bid arrives without a completed Security Requirements Check List, the bid fails. See our Reliability clearance guide for the underlying mechanics.

3. Vague evidence locations. "See proposal" is not an evidence location. "Volume 1, Section 2.3, page 14" is. Buyers should not have to hunt for your responses. They will not.

4. Hiding partial compliance. The matrix is for your team. If a mandatory is genuinely a Partial, calling it Complies in the matrix does not improve the bid. It just hides the problem until the evaluator finds it. Have the no-bid conversation early.

5. Building the matrix and then ignoring it. A matrix that nobody opens after Day 2 is decorative. Make it the source of truth for status meetings. The "Status" column is the agenda.

The contractors who win Canadian public-sector work consistently are not the most talented writers. They are the ones who never miss a mandatory. The matrix is the cheapest way to be one of them. For the broader pre-bid decision (whether to even commit hours), pair this with the 5-question bid/no-bid framework. For construction-specific compliance (bonding, COR, insurance), see the construction pillar guide. And if you are still figuring out where federal tenders even live, the what is CanadaBuys primer is the start of the chain.

Frequently asked questions

What is a compliance matrix on a Canadian RFP?

A compliance matrix is a spreadsheet that lists every requirement in a Request for Proposal and maps each one to your response. Each row holds one requirement, where it appears in the RFP, your compliance status (Complies, Partial, Does Not Comply, N/A), and where the evidence sits in your bid. On Canadian RFPs it covers the mandatory and rated criteria in Part 4, the certifications in Part 5, the security and bonding requirements in Part 6, and the Statement of Work in Annex A.

What columns should a compliance matrix have?

The minimum set is ten columns: ID, Type (mandatory, rated, certification, security, financial, insurance, other), RFP Location, Requirement (verbatim or short summary), Bidder Response (Complies / Partial / Does Not Comply / N/A), Evidence Location in your bid, Owner, Status, Notes and risk flags, and Reviewer Sign-off. The downloadable CSV above uses exactly this structure.

Does a Canadian RFP usually require a compliance matrix to be submitted with the bid?

It depends on the solicitation. Some Canadian RFPs explicitly require a compliance matrix or cross-reference table as part of the submission, usually in Part 3 (Bid Preparation Instructions). Others do not, in which case the matrix is your internal tool only. Either way, build one. Bids without a matrix miss mandatory requirements far more often than bids with one, regardless of whether the buyer asked for it.

How is a Canadian compliance matrix different from a US federal one?

Structurally, the columns are similar but the RFP reference scheme is different. US federal RFPs are organized by FAR sections (L for instructions, M for evaluation, C for SOW). Canadian RFPs are organized by Parts (Part 4 is evaluation, Part 5 is certifications, Part 6 is security and bonding) plus Annexes. The Type column should reflect Canadian categories (Mandatory, Rated, Certification, Security, Financial, Insurance) instead of US ones.

What is the difference between mandatory and rated criteria in a compliance matrix?

Mandatory criteria are pass/fail. Miss one and your bid is non-compliant and is not evaluated further. Rated criteria are scored on a points scale and contribute to your total score. In the matrix, tag each row as M or R so a final review can focus on the M rows first. See our separate guide to mandatory vs desirable criteria for the language patterns that signal each.

How long does it take to build a compliance matrix for a typical Canadian RFP?

Plan two to four hours for a typical 50 to 100 page Canadian RFP, more for complex pillar solicitations. Most of the time is in reading the RFP carefully and writing the requirement rows. Once the matrix exists, updates take minutes. Skipping the matrix to save those hours is the most expensive shortcut in proposal management.

Can I build a compliance matrix in Excel or Google Sheets?

Yes. The downloadable template is a CSV file that opens cleanly in Excel, Google Sheets, Numbers, or any spreadsheet tool. The format is intentionally plain so you can import it once and live with it for the bid cycle. Add conditional formatting on the Status and Bidder Response columns to make problem rows obvious at a glance.

Or skip the matrix entirely.

Paste any Canadian tender URL. BidFit auto-extracts mandatory criteria, scope, and deadlines in 30 seconds. Same shape as the template, zero hours of reading.

First brief is free. No signup required. ~30 seconds.