LHCI vs Unlighthouse: Which Lighthouse CI Tool Should You Use?

Honest side-by-side comparison of @lhci/cli and Unlighthouse. Setup, URL discovery, budgets, reporting, and when each tool fits your workflow.
Harlan WiltonHarlan Wilton8 min read Published

@lhci/cli (from Google) is best for tracking a known list of critical URLs over time with performance budgets and historical dashboards. Unlighthouse is best for auditing every page of a site at once via auto-discovery. The two tools solve different problems.

The two tools

Google's official Lighthouse CI. You provide a list of URLs, it runs Lighthouse N times per URL, asserts against budgets, and uploads results to temporary storage, the filesystem, or an LHCI server. Around 2.3M monthly npm downloads in 2026 (following the Feb 2026 registry bot-filtering event).

npm install -g @lhci/cli
lhci autorun

Side-by-side comparison

@lhci/cliUnlighthouse
Made byGoogle Chrome teamHarlan Wilton (OSS)
Setup time10-30 min (config file + budgets)Under 1 min (zero config)
URL discoveryManual list in lighthouserc.jsAuto-crawl via sitemap, robots.txt, links
Default URLs testedOnly what you specifyEvery internal route found
Performance budgetsYes, per URL, rich assertionsYes, global score thresholds
ArchitectureSequential/Isolated for precisionSmart Sampling for site-wide speed
Historical trackingYes via @lhci/serverNo built-in dashboard
Local HTML UIStatic report per URLInteractive client, sortable, filterable
CI integrationFirst-party GitHub App, status checksunlighthouse-ci command, JSON output
PR commentsVia GitHub AppVia third-party actions
Variance reductionRuns N times, uses medianConfigurable, defaults to 1 run
Server/DB requiredOptional (LHCI server)No
npm downloads (monthly)~2.3M~100k
Best forRegression tracking on key URLsSite-wide audits, catching outliers

When to use @lhci/cli

Pick LHCI when:

LHCI's strength is depth on a narrow set of pages. It was designed for the workflow where a team picks 5 to 10 representative URLs, sets budgets, and watches for regressions commit by commit. In 2026, the roadmap focuses on SHA-pinning security for all CI actions to prevent supply chain attacks.

When to use Unlighthouse

Pick Unlighthouse when:

  • You want to audit the entire site, not just a predefined list.
  • You don't know which pages are slowest, and you want to find out.
  • You need to audit 1,000+ pages; Unlighthouse's Smart Sampling identifies route patterns and only audits representative samples, making it 10x faster than sequential testing.
  • Setup speed matters; you want to go from install to results in under a minute.
  • You need to spot patterns across routes, for example a shared layout causing CLS on 200 blog posts.
  • You want an interactive UI for browsing per-page results, not static HTML reports.

Unlighthouse's strength is breadth. It finds problems you didn't know to look for. The homepage might score 95, while /pricing/enterprise scores 62 because a marketing tag manager ships 400KB of JavaScript that never hit the homepage.

Running both in parallel

The tools complement each other. A common setup:

  • Every PR: @lhci/cli runs on 5-10 critical URLs with strict budgets. Fast feedback, historical tracking via LHCI server.
  • Weekly scheduled job: Unlighthouse scans the full site, posts a summary to Slack, flags any page scoring below 70.
name: Lighthouse CI
on: [pull_request]
jobs:
  lhci:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm ci
      - run: npx @lhci/cli@latest autorun

Summary

Pick @lhci/cli for deep regression tracking on a curated URL list with historical dashboards. Pick Unlighthouse for fast, site-wide audits that surface problems across every route. Run both if you want per-PR gates plus scheduled full-site coverage.

Try Unlighthouse