The system must respond quickly: pricing the adjectives in your spec | VendorBenchmark Blog
V VendorBenchmark
Benchmarking Use cases Features Security Integrations Pricing About Blog Log in Start free trial
← All posts
CONTRACT INTELLIGENCE · FROM THE ANALYST DESK

The system must respond quickly, and the four months you lose finding out what that meant

Unquantified requirement language is the cheapest thing to fix before signature and the most expensive thing to argue about afterwards. The fix is a reading discipline, not a lawyer.

By , Cofounder
August 3, 2026 · 8 minute read · LinkedIn
SPEC RISK SOW REVIEW

Go and find the requirements annex of the last statement of work you signed. Somewhere in it there is a line that reads something like the system must respond quickly under normal operating load. It was written by an architect in week two of the process, it survived a technical review, a legal review, a security questionnaire and a procurement sign off, and nobody argued about it once. That is because nobody disagreed. Your platform team read it as a 200 millisecond ninety fifth percentile response. The implementation partner read it as sub second, which in their delivery model means anything under 800 milliseconds at the median. Both readings are defensible. Only one of them is in the price.

The gap surfaces in integration testing, roughly four months in, when someone finally puts a load generator against the environment. Your team calls it a defect. The vendor calls it an enhancement, because the contract says quickly and the build is quick. The conversation that follows is not a technical conversation. It is a commercial one, held at the worst possible moment: after the money is committed, after the deadline is public, and after your leverage has evaporated. There is a change order, a caching tier nobody budgeted, and six weeks of schedule that never comes back.

This is not a vendor problem. Every serious supplier writes requirement language that is defensible on their side of the reading, because that is what a commercial team is paid to do. It is a specification problem, and it is one of the few sourcing failures that is entirely inside your control at the moment it is created.

PART ONE

Why the adjective survives every review

Ambiguity in a requirement is not an accident of drafting. It is a lubricant. It lets a deal keep moving when two parties are not yet ready to agree on a number, and both sides feel the relief of that. The architect does not want to commit to 200 milliseconds before seeing the production data model. The vendor's solution lead does not want to commit to it at all until their delivery team has sized the work. So the word quickly goes in, everyone nods, and the document advances to the next open item. The cost of that nod is deferred, not avoided.

The second reason it survives is that the people who would catch it are not reading for it. Legal reads for liability, indemnity, termination and IP. Security reads the questionnaire. Procurement reads price, term and renewal mechanics. The technical owner reads for scope, not for measurability, because they already know what they meant. Nobody in the chain owns the question: is this sentence testable? An untestable requirement passes four reviews because it is not in scope for any of them.

The third reason is structural. Requirement language migrates. A phrase written into an RFP question is copied into a vendor response, lifted into a solution summary, pasted into the SOW annex, and then referenced by the acceptance criteria. By the time it reaches the annex it carries the authority of four documents and the precision of none. Nobody rewrites it, because rewriting inherited text feels like reopening a settled point.

PART TWO

What an unquantified line actually costs

The honest way to think about a vague adjective is as an unpriced option that you have written and the vendor holds. They get to choose the interpretation later, when the choice is worth money. You get to argue, from a position where the alternative to agreeing is a stalled programme.

The arithmetic is easy to sketch and uncomfortable to look at. Take an illustrative mid sized implementation with a 1.8 million contract value. One performance requirement resolved in the vendor's favour, requiring additional infrastructure and rework, lands as a change order in the region of four to seven percent of contract value. Add six weeks of internal delay at, for example, eight loaded people, and the internal cost is comparable to the change order itself. That is one sentence. Most requirement annexes we decode contain somewhere between eight and thirty lines built on unquantified adjectives: fast, scalable, reliable, timely, industry standard, reasonable, appropriate, best efforts, as needed, where practicable.

"A vague adjective is an option you wrote and the vendor holds, exercisable at the moment your leverage is lowest."

Worse, these lines are invisible to the usual controls. A spend report will not show them. A savings plan will not price them. Even a thorough commercial review focused on rate cards and renewal mechanics steps straight past them, because they are not commercial terms in form, only in effect. If you already run the estate the way we describe in from spend list to savings plan, this is the category of exposure that sits underneath the ranked moves and never appears on the list.

PART THREE

The reading discipline that closes the gap

The test for a requirement is not whether it sounds demanding. It is whether a neutral third party, handed the contract and a test environment, could determine pass or fail without asking either party what they meant. That test has three parts: a metric, a threshold, and a measurement condition. Quickly fails all three. Ninety fifth percentile API response under 300 milliseconds, measured at the load balancer, at 1,200 concurrent sessions, with the reference data volume defined in annex C, passes all three. Note that the second version is not more aggressive than the first. It is simply resolvable.

This is the same reading habit we describe in decode any contract in a minute, applied one layer deeper than the commercial clauses. And it belongs before signature for a simple reason: a threshold you propose during negotiation costs a conversation, while the same threshold proposed after signature costs a change order.

PART FOUR

The platform motion: flag the language before it reaches the SOW

Contract and quote decoding runs the draft the way an experienced reviewer would, except it does not get tired at page forty. You load the draft SOW, the requirements annex, the vendor's response document and the quote. Six specialist agents read them together and return one list: every requirement sentence that lacks a metric, a threshold or a measurement condition, ranked by the exposure it creates if the vendor's reading prevails.

app.vendorbenchmark.com/contracts/decode/sow-draft-v4
Contract decode view listing flagged ambiguous requirement lines with suggested quantified replacements
Every unquantified requirement in the draft annex, flagged with a suggested measurable substitution.
THE SAME JOB, TWICE
TODAY, BY HAND
Read the draft SOW and requirements annex line by line, highlighting every adjective that has no number attached to it
Build a spreadsheet mapping each flagged line to the person who originally wrote it, then chase them for what they actually meant
Dig back through the RFP thread and the vendor clarification emails to see whether the two sides ever recorded the same interpretation
Draft replacement language for each line and route it through legal, the technical owner and the vendor for agreement
Roughly 14 hours, spread across two weeks, most of it waiting on replies
WITH VERA
Upload the draft SOW, the requirements annex, the vendor response and the quote into one contract record
Read the ranked list of unquantified requirement lines, highest exposure first, with the ambiguity in each one named
Accept or edit the suggested measurable substitution for each line, checked against the clause library position for that requirement type
Export the redline pack and the open question list to legal, the technical owner and the vendor in one send
About 35 minutes of your attention
What changes: 14 hours becomes 35 minutes on a single draft. At, for example, 95 per hour of loaded procurement and legal time, that is roughly 1,330 of effort reduced to about 55. Run 30 SOWs and renewals a year and roughly 420 hours becomes roughly 18, which is about 40,000 of recovered internal capacity before you count a single avoided change order. The change orders are the larger number, and they are the ones you never see on a report because they no longer happen.

Two things make the flagged list usable rather than merely correct. The first is the substitution. A flag that only says this is vague creates work. A flag that says this is vague, here is the metric normally used for this requirement type, and here is the threshold range observed in comparable deals, closes the item. That comparison draws on 520 vendor benchmarks and 500,000+ real closed transactions, so the number you propose is a market number rather than an internal guess, which matters a great deal when the vendor pushes back. If you are unsure how to read the position you are handed, how to read a percentile covers what a market range does and does not tell you.

The second is scope. One draft is a task. The estate is the problem. Review tables let you ask the same question across every contract you hold at once: show me every performance, availability, support response and data retention requirement that has no measurable threshold attached. That turns a drafting habit into an inventory, and an inventory is something you can work down.

app.vendorbenchmark.com/contracts/review-tables/unquantified-requirements
Review table listing contracts across the estate with counts of unquantified requirement lines by category
One question asked across the whole estate: which requirements are written in adjectives.

From there the motion is ordinary procurement work. Unquantified lines in live contracts go onto the renewal agenda, because a renewal is the one moment when reopening inherited text is cheap. Unquantified lines in drafts go into the redline. Patterns that repeat across three or more vendors become a standing position in the clause library, so the next architect inherits a template that already contains the metric, the threshold and the measurement condition. That is the same logic behind the must have coverage grid, extended from protections into precision.

1
Every requirement gets three parts or it gets a flag. A metric, a threshold and a measurement condition. Anything with fewer than three is treated as an open item, not as agreed text, regardless of how many reviews it has already passed.
2
The vague lines are ranked by exposure, not by page order. A missing availability threshold on a revenue critical service is worked before a missing timeliness definition in a reporting appendix. You will not close all of them, so close the expensive ones.
3
Proposed thresholds carry a market reference. The number you put in the redline is drawn from comparable closed deals rather than invented in a meeting, which changes the negotiation from preference against preference into position against evidence.
4
Measurement conditions are written down, not assumed. Where the measurement is taken, at what concurrency, against what data volume, over what window, and who runs the test. Most disputes are about the condition, not the threshold.
5
Requirement language is checked against the quote, not only the SOW. If the annex asks for a threshold that the quoted architecture cannot deliver, that mismatch is visible before signature. This is also where quiet changes since last year tend to hide, in a re scoped assumption rather than a changed price.
6
Repeat patterns become permanent positions. Anything you have had to fix twice belongs in the clause library, so the third contract starts from the fixed version and the discipline stops depending on who happens to be reviewing.
PART FIVE

What this does not solve

Decoding tells you that a line is unmeasurable and what metric would make it measurable. It does not tell you what your threshold should be. Only your workload model, your user expectations and your tolerance for cost can decide whether 200 milliseconds is a requirement or a luxury, and a market range is an input to that judgement rather than a substitute for it. If you set the threshold too tight you will pay for headroom you never use, and no amount of flagging protects you from that.

It does not make the vendor agree. A supplier can decline a threshold, price it as an option, or accept it with carve outs that hollow it out. Precision improves the quality of the argument and moves it to a moment when you still have leverage. It does not remove the argument. Some of the time the honest outcome is a documented open item with a resolution date and a named owner, which is still materially better than an adjective.

It does not retroactively fix a signed contract. For live agreements, the output is an inventory and a renewal agenda, not a remedy. And it does not replace acceptance testing. A measurable requirement is only worth what your test regime proves, so someone still has to run the load, read the result and hold the line when the number comes in high. The platform gets the number into the document. Your team still has to check it.

None of this is glamorous work. It is one reading pass, applied at the one moment when changing a sentence is free. The reason it is worth the discipline is that the alternative is not a cleaner document. The alternative is a conversation in month four about what quickly meant, held with no leverage and a public deadline, and everyone in that room already knows how it ends.

About the author
, Cofounder, VendorBenchmark

Morten brings two decades of enterprise and software procurement, with stints across Oracle, IBM, SAP, and Salesforce shaping how he reads a deal. He has led sourcing through hundreds of renewals, from mid market order forms to nine figure global agreements, and learned that the buyers who win are the ones who walk in knowing the market. He built VendorBenchmark to make that pattern recognition repeatable.

FREE TRIAL · FULL PLATFORM · NO CARD REQUIRED

Put the numbers into your requirements before the vendor puts their own in

Decode a draft SOW against 520 vendor benchmarks, built on 500,000+ real closed deals, and see every unquantified requirement before it reaches signature.

Request your free trial → Or decode a contract free, no account
Setup takes minutes. Your data stays isolated at the database, and you can export or delete it any time.
V VendorBenchmark
A VendorBenchmark product · © 2026