Safeguard
Supply Chain•

What should a vendor promise about SBOMs in a customer contract?

Six SBOM terms to settle in a customer contract: frequency, depth, known unknowns, delivery, access and mistakes. A drafting checklist from NTIA guidance.

Safeguard Security Team
4 min read

Promise only what you can deliver every time. The NTIA minimum elements report lists six practices to address in any SBOM arrangement: frequency, depth, known unknowns, distribution and delivery, access control and accommodation of mistakes. Settle each in writing before you agree to supply SBOMs.

The six practice areas

The NTIA report says a number of elements should be explicitly addressed in any policy, contract or arrangement to ask for or provide SBOMs. Here they are, with what each means for a vendor.

PracticeWhat NTIA saysWhat to commit to
FrequencyNew build or release needs a new SBOM; corrections warrant a revised oneA new SBOM with each release, plus corrections
DepthAll top level components, with transitive dependencies listed; at a minimum, top level with enough detail to find the restA stated depth, such as all transitive dependencies in the build
Known unknownsSay explicitly where the dependency graph is not fully enumeratedA statement of what is not covered
Distribution and deliveryAvailable in a timely way, with proper access rolesA channel and a timeframe
Access controlPublic or restricted; if restricted, terms must be specifiedWho may receive and use it
Accommodation of mistakesConsumers tolerate good faith errors; suppliers offer updatesA correction process

Drafting tips

  1. Frequency: tie it to releases, not to calendar dates, unless you can automate calendar delivery. A promise to send monthly files for software that changes weekly invites gaps.
  2. Depth: do not promise complete graphs you cannot produce. The report notes depth beyond top level components may not be easily available, and that some use cases need complete graphs. Describe your actual depth.
  3. Known unknowns: add a standing sentence that components your tooling cannot resolve are marked as such.
  4. Delivery: name the channel, the response time and the format. Avoid promising every format under the sun.
  5. Access: allow ingestion into the customer's security tools, which the report specifically calls out.
  6. Mistakes: say that you will issue corrections and that the customer will treat good faith errors as corrections, not breaches. The report says this tolerance does not cover intentional obfuscation.

What not to put in

Avoid warranties that the SBOM is complete or free of errors. Avoid promising vulnerability status unless you also commit to VEX or advisories. Avoid tying SBOM delivery to payment milestones.

Coordinate with legal and engineering

Legal drafts the clause, engineering confirms what is possible, and security reviews the sharing terms. A one page internal standard that all three agreed on shortens every negotiation.

Related: the SBOM on request contract clause.

Try it yourself

Open the demo and look at the depth of its dependency view. Ask whether you could honestly promise that level for your own product.

Click through it at your own pace, or open it full screen.

Quick check

Do we have to commit to full transitive depth?

The NTIA report says, at a minimum, top level dependencies must be listed with enough detail to find the transitive ones. Commit to what you can do.

Should the contract name an SBOM format?

You can, but prefer allowing a short list. NTIA names SPDX, CycloneDX and SWID tags as the formats of its time.

Safeguard's SBOM and dependency scanning can help you meet a depth and frequency you have promised, and the free scan shows your current depth.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.