Features
One command. Zero config. Real answers about why your pages aren't showing up in Google.
Two-phase parallel execution delivers results in seconds. Audit your homepage, robots, sitemap, and sampled pages all at once.
Works instantly with npx. Optionally add a .seoauditrc.json to set project-level defaults for your team.
Built-in GitHub Action. Use --strict to fail pipelines on warnings. Export JSON or Markdown reports for PR comments.
Generate interactive dashboards with --report html. Filter by severity, expand categories, and share with your team.
What it checks
Covers the misconfigs that silently kill crawling and indexing on Next.js and Vercel sites.
Chains, loops, trailing-slash traps, HTTP→HTTPS
Missing file, Disallow rules, Googlebot blocks
Missing, malformed, empty, redirect issues
Canonical, noindex, title, OG tags, Twitter Cards
Missing icons, conflicting declarations
308 traps, middleware rewrites, deploy detection
JSON-LD validation, required fields, schema types
Audit every sitemap URL for SEO issues
Language codes, self-ref, x-default, reciprocal links
Missing alt, lazy loading, next/image, oversized
HSTS, X-Content-Type, frame protection, referrer
Document size, render-blocking scripts, preconnect
Example output
Every finding tells you exactly what's wrong and how to fix it. No vague scores.
Quick start
Install globally via npm and start auditing in seconds.
# 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
// .seoauditrc.json
{
"url": "https://your-site.com",
"strict": true,
"verbose": false,
"userAgent": "googlebot",
"pages": ["/docs", "/team", "/careers"],
"report": "json",
"timeout": 15000
}
| Flag | Description |
|---|---|
--strict | Fail on warnings too (exit code 1) |
--report html | Generate interactive HTML dashboard |
--crawl | Audit all sitemap URLs (default: 50 pages) |
--diff <file> | Compare against a previous report to detect regressions |
--json | Output results as JSON |
--pages <paths> | Comma-separated page paths to audit |
--user-agent <ua> | Audit as googlebot, bingbot, or custom string |
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