GoogleChrome /lighthouse

Automated auditing, performance metrics, and best practices for the web.

★ 31,034⑂ 9,786
31,034
stars
+22+30+157
9,786
forks
–
watchers
–
prs
–
issues
–
releases
–
discussions

README

Lighthouse       

 Lighthouse analyzes web apps and web pages, collecting modern performance metrics and insights on developer best practices.

- Using Lighthouse
  - Using Lighthouse in Chrome DevTools
  - Using the Chrome extension
  - Using the Node CLI
     CLI options
  - Using the Node module
  - Viewing a report
     Online Viewer
  - Docs & Recipes
  - Developing Lighthouse
     Setup
     Run
     Tests
     Docs
- Associated Products and Projects
  - Lighthouse Integrations in Web Perf services
  - Lighthouse Integrations in non-Web Perf services
  - Plugins
  - Related projects
- FAQ
   How does Lighthouse work?
   Can I configure the lighthouse run?
   How does Lighthouse use network throttling, and how can I make it better?
   Are results sent to a remote server?
   How do I get localized Lighthouse results?
   How do I author custom audits to extend Lighthouse?
   How do I contribute?

 Using Lighthouse in Chrome DevTools

Lighthouse is integrated directly into the Chrome DevTools, under the "Lighthouse" panel.

Installation: install Chrome.

Run it: open Chrome DevTools, select the Lighthouse panel, and hit "Generate report".



 Using the Chrome extension

The Chrome extension was available prior to Lighthouse being available in Chrome Developer Tools, and offers similar functionality.

Installation: install the extension from the Chrome Web Store.

Run it: follow the extension quick-start guide.

 Using the Node CLI

The Node CLI provides the most flexibility in how Lighthouse runs can be configured and reported. Users who want more advanced usage, or want to run Lighthouse in an automated fashion should use the Node CLI.

 [!NOTE]
 Lighthouse requires Node 22 (LTS) or later.

Installation:

sh
npm install -g lighthouse
 or use yarn:
 yarn global add lighthouse


Run it: lighthouse https://airhorner.com/

By default, Lighthouse writes the report to an HTML file. You can control the output format by passing flags.

 CLI options




$ lighthouse --help

lighthouse  

Logging:
  --verbose  Displays verbose logging  [boolean] [default: false]
  --quiet    Displays no progress, debug logs, or errors  [boolean] [default: false]

Configuration:
  --save-assets                  Save the trace contents & devtools logs to disk  [boolean] [default: false]
  --list-all-audits              Prints a list of all available audits and exits  [boolean] [default: false]
  --list-trace-categories        Prints a list of all required trace categories and exits  [boolean] [default: false]
  --additional-trace-categories  Additional categories to capture with the trace (comma-delimited).  [string]
  --config-path                  The path to the config JSON.
                                 An example config file: core/config/lr-desktop-config.js  [string]
  --preset                       Use a built-in configuration.
                                 WARNING: If the --config-path flag is provided, this preset will be ignored.  [string] [choices: "perf

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON