PlatformPlatform architectureProduct tourProduct graphRisk intelligenceContinuous governanceEvidence & auditDeploymentIntegrationsExecutive view
BOM SuiteSBOMCBOMQBOMAIBOMHBOMBOM Governance
SolutionsSecurityComplianceSupply chain riskQuantum readinessAI governanceDigital trust
ComplianceCERT-InRBISEBI / CSCRFMeitYNISTEU CRAEU AI ActCERT-In SBOM guide
IndustriesBanking & Financial ServicesGovernment & Public SectorDefence & Critical InfrastructureHealthcareIndian enterprises
ResourcesResource centreSBOM resourcesCBOM resourcesQBOM resourcesAIBOM resourcesHBOM resourcesProgramme & regulationBlog
CompanyAboutSecurity & trustContact
Request a DemoTalk to an expert
Guide3 min readReviewed September 202610 sources

SBOM generation: build-time, source, container and runtime approaches

Where and when you generate an SBOM determines what it can tell you. This guide compares source, build, analysed, container and runtime generation and shows how to combine them.

Key takeaways
  • CISA's six SBOM types map directly to generation approaches, each with known blind spots.
  • Build-time generation in CI/CD gives the most reliable record of what was shipped.
  • Container and binary analysis is the only option when you lack source, but depends on heuristics.
  • Runtime SBOMs show what actually loads; compare them with build SBOMs to find drift.
  • Always record the generation context, tool and version alongside the SBOM.

Generation stage defines accuracy

CISA's guidance on SBOM types describes six stages at which an SBOM can be produced: design, source, build, analysed, deployed and runtime [1]. CERT-In adopts the same classifications [2]. Each stage sees a different slice of the truth, which is why the 2026 CISA Minimum Elements require an SBOM to state its generation context, as well as the name and version of the tool that produced it [3].

Comparing approaches

ApproachStrengthsBlind spots [1]
Source (manifests and lockfiles)No build access needed; shows dependency hierarchy; fixes at sourceMay include components never shipped; misses runtime and dynamic components
Build (in CI/CD)Higher confidence; SBOM and artefact can be signed togetherRequires build changes; may miss runtime dependencies and dynamically linked versions
Analysed (images, binaries)Works without the development environment; can verify other SBOMs and find hidden dependenciesRelies on heuristics; errors if decomposition fails
DeployedShows what is installed and configuredMay need deployment changes; may differ from runtime
RuntimeShows what executes, including dynamic loadsAdds overhead; full coverage may need long observation

Source and build-time generation

For software you build, generate an SBOM in the pipeline for every release. The NTIA minimum elements state that a new build or release requires a new SBOM [4], and CERT-In recommends that SBOMs be generated for each new release and updated for upgrades and patches [2]. Language-aware generators read lockfiles and package-manager metadata. For example, cdxgen supports npm, pip and Poetry, Maven and Gradle, NuGet, Go modules, Cargo and others [5], and Microsoft's SBOM Tool generates SPDX for build outputs [6].

Practical points:

  • Commit lockfiles. Without them, generators resolve versions at scan time and results drift.
  • Generate after dependency resolution but before packaging, then attach the SBOM to the release artefact.
  • Separate production from development and test dependencies, or label their scope.
  • Sign the SBOM with the artefact. NIST's SSDF practice PS.3.2 calls for safeguarding provenance data for each release [7], and SLSA defines levels of build provenance [8].

Container and binary analysis

For container images and third-party binaries, analysis tools inspect the artefact. Syft generates SBOMs from OCI and Docker images, filesystems and archives, covering OS packages and many language ecosystems [9]. Trivy can generate CycloneDX or SPDX from images and other targets [10]. Analysed SBOMs are useful for checking a supplier's SBOM against what was delivered: if the supplier lists fewer components than your analysis finds, ask why.

Deployed and runtime SBOMs

Build SBOMs describe what was shipped, not what is running. Hot fixes, sidecar containers, plugins and dynamically loaded libraries all create drift. cdxgen can produce an operations BOM (OBOM) describing live system or container inventory [5]. CERT-In asks software consumers to update their internal SBOM when patches or mitigations are applied [2], which in practice means comparing deployed state with delivered SBOMs.

A combined pattern

  1. Generate a build SBOM in CI/CD for every release, signed and stored with the artefact.
  2. Generate an analysed SBOM of the final container image and reconcile the two.
  3. For supplier software, ingest the supplier's SBOM and verify it with your own analysis.
  4. Periodically capture deployed or runtime inventories for critical services and diff them against the release SBOM.
  5. Validate every SBOM against your field policy on creation; see how to validate an SBOM.

For tool options, see SBOM tools. Cryptographic assets need a different discovery approach, covered in What is a CBOM?

How IntelliXBOM helps

IntelliXBOM generates SBOMs and ingests CycloneDX and SPDX from build, container and supplier sources, keeping each version with its history. Diffs between versions show where deployed inventories differ from what was delivered, and every SBOM is validated against required-field policies on arrival.

Frequently asked questions

When should an SBOM be generated?

Generate a new SBOM for every build or release, as the NTIA minimum elements require. For critical systems, also capture deployed or runtime inventories and compare them with the release SBOM.

Is a build-time SBOM better than a container scan?

They answer different questions. A build SBOM records what the pipeline assembled with higher confidence, while an analysed SBOM of the image catches OS packages and anything added later; using both lets you reconcile gaps.

What metadata should be recorded when generating an SBOM?

Record the author, timestamp, tool name and version, format and version, and generation context. The 2026 CISA Minimum Elements list these as SBOM metadata alongside the author's signature.

Sources

  1. Types of Software Bill of Material (SBOM) Documents (2023)CISAwww.cisa.gov/sites/default/files/2023-04/sbom-types-document-508c.pdf
  2. Technical Guidelines on SBOM, QBOM & CBOM, AIBOM and HBOM, Version 2.0 (9 July 2025)CERT-In, Government of Indiawww.cert-in.org.in/PDF/TechnicalGuidelines-on-SBOM,QBOM&CBOM,AIBOM_and_HBOM_ver2.0.pdf
  3. CISA Releases the 2026 SBOM Minimum ElementsFOSSAfossa.com/blog/cisa-releases-2026-minimum-sbom-elements/
  4. The Minimum Elements for a Software Bill of Materials (full report, PDF)NTIA, U.S. Department of Commercewww.ntia.gov/files/ntia/publications/sbom_minimum_elements_report.pdf
  5. cdxgen, CycloneDX GeneratorCycloneDX/cdxgen (GitHub)github.com/CycloneDX/cdxgen
  6. SBOM Toolmicrosoft/sbom-tool (GitHub)github.com/microsoft/sbom-tool
  7. SP 800-218, Secure Software Development Framework (SSDF) Version 1.1NISTcsrc.nist.gov/pubs/sp/800/218/final
  8. SLSA, Supply-chain Levels for Software ArtifactsOpenSSFslsa.dev/
  9. Syft, CLI tool and library for generating SBOMsanchore/syft (GitHub)github.com/anchore/syft
  10. Trivy documentation, SBOMTrivytrivy.dev/docs/latest/supply-chain/sbom/

Sources checked in September 2026. Regulations and guidance change; always refer to the issuing body’s current publication. This content is for general information and is not legal advice.

Related SBOM guides

Across the BOM Suite

Put your SBOM under governance.Software transparency with continuous correlation and timestamped evidence.