---
stage: Application Security Testing
group: Composition Analysis
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
title: Dependency Scanning compared to Container Scanning
---
GitLab offers both [Dependency Scanning](dependency_scanning/_index.md) and
[Container Scanning](container_scanning/_index.md) to ensure coverage for all of these
dependency types. To cover as much of your risk area as possible, we encourage you to use all of our
security scanning tools:
- Dependency Scanning analyzes your project and tells you which software dependencies,
including upstream dependencies, have been included in your project, and what known
risks the dependencies contain.
- Container Scanning analyzes your containers and tells you about known risks in the operating
system's (OS) packages.
The following table summarizes which types of dependencies each scanning tool can detect:
| Feature | Dependency Scanning | Container Scanning |
|----------------------------------------------------------------------------------------------|---------------------|---------------------------------|
| Identify the manifest, lock file, or static file that introduced the dependency | {{< icon name="check-circle" >}} | {{< icon name="dotted-circle" >}} |
| Development dependencies | {{< icon name="check-circle" >}} | {{< icon name="dotted-circle" >}} |
| Dependencies in a lock file committed to your repository | {{< icon name="check-circle" >}} | {{< icon name="check-circle" >}} 1 |
| Binaries built by Go | {{< icon name="dotted-circle" >}} | {{< icon name="check-circle" >}} 2 |
| Dynamically-linked language-specific dependencies installed by the Operating System | {{< icon name="dotted-circle" >}} | {{< icon name="check-circle" >}} |
| Operating system dependencies | {{< icon name="dotted-circle" >}} | {{< icon name="check-circle" >}} |
| Language-specific dependencies installed on the operating system (not built by your project) | {{< icon name="dotted-circle" >}} | {{< icon name="check-circle" >}} |
1. Lock file must be present in the image to be detected.
1. [Report language-specific findings](container_scanning/_index.md#report-language-specific-findings) must be enabled, and binaries must be present in the image to be detected.