How it compares
An honest account of the alternatives, including where they are the better choice. Each of these is a CVE Numbering Authority in its own right, and for a lot of projects one of them is all you need.
The question is where the record lives
Everything on this page can draft an advisory, record affected versions, and get a CVE assigned. That is not the axis. The axis is who holds the record, what it is attached to, who can read it before it is public, and what happens to it when you stop using the tool.
GAdvisory answers those one way: your database, attached to a project hierarchy rather than a repository, on a hostname you own, mirrored into your own git. That answer costs you a deployment to run and a set of integrations you would otherwise get for free, and whether that trade is worth making depends entirely on what you ship and to whom.
Where the differences actually are
| Question | GAdvisory | GitHub | GitLab | VDP platforms |
|---|---|---|---|---|
| Where the record lives | Your database | github.com | GitLab.com or your own instance | The platform |
| What it is attached to | A project hierarchy | A repository | A project | A report |
| Works with no network | Yes | No | Self-managed: yes | No |
| Published on your domain | Yes | No | No | Varies |
| Alerts your users automatically | No | Yes, via Dependabot | Yes, within GitLab | No |
| Researcher intake and triage | Built in, no marketplace | Private reporting | Confidential issues | Their whole product |
| Getting the record out | Live git mirror | API export | API export | API export |
The row worth pausing on is the fifth. Publishing a GHSA gets every downstream consumer of your package alerted by Dependabot without them doing anything, and GAdvisory cannot do that for you. If your users are on GitHub and your product is a package they depend on, that single row may outweigh everything above it.
When each is the right answer
Use GitHub Security Advisories if your project is on GitHub, your users consume it as a dependency, and nothing about your disclosure record is more sensitive than the code it describes. It is free, it needs no setup, and it reaches your users through channels GAdvisory has no access to.
Use a VDP platform if the hard part is receiving reports rather than publishing them. They own the researcher relationship, the triage capacity and the payments, none of which is what GAdvisory is for. They also work alongside it rather than instead of it.
Use GAdvisory when the record itself needs to be yours: because you ship to air-gapped customers, because you hold or want your own numbering remit, because your advisories must be published under your own brand and domain, or because a regulator will ask you where the data is and who processes it.
One at a time
Each comparison has its own page, with the specifics and the concessions.
Compared with GitHub Security Advisories
Repository coupling, Dependabot reach, and what a GHSA is and is not.
Compared with GitLab
Confidential issues, the advisory database, and the limits of GitLab's CNA scope.
Compared with VDP platforms
HackerOne and Bugcrowd own intake. That is a different job, and they run alongside rather than instead.