Safeguard
Supply Chain•

Should you convert SBOMs to one format when they arrive?

Converting every SBOM to one format simplifies processing but can drop fields. Compare convert on intake, keep native, and the hybrid most teams settle on.

Safeguard Security Team
3 min read

Do not convert and discard the original. Keep the supplier's native file, parse each format into one internal data model, and run conversion only for export. Conversion between formats can drop or reshape fields, so the original has to stay as the source of truth.

The three approaches

ApproachHow it worksStrengthWeakness
Convert on intakeTurn every file into one format, store only thatOne code pathLossy, original gone
Keep native, two code pathsStore and process each format as isNo lossDouble the logic
Parse to internal model, keep originalRead both formats into your own schema, store the file tooSingle query layer, no loss of evidenceNeeds a careful mapping

The third is where most teams land.

Why formats do not map one to one

The formats model some things differently. SPDX records a document namespace that must be unique per document version, plus external document references with checksums. CycloneDX records a serial number and an integer version that rises on each modification, and it uses reference identifiers that must be unique within a BOM. Fields such as these have no exact twin, so a converter has to choose how to represent them.

What to test in a mapping

  1. Identity: document identifier and revision survive.
  2. Component identity: purl or CPE carried across.
  3. Relationships: dependency edges are preserved, not flattened.
  4. Licenses: expressions are not rewritten.
  5. Hashes: all algorithms kept.
  6. Supplier and author: neither is lost or swapped.
  7. Unknowns: an explicit statement that something is unknown does not become empty.

Run these on a few real files from different suppliers and compare the before and after. Document each loss you find, so your team knows what the internal model cannot see.

Decide by use case

If your main need is vulnerability matching, an internal model with component identifiers, versions and relationships is enough. If you need to republish or answer a customer who asks for a specific format, you want the original or a vetted export.

Do not promise perfect round trips

When you send a converted file to a customer, say it was converted, and by which tool. Do not present a converted file as the supplier's own.

Try it yourself

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

Look at the fields shown for each component, and consider which would be lost in a lossy conversion.

Where Safeguard fits

Safeguard provides SBOM and dependency scanning, and you can try a free scan to see the inventory view built from your files.

Quick check

Is it safe to delete the original after conversion?

No. The original is the evidence and may hold fields the converted file lacks.

Do both formats record the document revision?

Yes, but differently: a version integer with a serial number in CycloneDX, a unique namespace per version in SPDX.

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.