Contrast SCA is a software composition analysis tool that uses runtime instrumentation to prioritize vulnerabilities based on actual library usage. Instead of reporting every CVE in every dependency, it shows which vulnerable components are actually loaded and executed in production. In a landscape where the Synopsys 2024 OSSRA report found 96% of commercial codebases contain open-source components, knowing which of those components actually run is a meaningful signal cut.

The tool shares the same agent as Contrast Assess (IAST) and Contrast Protect (RASP). The agent monitors which libraries and classes execute at runtime, providing ground-truth usage data that static analysis cannot match.
What is Contrast SCA?
Contrast’s research shows 62% of libraries in applications are never used at runtime. Within the active libraries, only 31% of classes are actually invoked. Traditional SCA tools report every vulnerability across all dependencies. Contrast SCA narrows that down to the subset that is actually loaded and executed.
Key features
| Feature | Details |
|---|---|
| Runtime tracking | Class and method-level execution monitoring across 7 language agents |
| Library filtering | 62% of libraries never used at runtime; 31% of classes actually invoked |
| Reachability analysis | Combined static call graph + runtime execution data |
| Language agents | Java, .NET, Node.js, Python, Go, PHP, Ruby |
| SBOM generation | CycloneDX and SPDX formats enriched with runtime usage data |
| License compliance | Policy enforcement, conflict detection, attribution generation |
| Shared instrumentation | Same agent covers SCA, IAST (Assess), and RASP (Protect) |
| Reporting | Priority-based reports organized by runtime execution context |
Supported languages and agents
| Language | Agent | Runtime tracking |
|---|---|---|
| Java | Contrast Java Agent | Class and method-level |
| .NET | Contrast .NET Agent | Class and method-level |
| JavaScript/Node.js | Contrast Node Agent | Module-level |
| Python | Contrast Python Agent | Module-level |
| Go | Contrast Go Agent | Function-level |
| PHP | Contrast PHP Agent | Module-level |
| Ruby | Contrast Ruby Agent | Module-level |
Runtime prioritization
Contrast tracks library usage down to the class and method level: which classes are loaded, which methods are called, how often code paths execute, and the call stack context. This turns the “247 dependencies with 89 vulnerabilities” problem into “focus on these 3 first.”

Vulnerability reachability
The tool combines static call graph analysis with runtime execution data and data flow to vulnerable methods. A CVE in a library that is loaded but never called gets deprioritized. A CVE in a method your application calls every request gets flagged immediately.
License compliance
Tracks open-source license obligations with license identification, compliance policy enforcement, license conflict detection, and attribution generation.
SBOM generation
Generates SBOMs in CycloneDX and SPDX formats. The runtime data enriches the SBOM with actual usage information beyond what static analysis provides.
Integrations
Getting started
When to use Contrast SCA
Contrast SCA fits teams that want runtime-aware vulnerability prioritization, especially those already using Contrast Assess or Protect. The shared agent means adding SCA requires no additional deployment.
The runtime data genuinely cuts through alert noise. If 62% of your libraries never execute, that is 62% fewer alerts to triage. The tradeoff: you need to instrument your application with the Contrast agent, which means SCA only works on running applications.
Teams that need to scan without running the application (build-time-only scanning) should consider static SCA tools like Snyk or Grype.
How it compares:
| vs. | Key difference |
|---|---|
| Snyk Open Source | Snyk uses static reachability analysis. Contrast SCA uses actual runtime data for more accurate prioritization but requires agent deployment. |
| Endor Labs | Endor Labs uses static call graph analysis for reachability. Contrast SCA adds runtime observation for ground-truth usage data. |
Further reading: What is SCA? | SCA in CI/CD Pipelines
