QL helps you explore code quickly to find and eradicate all variants of vulnerabilities before they become a problem.

By automating variant analysis, QL enables product security teams to find zero-days and variants of critical vulnerabilities.


Find the unknown vulnerability

Want to find your first vulnerability with QL?
Semmle CTF Challenge

QL allows you to quickly perform variant analysis to find previously unknown security vulnerabilities. QL treats code as data allowing you to write custom queries to explore your code.

QL ships with extensive libraries to perform control and data flow analysis, taint tracking and explore known threat models without having to worry about low-level language concepts and compiler specifics. Supported languages include C/C++, C#, Java, Javascript, Python and more.

With Semmle, we are able to track down not only the most serious vulnerabilities, but also their logical variants in our entire codebase so we can shut them down before they shut us down.

Asim Husain / VP of Engineering at Google

Rapidly interrogate your code

Use our Query Console on LGTM.com to explore existing queries and libraries on any OSS project. Follow our tutorials to start writing QL yourself.
Try QL for free

QL is the most efficient way to explore your code and identify even the most complex semantic patterns. QL is easy to learn and quick to iterate.

Write and execute QL queries locally using QL plugins for your favorite IDE. Use the LGTM Query Console to write QL directly in your web browser and query your entire portfolio for security vulnerabilities.

Case Study Semmle at NASA: Landing Curiosity safely on Mars
Read more

Scale security analysis

Learn how Semmle QL can help secure your software!
Book a demo

With QL, you can run out of the box or custom queries on multiple codebases to get accurate and relevant security analyses, allowing you to focus on the most critical issues.
Each QL query represents a piece of security knowledge — codified, readable, and executable — ready to be applied to any number of projects. QL is a high performing code analysis engine that analyses the largest and most complex applications in the world.

Case Study Semmle at Microsoft: Vulnerability hunting
Read more

Community powered security

Scale your security expertise by tapping into the Semmle security community.


With over 1600 QL queries contributed by the Semmle Security Research Team as well as our growing customer community, your security team is instantly extended with the capabilities of the top security researchers on the planet, working to secure your software.


Give back by sharing your own security analyses and helping us work together to secure the code that runs the world.

Key Attributes


Quickly write new queries, enabling instant security response and ongoing protection

02Easy to use

Designed for simplicity, and with comprehensive libraries, complex analyses can be expressed using just a few lines of QL


Find critical vulnerabilities with relevant analyses and eliminating time wasted on false positives


High performing engine that analyses the largest and most complex applications in the world

Get in touch

Interested in seeing what QL can do for your organization? Let us walk you through some examples that demonstrate its full capabilities.

Try on LGTM.com

Use our Query Console on LGTM.com to explore existing queries and libraries, and follow our tutorials to start writing QL yourself.

Get started