September 2026 Edition, published · The permanent record of that edition, superseded since. The current standing is on the category page →
Index › IT › Developer platform › SAST · September 2026 Edition

Static application security testing

Asked as “SAST tool”, and as “static code security scanner”, on behalf of a mid-market B2B company. 45 first choices recorded across the direct, paraphrase, budget and scale prompts, twelve models each.
Standing · first-choice share
47Semgrep AppSec Platform22SonarQube13Snyk Code18others

47% of first choices, clear leader.

By buyer segment

The same question asked on behalf of a different buyer. Each standing is computed within its segment; they sit side by side and are never added together.

The standing

Share is the count of first choices across the direct, paraphrase, budget and scale prompts, over all twelve models, for a mid-market B2B company. Ordered by share.
ProductFirst-choice shareNegative rateLabelsQuadrant
01Semgrep AppSec Platform47%0%56endorsed leader
02SonarQube22%10%48accepted challenger
03Snyk Code13%6%36accepted challenger
04Aikido Security4%0%16accepted challenger
05CodeQL2%8%26accepted challenger
06Veracode Static Analysis2%40%35criticized challenger
Show the five products at 0%, ordered by negative rate
11OpenText Fortify0%52%23criticized challenger
10Checkmarx One0%48%46criticized challenger
09Bandit0%18%11accepted challenger
07GitHub Advanced Security0%7%14accepted challenger
08gosec0%0%10accepted challenger
Bars are the share of first choices, 0 to 100Every product with at least 10 labels here. Every product name links to its product page.
All fifteen head-to-head pages: the top six products, each against each

Recommended versus criticized

Every product with at least 10 labels here, on both axes. The 30% line names a quadrant, not the verdict above: that one needs more than 40%.

Criticized challengerCriticized default
Negative label rate →
S01
S02
03
04
C05
06
07
g08
B09
10
11
Accepted challengerEndorsed leader
0%First-choice share → · lines at 30% share and 25% negative60%
Key
01Semgrep AppSec Platform47%
02SonarQube22%
03Snyk Code13%
04Aikido Security4%
05CodeQL2%
06Veracode Static Analysis2%
07GitHub Advanced Security0%
08gosec0%
09Bandit0%
10Checkmarx One0%
11OpenText Fortify0%

What they warned about

Two of twelve models held their first choice under the paraphrase. Claude Haiku 4.5, GPT-5.4 mini, Perplexity Sonar, Grok 4.20, Mistral Small, Llama 4 Maverick, Qwen 3.7 Flash, Kimi K2, GLM 4.7 FlashX and MiniMax M2.5 changed. A high negative share on a product with few labels is a warning. A low share on a product with many labels is salience, not sentiment.
Checkmarx One
48%
22 of 46 labels negative · 9 of 12 models · 4 hard negative
“Tools to Avoid on a Tight Budget ... Checkmarx One / Fortify / Vercode: These are enterprise-grade tools” Qwen 3.7 Flash, budget prompt
Veracode Static Analysis
40%
14 of 35 labels negative · 7 of 12 models · 5 hard negative
“Avoid legacy, binary-upload scanners... historically pioneered by tools like Veracode)... a major friction point for modern, fast-paced DevSecOps teams.” Gemini 3.5 Flash, negative prompt
OpenText Fortify
52%
12 of 23 labels negative · 7 of 12 models · 3 hard negative
“High-cost, legacy platforms (like OpenText Fortify or older on-premise setups of Checkmarx)... Avoid legacy, binary-upload scanners and heavyweight on-premise engines.” Gemini 3.5 Flash, negative prompt
SonarQube
10%
5 of 48 labels negative · 5 of 12 models
“SonarQube: High false positive rates out-of-the-box (40-82% ...) ... Tune heavily or pair with security-specific tools.” Grok 4.20, negative prompt

What they cite

Twelve of the twelve models returned a source list in this edition: four return the pages they cited and eight the search results they consulted.

Sites the answers cite

63 of 72 answers in this category came back with a source list, from 12 of 12 models: citations where the model returns them, or the search results it consulted. 795 links across 146 sites, every framing counted. Ranked by the number of answers carrying the site or page.

vendor site · ZeroPath35 answers · 37 citations · 11 models
34 answers · 46 citations · 11 models
vendor site · Corgea34 answers · 38 citations · 12 models
30 answers · 47 citations · 11 models
vendor site · Endor Labs24 answers · 35 citations · 9 models
vendor site · Augment Code24 answers · 27 citations · 10 models
vendor site · Pixee24 answers · 25 citations · 9 models
vendor site · OX23 answers · 24 citations · 10 models
vendor site · Checkmarx20 answers · 26 citations · 8 models
vendor site · Cycode19 answers · 20 citations · 8 models
vendor site · Safeguard16 answers · 22 citations · 9 models
14 answers · 14 citations · 8 models

Pages the answers cite

The ten pages named in the most answers, by full address. A page here is one the models returned with a recommendation, not one the index endorses.

Search against answers

Each company's standing in the answers beside its site's footprint in Google search, one row a site: the products the models named on it with their shares, and the share they add up to; monthly searches on Google, and DataForSEO's estimate of AI search demand (modeled from search signals, directional, not a count of queries to any assistant), for the most-searched of the company's and its products' names (the name is in each row's hover text); estimated monthly organic visits to the site; and its best position in Google's top ten for “best sast tool”, “sast tool”, “sast tools”. US estimates from DataForSEO and Google's Ads Transparency Center. A small company's site, or a mid-sized company's site for its flagship, is marked company; a product on a large parent's site (Google, Microsoft) has no site figures. A column with no figures for this category is left out, and an empty cell means none were seen, not none exist. Two measurements side by side: neither is read as the cause of the other.
Company and productsShareOwn site citedName searches, GoogleAI search demand, est.Organic visitsPaid search a month, est.Google ads, last 30 days
Semgrep AppSec Platform semgrep.dev47%1673,46143
SonarQube22%14,8001,353
Snyk snyk.io
Snyk Code 13%, Snyk 7%
20%15012,10058161,651 company60
Aikido aikido.dev
Aikido Security 4%
4%3262,400516,442 company$936120
CodeQL2%2,90081
CodeAnt AI codeant.ai2%1826092,282$47256
Veracode Static Analysis veracode.com2%10040212,54317
GitHub parent site
GitHub Advanced Security 0%
0%781,500,00031,479
gosec0%1705
GitLab parent site
GitLab SAST 0%
0%2490,5004,844

Google's top ten for the three searches hold 24 sites; 4 of them are among the sites the models cited here (checkmarx.com, endorlabs.com, safeguard.sh, zeropath.com). The first result for “best sast tool” is reddit.com.

How they answered

Six framings of the same buying question, each sent to every model in a fresh session with search on. One row per model, so a row shows whether it held its answer under rewording, what it named when cost was the constraint, and what it argued against. Computed from the raw judge labels.
ShowHide
ModelDirect“What is the best SAST tool for a mid-market B2B company?”Paraphrase“Which static code security scanner would you recommend to a mid-sized B2B company?”Comparative“What are the top SAST tools and how do they differ?”Budget-constrained“What is the best SAST tool for a company with a limited budget?”Scale-constrained“We are a 500 person company evaluating a SAST tool. What should we look at?”Negative“Which SAST tools should I avoid or be cautious about?”
Claude Haiku 4.5no first choiceSnyk, SonarQubeChanged
Three alternativesCheckmarx One, GitHub Advanced Security, Semgrep AppSec Platform
no first choice
Five alternativesCheckmarx One, Corgea, OpenText Fortify, Snyk Code, Veracode Static Analysis
Semgrep AppSec Platform, SonarQube
One alternativeCodacy
no first choicenothing named
GPT-5.4 miniSnyk Code
Three alternativesCheckmarx One, GitHub Advanced Security, Veracode Static Analysis
Semgrep AppSec PlatformChanged
One alternativeCodeQL
against: Checkmarx One, OpenText Fortify
Checkmarx One, HCL AppScan, Veracode Static Analysis
Four alternativesBlack Duck Coverity, Semgrep AppSec Platform, Snyk Code, SonarQube
against: Contrast Assess
CodeQL
One alternativeSemgrep AppSec Platform
no first choicenothing named
Gemini 3.5 FlashAikido Security
Four alternativesGitHub Advanced Security, GitLab SAST, Semgrep AppSec Platform, Snyk
against: Checkmarx One, OpenText Fortify, Veracode Static Analysis
Aikido SecurityHeld
Two alternativesGitLab SAST, Semgrep AppSec Platform
against: Checkmarx One, GitHub Advanced Security, Snyk, Veracode Static Analysis
no first choice
Five alternativesCheckmarx One, GitHub Advanced Security, Semgrep AppSec Platform, Snyk Code, Veracode Static Analysis
Semgrep AppSec Platform
Six alternativesAikido Security, Bandit, Brakeman, SonarQube, SpotBugs/FindSecBugs, gosec
Semgrep AppSec Platform, Snyk
Three alternativesAikido Security, GitHub Advanced Security, SonarQube
against: Checkmarx One, Veracode Static Analysis
against: Bandit, Checkmarx One, OpenText Fortify, Snyk Code, Veracode Static Analysis
Perplexity SonarCodeAnt AI
Two alternativesAikido Security, Semgrep AppSec Platform
Veracode Static AnalysisChanged
Two alternativesAikido Security, Semgrep AppSec Platform
Checkmarx One, Veracode Static Analysis
Four alternativesAikido Security, CodeQL, Semgrep AppSec Platform, Snyk Code
against: OpenText Fortify
Semgrep AppSec Platform
Five alternativesBandit, CodeAnt AI, Qodana, SonarQube, gosec
against: Checkmarx One, Veracode Static Analysis
no first choiceagainst: Bandit, Brakeman, CodeQL
Grok 4.20Semgrep AppSec Platform
Two alternativesSnyk Code, SonarQube
against: Checkmarx One
SonarQubeChanged
Two alternativesSemgrep AppSec Platform, Snyk Code
against: Checkmarx One, Veracode Static Analysis
Checkmarx One, Snyk Code
Four alternativesCodeQL, Semgrep AppSec Platform, SonarQube, Veracode Static Analysis
Semgrep AppSec Platform
Three alternativesBandit, CodeQL, SonarQube
no first choice
Four alternativesCheckmarx One, Semgrep AppSec Platform, Snyk Code, SonarQube
against: Checkmarx One, OpenText Fortify, SonarQube
Mistral SmallSemgrep AppSec Platform
Two alternativesCodeAnt AI, SonarQube
SonarQubeChanged
Three alternativesCheckmarx One, GitHub Advanced Security, Snyk Code
Semgrep AppSec Platform
Seven alternativesCheckmarx One, Cycode, GitLab SAST, Snyk Code, SonarQube, Veracode Static Analysis, ZeroPath
Semgrep AppSec Platform
Five alternativesBandit, Brakeman, CodeQL, SonarQube, gosec
no first choicenothing named
DeepSeek V4 FlashSemgrep AppSec Platform
Five alternativesCheckmarx One, GitHub Advanced Security, Snyk Code, SonarQube, Veracode Static Analysis
Semgrep AppSec PlatformHeld
Two alternativesCodeQL, Snyk Code
against: Checkmarx One, SonarQube, Veracode Static Analysis
no first choiceSemgrep AppSec Platform
Six alternativesBandit, Brakeman, Codacy, Qodana, SonarQube, gosec
against: Checkmarx One, CodeQL, Veracode Static Analysis
Semgrep AppSec Platform
Four alternativesCheckmarx One, CodeQL, Snyk Code, SonarQube
against: Checkmarx One, OpenText Fortify, Veracode Static Analysis
against: Checkmarx One, OpenText Fortify, Veracode Static Analysis
Llama 4 MaverickSnyk Code
One alternativeSonarQube
SonarQubeChanged
Two alternativesSemgrep AppSec Platform, Snyk Code
no first choiceSemgrep AppSec Platform
Two alternativesCodacy, Qodana
no first choicenothing named
Qwen 3.7 FlashSnyk, SonarQube
Two alternativesGitHub Advanced Security, GitLab SAST
Semgrep AppSec Platform, SonarQubeChanged
Two alternativesGitHub Advanced Security, Snyk Code
against: OpenText Fortify
Checkmarx One, Semgrep AppSec Platform, Snyk Code, Veracode Static Analysis
One alternativeSonarQube
Semgrep AppSec Platform
Six alternativesBandit, Codacy, ESLint, Qodana, SonarQube, gosec
against: Checkmarx One, OpenText Fortify, Snyk Code, Veracode Static Analysis
no first choiceagainst: Checkmarx One, OpenText Fortifyagainst: Checkmarx One, OpenText Fortify, RIPS, Scan4all, SonarQube
Kimi K2Semgrep AppSec Platform, Snyk Code
One alternativeSonarQube
Snyk Code, SonarQubeChanged
One alternativeSemgrep AppSec Platform
against: Checkmarx One, Veracode Static Analysis
Semgrep AppSec Platform
Five alternativesCheckmarx One, CodeQL, Snyk Code, SonarQube, Veracode Static Analysis
Semgrep AppSec Platform
Five alternativesBandit, Brakeman, CodeQL, SonarQube, gosec
no first choiceagainst: Checkmarx One, Veracode Static Analysisagainst: SonarQube
GLM 4.7 FlashXSnyk Code
Three alternativesCodeAnt AI, Semgrep AppSec Platform, SonarQube
against: Checkmarx One, Veracode Static Analysis
Semgrep AppSec PlatformChanged
Two alternativesGitHub Advanced Security, SonarQube
against: Checkmarx One
Semgrep AppSec Platform, Snyk Code
Eight alternativesBlack Duck Coverity, Checkmarx One, CodeQL, DeepSource, OpenText Fortify, SonarQube, Veracode Static Analysis, gosec
Semgrep AppSec Platform
Six alternativesCodacy, CodeAnt AI, CodeQL, Qodana, Snyk Code, SonarQube
no first choiceagainst: SonarQube
MiniMax M2.5Snyk Code, SonarQube
Two alternativesCheckmarx One, Semgrep AppSec Platform
SonarQubeChanged
Two alternativesCodeQL, Semgrep AppSec Platform
no first choice
Five alternativesCheckmarx One, CodeQL, Semgrep AppSec Platform, Snyk Code, Veracode Static Analysis
Semgrep AppSec Platform
Two alternativesQodana, SonarQube
no first choiceagainst: Checkmarx One, OpenText Fortify
Bold is the first choiceAlternatives are counted; the count opens them.What the answer argued against

The record

One row per call: the version string exactly as returned, whether the model searched, sources cited, and latency.
Seventy-two rows: every prompt, every model, every answer.
PromptModelVersion stringTime (UTC)SearchedSourcesLatency
Direct recommendationClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 13:38no04 s
Direct recommendationGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 11:28yes55 s
Direct recommendationGemini 3.5 Flashgemini-3.5-flash2026-09-17 10:52yes1623 s
Direct recommendationPerplexity Sonarsonar2026-09-17 11:27yes206 s
Direct recommendationGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 13:09yes3919 s
Direct recommendationMistral Smallmistral/mistral-small via mistral2026-09-17 13:13yes54 s
Direct recommendationDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 12:58yes1820 s
Direct recommendationLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 09:23yes53 s
Direct recommendationQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 09:32yes1550 s
Direct recommendationKimi K2moonshotai/kimi-k2 via novita2026-09-17 14:13yes918 s
Direct recommendationGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 10:29yes1363 s
Direct recommendationMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 10:49yes518 s
ParaphraseClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 13:01no06 s
ParaphraseGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 10:30yes28 s
ParaphraseGemini 3.5 Flashgemini-3.5-flash2026-09-17 14:10yes1623 s
ParaphrasePerplexity Sonarsonar2026-09-17 14:01yes205 s
ParaphraseGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 14:07yes4520 s
ParaphraseMistral Smallmistral/mistral-small via mistral2026-09-17 10:08yes57 s
ParaphraseDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 10:00yes1820 s
ParaphraseLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 13:45yes54 s
ParaphraseQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 13:36no037 s
ParaphraseKimi K2moonshotai/kimi-k2 via novita2026-09-17 11:53yes1029 s
ParaphraseGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 12:54yes24116 s
ParaphraseMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 10:51yes924 s
ComparativeClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 13:31yes98 s
ComparativeGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 13:08yes49 s
ComparativeGemini 3.5 Flashgemini-3.5-flash2026-09-17 11:12yes1326 s
ComparativePerplexity Sonarsonar2026-09-17 14:08yes2013 s
ComparativeGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 10:41yes2717 s
ComparativeMistral Smallmistral/mistral-small via mistral2026-09-17 10:55yes58 s
ComparativeDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 09:52yes1130 s
ComparativeLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 13:31yes53 s
ComparativeQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 10:37yes532 s
ComparativeKimi K2moonshotai/kimi-k2 via novita2026-09-17 11:45yes1026 s
ComparativeGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 13:04yes1038 s
ComparativeMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 12:11yes522 s
Budget constrainedClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 11:48yes97 s
Budget constrainedGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 11:18yes24 s
Budget constrainedGemini 3.5 Flashgemini-3.5-flash2026-09-17 12:26yes1025 s
Budget constrainedPerplexity Sonarsonar2026-09-17 12:49yes205 s
Budget constrainedGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 10:07yes116 s
Budget constrainedMistral Smallmistral/mistral-small via mistral2026-09-17 13:45yes56 s
Budget constrainedDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 11:24yes1012 s
Budget constrainedLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 10:18yes52 s
Budget constrainedQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 10:30yes523 s
Budget constrainedKimi K2moonshotai/kimi-k2 via novita2026-09-17 13:01yes1522 s
Budget constrainedGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 12:03yes982 s
Budget constrainedMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 11:34yes515 s
Scale constrainedClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 12:11no07 s
Scale constrainedGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 10:42no011 s
Scale constrainedGemini 3.5 Flashgemini-3.5-flash2026-09-17 12:11yes1023 s
Scale constrainedPerplexity Sonarsonar2026-09-17 13:51yes2010 s
Scale constrainedGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 12:06yes1711 s
Scale constrainedMistral Smallmistral/mistral-small via mistral2026-09-17 09:28no07 s
Scale constrainedDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 12:34yes1323 s
Scale constrainedLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 09:42yes53 s
Scale constrainedQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 12:00no038 s
Scale constrainedKimi K2moonshotai/kimi-k2 via novita2026-09-17 09:34yes1439 s
Scale constrainedGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 13:55yes1495 s
Scale constrainedMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 11:49yes532 s
Negative framingClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 10:31no04 s
Negative framingGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 10:47no06 s
Negative framingGemini 3.5 Flashgemini-3.5-flash2026-09-17 10:19yes2025 s
Negative framingPerplexity Sonarsonar2026-09-17 12:45yes207 s
Negative framingGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 12:58yes3716 s
Negative framingMistral Smallmistral/mistral-small via mistral2026-09-17 13:12yes56 s
Negative framingDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 13:20yes2018 s
Negative framingLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 12:53yes53 s
Negative framingQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 14:07yes534 s
Negative framingKimi K2moonshotai/kimi-k2 via novita2026-09-17 09:36yes1422 s
Negative framingGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 10:07yes1347 s
Negative framingMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 13:16yes2451 s

Normalization in this category

Every judgment call made between the raw labels and the numbers above, listed so it is visible and reversible.

ShowHide
Category-scoped readings
Aikido read as Aikido Security
Checkmarx read as Checkmarx One
Checkmarx (Checkmarx One) read as Checkmarx One
Checkmarx (CxSAST) read as Checkmarx One
Checkmarx (now part of Veracode) read as Checkmarx One
GitHub Advanced Security / CodeQL read as GitHub Advanced Security
GitLab read as GitLab SAST
GitLab Ultimate read as GitLab SAST
Semgrep read as Semgrep AppSec Platform
Semgrep (Community Edition) read as Semgrep AppSec Platform
Semgrep (Semgrep Code) read as Semgrep AppSec Platform
Semgrep (open-source edition) read as Semgrep AppSec Platform
Semgrep CE read as Semgrep AppSec Platform
Semgrep Code read as Semgrep AppSec Platform
Semgrep Community Edition read as Semgrep AppSec Platform
Semgrep OSS read as Semgrep AppSec Platform
Semgrep Pro read as Semgrep AppSec Platform
Veracode read as Veracode Static Analysis
Unresolved, counted raw
Contrast Assess
Corridor
IBM AppScan Source
NodeJsScan
PHPStan
Parasoft C/C++test
Scan4all
Discontinued, still offered
No shut-down product was recommended here.
← Source controlAI governance →