Lighthouse CI vs Pa11y: open-source accessibility testing tools compared
Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.
Summary
Lighthouse CI: Tool suite that runs, stores and asserts against Lighthouse results in CI, with a server and dashboard.
Pa11y: Accessibility testing CLI and Node.js library that checks web pages with HTML_CodeSniffer or axe runners.
Both are listed under Accessibility testing. The table gives repository metrics from the GitHub API with their fetch date, then the documented facts used for every comparison in this category, each linked to the README or docs page it comes from. A cell reads "not documented" when the fact was not found in the project's documentation; that does not mean the feature is absent.
Side by side
| Fact | Lighthouse CI | Pa11y |
|---|---|---|
| Stars | 7,0941 | 4,5361 |
| Forks | 7171 | 3011 |
| Contributors | 1271 | 631 |
| Last release | 2025-06-261 | 2026-08-281 |
| Last commit | 2025-06-261 | 2026-08-281 |
| Commits in 90 days | 01 | 101 |
| License | Apache-2.01 | LGPL-3.01 |
| Primary language | JavaScript1 | JavaScript1 |
| Status | inactive1 | active1 |
| Rules or standards | Lighthouse regression checks for accessibility, SEO, offline support and performance source: README | WCAG2A, WCAG2AA (default), WCAG2AAA (HTML_CodeSniffer runner only) source: README |
| Browsers | Chrome or Chromium (chromePath option) source: Docs: Configuration | Headless Chrome, configured through Puppeteer launch options source: README |
| Framework integrations | Puppeteer scripts that prepare the browser before Lighthouse runs (puppeteerScript) source: Docs: Configuration | Test runners HTML_CodeSniffer (default) and axe-core; custom runners as CommonJS modules source: README |
| CI integration | Guide with configs for GitHub Actions, Travis CI, CircleCI, GitLab CI, Jenkins, Google Cloud Build source: Docs: Getting Started | Error thresholds that set the exit code, for CI builds source: README |
| Report formats | Lighthouse JSON and HTML reports with a manifest.json (filesystem target); LHCI server or temporary public storage source: Docs: Configuration | cli, csv, html, json, tsv; custom reporters source: README |
| Install method | npm (npm install -g @lhci/cli) source: README | npm (npm install -g pa11y) source: README |
1 Fetched from the GitHub or GitLab API on . Hover a value for its own date.
When each fits
Written from each project's documented scope, not from preference. Neither tool is ranked.
Lighthouse CI
Fits projects that run Lighthouse on every commit in continuous integration; its README describes tools for running, saving, retrieving and asserting against Lighthouse results. source: README
Pa11y
Fits projects that automate accessibility tests on web pages; its README describes running accessibility tests via the command line or Node.js. source: README
More on these tools
Sources
- GitHub REST API: repository, read
- GitHub REST API: repository, read
- GitHub REST API: contributors, read
- GitHub REST API: contributors, read
- GitHub REST API: latest release, read
- GitHub REST API: latest release, read
- GitHub REST API: commits, read
- GitHub REST API: commits, read
- README, read
- README, read
- Docs: Configuration, read
- Docs: Getting Started, read
Documented facts collected 2026-09-22. See the methodology for how metrics and facts are gathered.