Free, no account
Tender Compliance Matrix
Paste the text of a tender, a question schedule or an evaluation section. The tool lists the requirements the wording states, each with the line it was read from. Nothing is uploaded, nothing is sent anywhere, and there is no sign-up.
Requirements matched: 0. Each row below carries the line it was read from, word for word. Nothing here states whether a bid or a procurement is compliant.
These rules matched no requirements in that text. That does not mean the document states none: the rules key on wording, and a requirement written without it is invisible to them.
- Lines read
- 0
- Obligations found
- 0
- Numbered questions found
- 0
- Clause references found
- 0
- Table rows found
- 0
- Marked pass or fail
- 0
- Dates and times stated
- 0
- Response limits found
- 0
- Percentage weightings found
- 0
- Those weightings total
- 0%
Percentage weightings appear to sum to a complete set (100%).
The total is the arithmetic sum of every percentage found on a line that also reads as evaluation criteria. A pack that lists sub-criteria alongside top-level criteria sums to more than 100, and the tool makes no judgement about whether a set of weightings is right.
Percentages were found in the text but no evaluation context was detected. If this is an award criteria section, include its section heading.
Wording that appeared more than once is listed once. Duplicate lines dropped: 0.
The first 300 are listed below. Paste a section at a time to read the rest.
The rules are published in full below. They read wording, not meaning, so a requirement written without obligation language, a number or a reference is invisible to them. This tool records what a document says. It does not decide whether anything is compliant, and it is not legal or procurement advice.
Looking for the social value rule itself? Read PPN 002 in full, including the mandatory 10% minimum social-value weighting and the dates it applies from.
Published in full
What the rules look for.
Four rules, all deterministic. There is no model, no network call and nothing guessed. Every row the tool produces can be traced back to the characters that triggered it.
- Obligation wording
- Lines containing "must", "shall", "is or are required to", "is or are expected to", "is or are obliged to", "will be required", "will be expected", "undertakes to", "agrees to", "warrants that", "responsible for", "is or are not permitted", "is or are prohibited from", "on no account", "it is a condition", "assumes liability or responsibility", or "indemnifies". A trigger anywhere in the line counts, so a clause that separates it from its verb with a long aside, as in "the Bidder is, subject to Schedule B, entirely responsible for licensing", is still read. Prohibitions count: "must not" is an obligation, and reading it as anything else would report the opposite of what the document says.
- Numbered questions
- A numbered line that opens with an instruction, such as "Q4 Provide evidence of public liability insurance" or "3.6 Demonstrate how you will meet the requirement". A question schedule states its requirements as instructions rather than with the word "must", so a rule that reads only obligation wording skips the part of the pack you actually have to answer. The leading number is required: an instruction without one is treated as prose, because the numbering is the evidence that it is a question rather than a sentence.
- Numbered references
- Leading question and clause numbers such as 1.1, 4.2.3, Q1 and SQ2, part-lettered and roman numbering such as A.1.1, B.1.1.ii, C.1.2 and IV.2.b(iii), lettered sub-clauses such as 3.4.a and 3.2.1.b.iv, and stacked parentheses such as A.1.3(a), 1.01.01(A) and 1.1.1(a)(iv)(A). A leading section mark or bullet is stepped over, so "§ 2.1.3" and "- 5.1.a" are read as 2.1.3 and 5.1.a. A numbered line on its own is a heading rather than a requirement, so it earns a row only when the line also states an obligation, an instruction, a limit or a weighting. A number that is not a clause is not read as one: a figure written 2025.10 stays a figure, and a line opening "500 words" is not a reference to clause 500.
- Pass or fail wording
- Lines that mark themselves as decisive: "pass/fail", "is mandatory", "a mandatory requirement", "a minimum requirement", "fail or failure to comply, provide, submit, meet or respond", "will be rejected, excluded or disqualified", "will not be accepted", "will not proceed", "will result in disqualification, exclusion or rejection", "deemed non-compliant", "shall be excluded", "grounds for exclusion", "strictly prohibited". The rule reads the marker the document wrote. It does not judge how serious anything is, and it does not mean the rows without it are safe.
- Closing dates and times
- A date or a time on a line that also says it is a closing point: "deadline", "closing date or time", "must be received, submitted, returned or uploaded", "no later than", "due by or on", "returned by", "expires at or on", "cut-off". The cue is required because a pack is full of dates that are not deadlines, such as a contract start or a reporting period. "By" and "before" also count as cues, but only when a number follows them, and only a real date or time found nearby produces a row, so "increased by 20%" states no deadline. Both date orders are read, "14 March 2026" and "September 30, 2026", along with clock times to the second. Nothing is converted into a calendar date: "14/03/2026" and "3 February" are shown exactly as the document wrote them, because guessing a year or a date order would put a figure of our invention next to a real quote.
- Who the line is about
- Where a line OPENS with a named party, that party is reported beside the row: Bidder, Tenderer, Supplier, Contractor, Sub-contractor, Consultant, Provider, Vendor, Buyer, Authority, Client, Customer, Department, Employer, Council, Trust, Agency, Purchaser. This is read from the sentence, not decided: the subject of "The Buyer shall provide building access" is a fact about the wording in the same way the word "shall" is. Rows are never dropped on this basis, because an obligation on the buyer is a dependency you may need to price or query rather than something to ignore. A line that does not open with a party carries no subject, and that means only that it does not open with one. It never means the requirement is yours.
- Flattened tables
- A numbered line that reads as a row of a compliance table rather than a sentence: it carries a reference, it carries a cell that is either an upper case token such as YES, NO, MANDATORY or REQUIRED or two or more pipe characters, and it does not end in sentence punctuation. A response matrix pasted out of a PDF arrives as text with its columns collapsed, and every row of it is something you have to answer. Upper case is the evidence and it is deliberate: prose writes "yes" and a table cell writes "YES". The three tests together are what separate "A.1 YES Method Statement" from "4.2 NO changes will be permitted after the deadline."
- Response limits
- Word, page, character and side counts, written any of the three ways a tender pack writes them: "no more than 500 words", "500 word limit", "1,000 characters or fewer".
- Percentage weightings
- Percentages within three lines of a mention of weighting, evaluation, scoring, criteria, marks or award, where the line itself either reads as a criteria row ("Quality 60%") or mentions evaluation in its own right ("quality will be weighted at 60%"). Both tests are needed: nearness alone reads a VAT rate or a retention percentage sitting under an award criteria heading as though it were a criterion. A criteria row is a short label and a number, so "Quality 60%" and "Quality 60%, Price 30%, Social Value 10%" are read and "Payment terms allow a 2% early settlement discount and VAT is charged at 20%" is not. A percentage in brackets, as in "Technical Merit (60%)", is allowed a longer label, because a bracketed figure is an aside attached to the phrase before it, which is what a weighting is. The tool adds up what it found and shows the total. A pack listing sub-criteria as well as top-level criteria sums to well over 100, which is normal and is not a fault in the document.
- Quoted wording
- A trigger word that appears only inside double quotation marks is read as the document naming a phrase rather than using it, and does not make the line a requirement. A definitions section reading: the phrase "must comply" indicates a mandatory requirement, is describing wording rather than stating an obligation. If the same or another trigger also appears outside the quotation marks, the line is a requirement as normal, so a clause reading: the Bidder must state "Compliant" or "Non-Compliant", keeps its obligation. Only trigger words are treated this way. Figures are not: a limit written inside quotation marks is still a limit the document states. A line that both quotes a phrase and defines one, as in: the phrase "is strictly prohibited" denotes a zero-tolerance policy, is read as a glossary entry and produces no row at all. Both halves are required, so a clause that merely contains quotation marks keeps its requirement.
- Wrapped lines
- Text copied from a PDF breaks wherever the column ended, not where the sentence did. A line that does not end in punctuation and is followed by a line starting in lower case is read as one statement, because English does not begin a sentence with a lower case letter. Without this a limit written "no more than 2,000" on one line and "words" on the next is not found at all.
Stated plainly
What this tool does not do.
Written down because a free tool that overstates itself costs more credibility than it earns attention.
- It does not assert compliance. Whether a bid or a procurement is compliant is a judgement for the bidder and the contracting authority. This lists what the wording states and stops.
- It will miss requirements. A rule that keys on the word "must" cannot see a requirement written as "the successful supplier provides monthly reporting". Silence from these rules is not evidence that a document requires nothing.
- It does not paraphrase. Every row carries the segment it was read from, word for word. A full extractor restates a requirement in a normalised form and reads better for it; a rule engine doing the same would be inventing, because it has nothing to restate from.
- It does not read files. Paste text. There is no upload in this version, so no document leaves your machine.
- It does not score, rank or rate anything, and it makes no claim about win rates.
- It sends nothing anywhere. The text is read in your browser. There is no account, no email gate and no request to any server.
Go further
Need the whole bid read, not one section?
CrowMark reads a full tender pack, drafts answers from your own submitted bids with the source beside each one, and tracks what you promised after the contract is awarded.