To get a trial key
fill out the form below
Team License (a basic version)
Enterprise License (an extended version)
* By clicking this button you agree to our Privacy Policy statement

Request our prices
New License
License Renewal
--Select currency--
USD
EUR
GBP
RUB
* By clicking this button you agree to our Privacy Policy statement

Free PVS-Studio license for Microsoft MVP specialists
* By clicking this button you agree to our Privacy Policy statement

To get the licence for your open-source project, please fill out this form
* By clicking this button you agree to our Privacy Policy statement

I am interested to try it on the platforms:
* By clicking this button you agree to our Privacy Policy statement

Message submitted.

Your message has been sent. We will email you at


If you haven't received our response, please do the following:
check your Spam/Junk folder and click the "Not Spam" button for our message.
This way, you won't miss messages from our team in the future.

>
PVS-Studio analyser
logo
PVS‑Studio is a static analyzer on guard of code quality, security (SAST), and code safety
1. Download
2. Request prices
3. Request prices
1. Download
Download the PVS-Studio analyzer distribution
--Choose platform--
Linux
macOS
Windows
--Choose language--
C, C++
C#
Java
--Distribution format--
rpm
deb
tgz
rpm
deb
tar.gz
pkg
tgz
tar.gz
exe
exe
exe
Quick launch
Download
2. Request prices
Request our trial key to test the analyzer's abilities
--Select a license type--
Team License
Enterprise License
* By clicking this button you agree to our Privacy Policy statement

3. Request prices
Request our prices
--Select currency--
USD
EUR
GBP
RUB
* By clicking this button you agree to our Privacy Policy statement

** This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
When it is time to use the PVS‑Studio analyzer
For a developer
You make occasional mistakes during development
Debugging when searching for errors is time consuming
Errors get into the version control system
Once an error is found by QA specialists, it’s difficult to debug that code
For a manager
Frequent returns to old tasks due to bugs
Users report errors in your products
You hire more developers but notice a code quality decline
With the increasing amount of code, it is difficult to assess its quality and reliability
For a security professional
Difficulties with external code audit
Potential customers require the use of such tools
Clients require to use security and safety standards in development
How PVS‑Studio finds potential vulnerabilities

PVS‑Studio detects various errors – typos, dead code, and potential vulnerabilities (Static Application Security Testing, SAST).

The analyzer matches warnings to the Common Weakness Enumeration, SEI CERT Coding Standards, and supports the MISRA standard.

Click the links below to see PVS‑Studio warning classifications for various standards:

You can integrate PVS‑Studio into
Code quality
Build systems
Embedded
Keil µVision, DS-MDK
IAR Embedded Workbench
QNX Momentics
TI ARM Code Generation
Virtualization
WSL
Supported languages and compilers

Windows

Visual Studio, C, C++, C++/CLI, C++/CX (WinRT)

MinGW C, C++

Windows/Linux/macOS

GNU Arm Embedded Toolchain, Arm Embedded
GCC compiler, C, C++

Qt Creator, Eclipse, GCC, Clang, C, C++

IntelliJ IDEA, Android Studio, Java

Visual Studio, JetBrains Rider, C#, .NET Framework, .NET Core

Windows/Linux

IAR Embedded Workbench, C/C++ Compiler for ARM C, C++

QNX Momentics, QCC C, C++

Keil µVision, DS-MDK, ARM Compiler 5/6 C, C++

Texas Instruments Code Composer Studio, ARM Code
Generation Tools C, C++

MPLAB XC8 C

Problem types that PVS‑Studio detects
Quality
Typos
Null pointer/reference dereference
Array index out of bounds
Incorrect shift operations
and others.
Security
Safety
PVS‑Studio license types
Team License
Command line
Visual Studio
IntelliJ IDEA
Rider
CLion
Jenkins
TeamCity
SonarQube
Commit checks
Incredibuild
Unreal Engine
Notifications
Request a trial key Trial key
Request prices
Enterprise License
Command line
Visual Studio
IntelliJ IDEA
Rider
CLion
Jenkins
TeamCity
SonarQube
Commit checks
Incredibuild
Unreal Engine
Notifications
Request a trial key Trial key
Request prices
The number of diagnostics
in PVS‑Studio increases each year
Number of diagnostics
Number of diagnostics
Release dates (indicated by dots on the graph)
Customers choose PVS‑Studio for...
Expert technical support

Over the years, we have built a team of proven code analysis experts. Clients get support directly from our analyzer developers.

Offline use availability

You can use our analyzer offline. This includes the installation, activation, launch, source code analysis, and all other use case scenarios. This is a perfect solution for companies that employ isolated development environments and develop software for finance or government sectors.

Ease of use

To take a quick peek at the analyzer, use the compilation monitoring system. It is designed for Windows and Linux and does not require you to integrate PVS‑Studio into a project.

Diagnostic abilities

We have developed more than 900 diagnostic rules and add new ones every month.

Cross-platform integration

Many apps are created for several platforms to meet the current market's demand. Our cross-platform analyzer provides such clients with full code coverage.

Easy-to-use analyzer reports

The analyzer reports are available in Html, Xml, Csv, Txt, Json, CompileError, TaskList, TeamCity formats. The report generator itself is posted on GitHub for custom modifications.

Convenient CLI

You can choose one of the three easy approaches: run the analyzer from the command line, integrate it into a build script or CI.

Plugins

To enhance interaction with the analyzer, we provide plugins for Visual Studio, IntelliJ IDEA, Rider, SonarQube, Jenkins, and other similar products.

Mode for checking Legacy code

Some clients are uncertain about introducing an analyzer into their development process because of the large code base. PVS‑Studio accommodates these clients by introducing Legacy code checking mode. You can install PVS‑Studio, hide warnings for old (Legacy) code until later, and use the analyzer to check new code.

Dealing with false alarms

Static analysis implies you’ll get false warnings. In addition to contacting our support, users have many ways to deal with false positives. This makes the work with the analyzer very convenient.

How to work with PVS‑Studio
Have you just run the analyzer and now you have no idea what to do with all this abundance of warnings?
Nothing to worry about - we made a special mechanism that can help you deal with them. In this video, you'll learn about the inner workings of mass warnings suppression mechanism in PVS‑-Studio for C++.
How does PVS‑Studio do all this?
Preprocessing of C and C++ source files (based on compilation parameters) allows to expand preprocessor directives, i.e. to include header files and to substitute macros. The analyzer uses this feature to build the most complete semantic model of the analyzed code.
The pattern-based analysis that is based on an abstract syntax tree searches for fragments in the source code that are similar to the known code patterns with an error.
Method annotations provide more information about the used methods than one can obtain by analyzing only their signatures.
Data-flow analysis is used to evaluate limitations that are imposed on variable values when processing various language constructs. For example, data-flow analysis helps evaluate values that a variable can take inside if/else blocks.
Type inference that is based on a program semantic model provides the analyzer with full information about all variables and statements in the code.
Symbolic execution evaluates variables' values that can lead to errors, performs checks of values' range.
Tainted data analysis detects cases when an application uses unverified user data. Trusting such data excessively may cause vulnerabilities (for example, SQLI, XSS, path traversal).
Intermodular analysis enables the diagnostics to account for functions declared in other translation units.
This website uses cookies and other technology to provide you a more personalized experience. By continuing the view of our web-pages you accept the terms of using these files. If you don't want your personal data to be processed, please, leave this site.
Learn More →
Accept