Features Checks Output Quick Start GitHub

If you're using Vercel and Google hates your site, this is for you.

A fast, developer-friendly CLI that explains why Google isn't indexing your Next.js site — beyond the vague stuff in Search Console.

$ npm i -g vercel-seo-audit
npm version npm downloads CI license

Everything you need, nothing you don't

One command. Zero config. Real answers about why your pages aren't showing up in Google.

Fast CLI

Two-phase parallel execution delivers results in seconds. Audit your homepage, robots, sitemap, and sampled pages all at once.

Zero Config

Works instantly with npx. Optionally add a .seoauditrc.json to set project-level defaults for your team.

CI-Ready

Built-in GitHub Action. Use --strict to fail pipelines on warnings. Export JSON or Markdown reports for PR comments.

HTML Reports

Generate interactive dashboards with --report html. Filter by severity, expand categories, and share with your team.

12 audit categories, one command

Covers the misconfigs that silently kill crawling and indexing on Next.js and Vercel sites.

Redirects

Chains, loops, trailing-slash traps, HTTP→HTTPS

Robots.txt

Missing file, Disallow rules, Googlebot blocks

Sitemap

Missing, malformed, empty, redirect issues

Metadata

Canonical, noindex, title, OG tags, Twitter Cards

Favicon

Missing icons, conflicting declarations

Next.js / Vercel

308 traps, middleware rewrites, deploy detection

Structured Data

JSON-LD validation, required fields, schema types

Crawl Mode

Audit every sitemap URL for SEO issues

i18n / hreflang

Language codes, self-ref, x-default, reciprocal links

Images

Missing alt, lazy loading, next/image, oversized

Security Headers

HSTS, X-Content-Type, frame protection, referrer

Performance

Document size, render-blocking scripts, preconnect

Clear, actionable results

Every finding tells you exactly what's wrong and how to fix it. No vague scores.

vercel-seo-audit
SEO Audit Report for https://example.com/ Completed in 1118ms at 2026-01-31T12:30:54.448Z Summary: ✖ 1 error ⚠ 3 warnings ℹ 2 info ✔ 4 passed REDIRECTS ──────────────────────────────────────── ✖ [ERROR] Redirect chain detected (3 hops) → Reduce to a single redirect: http://example.com → https://example.com/ ROBOTS ──────────────────────────────────────── ⚠ [WARNING] robots.txt not found → Create a robots.txt at /robots.txt SITEMAP ──────────────────────────────────────── ⚠ [WARNING] sitemap.xml not found → Add app/sitemap.ts in Next.js App Router METADATA ──────────────────────────────────────── ⚠ [WARNING] Canonical URL mismatch → Canonical points to https://www.example.com/ but page is https://example.com/ ✔ [PASS] Title tag present ✔ [PASS] Meta description present

Up and running in seconds

Install globally via npm and start auditing in seconds.

Install
# Install globally
npm i -g vercel-seo-audit
vercel-seo-audit https://your-site.com

# Or run once with npx
npx vercel-seo-audit https://your-site.com
Config file
// .seoauditrc.json
{
  "url": "https://your-site.com",
  "strict": true,
  "verbose": false,
  "userAgent": "googlebot",
  "pages": ["/docs", "/team", "/careers"],
  "report": "json",
  "timeout": 15000
}
CLI flags
FlagDescription
--strictFail on warnings too (exit code 1)
--report htmlGenerate interactive HTML dashboard
--crawlAudit all sitemap URLs (default: 50 pages)
--diff <file>Compare against a previous report to detect regressions
--jsonOutput results as JSON
--pages <paths>Comma-separated page paths to audit
--user-agent <ua>Audit as googlebot, bingbot, or custom string
GitHub Action
name: SEO Audit
on:
  push:
    branches: [main]

jobs:
  audit:
    runs-on: ubuntu-latest
    steps:
      - uses: JosephDoUrden/vercel-seo-audit@v1
        with:
          url: https://your-site.com
          strict: true
          report: json