antigravity-seo-kit 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/.agent/agent.md +96 -0
  2. package/.agent/skills/seo/SKILL.md +153 -0
  3. package/.agent/skills/seo/references/cwv-thresholds.md +108 -0
  4. package/.agent/skills/seo/references/eeat-framework.md +214 -0
  5. package/.agent/skills/seo/references/local-schema-types.md +230 -0
  6. package/.agent/skills/seo/references/local-seo-signals.md +218 -0
  7. package/.agent/skills/seo/references/maps-api-endpoints.md +160 -0
  8. package/.agent/skills/seo/references/maps-free-apis.md +176 -0
  9. package/.agent/skills/seo/references/maps-gbp-checklist.md +150 -0
  10. package/.agent/skills/seo/references/maps-geo-grid.md +154 -0
  11. package/.agent/skills/seo/references/quality-gates.md +155 -0
  12. package/.agent/skills/seo/references/schema-types.md +118 -0
  13. package/.agent/skills/seo/schema/templates.json +213 -0
  14. package/.agent/skills/seo/scripts/analyze_visual.py +217 -0
  15. package/.agent/skills/seo/scripts/capture_screenshot.py +181 -0
  16. package/.agent/skills/seo/scripts/fetch_page.py +196 -0
  17. package/.agent/skills/seo/scripts/parse_html.py +201 -0
  18. package/.agent/skills/seo-audit/SKILL.md +278 -0
  19. package/.agent/skills/seo-competitor-pages/SKILL.md +212 -0
  20. package/.agent/skills/seo-content/SKILL.md +230 -0
  21. package/.agent/skills/seo-dataforseo/SKILL.md +418 -0
  22. package/.agent/skills/seo-geo/SKILL.md +305 -0
  23. package/.agent/skills/seo-google/SKILL.md +405 -0
  24. package/.agent/skills/seo-google/assets/templates/cwv-audit-report.md +48 -0
  25. package/.agent/skills/seo-google/assets/templates/gsc-performance-report.md +44 -0
  26. package/.agent/skills/seo-google/assets/templates/indexation-status-report.md +43 -0
  27. package/.agent/skills/seo-google/references/auth-setup.md +154 -0
  28. package/.agent/skills/seo-google/references/ga4-data-api.md +184 -0
  29. package/.agent/skills/seo-google/references/indexing-api.md +107 -0
  30. package/.agent/skills/seo-google/references/keyword-planner-api.md +66 -0
  31. package/.agent/skills/seo-google/references/nlp-api.md +55 -0
  32. package/.agent/skills/seo-google/references/pagespeed-crux-api.md +204 -0
  33. package/.agent/skills/seo-google/references/rate-limits-quotas.md +75 -0
  34. package/.agent/skills/seo-google/references/search-console-api.md +156 -0
  35. package/.agent/skills/seo-google/references/supplementary-apis.md +99 -0
  36. package/.agent/skills/seo-google/references/youtube-api.md +49 -0
  37. package/.agent/skills/seo-google/scripts/crux_history.py +321 -0
  38. package/.agent/skills/seo-google/scripts/ga4_report.py +478 -0
  39. package/.agent/skills/seo-google/scripts/google_auth.py +795 -0
  40. package/.agent/skills/seo-google/scripts/google_report.py +2273 -0
  41. package/.agent/skills/seo-google/scripts/gsc_inspect.py +340 -0
  42. package/.agent/skills/seo-google/scripts/gsc_query.py +378 -0
  43. package/.agent/skills/seo-google/scripts/indexing_notify.py +313 -0
  44. package/.agent/skills/seo-google/scripts/keyword_planner.py +297 -0
  45. package/.agent/skills/seo-google/scripts/nlp_analyze.py +309 -0
  46. package/.agent/skills/seo-google/scripts/pagespeed_check.py +649 -0
  47. package/.agent/skills/seo-google/scripts/youtube_search.py +355 -0
  48. package/.agent/skills/seo-hreflang/SKILL.md +192 -0
  49. package/.agent/skills/seo-image-gen/SKILL.md +211 -0
  50. package/.agent/skills/seo-image-gen/references/cost-tracking.md +47 -0
  51. package/.agent/skills/seo-image-gen/references/gemini-models.md +200 -0
  52. package/.agent/skills/seo-image-gen/references/mcp-tools.md +115 -0
  53. package/.agent/skills/seo-image-gen/references/post-processing.md +192 -0
  54. package/.agent/skills/seo-image-gen/references/presets.md +69 -0
  55. package/.agent/skills/seo-image-gen/references/prompt-engineering.md +411 -0
  56. package/.agent/skills/seo-image-gen/references/seo-image-presets.md +137 -0
  57. package/.agent/skills/seo-image-gen/scripts/batch.py +97 -0
  58. package/.agent/skills/seo-image-gen/scripts/cost_tracker.py +191 -0
  59. package/.agent/skills/seo-image-gen/scripts/edit.py +141 -0
  60. package/.agent/skills/seo-image-gen/scripts/generate.py +149 -0
  61. package/.agent/skills/seo-image-gen/scripts/presets.py +153 -0
  62. package/.agent/skills/seo-image-gen/scripts/setup_mcp.py +151 -0
  63. package/.agent/skills/seo-image-gen/scripts/validate_setup.py +133 -0
  64. package/.agent/skills/seo-images/SKILL.md +176 -0
  65. package/.agent/skills/seo-local/SKILL.md +381 -0
  66. package/.agent/skills/seo-maps/SKILL.md +328 -0
  67. package/.agent/skills/seo-page/SKILL.md +86 -0
  68. package/.agent/skills/seo-plan/SKILL.md +118 -0
  69. package/.agent/skills/seo-plan/assets/agency.md +175 -0
  70. package/.agent/skills/seo-plan/assets/ecommerce.md +167 -0
  71. package/.agent/skills/seo-plan/assets/generic.md +144 -0
  72. package/.agent/skills/seo-plan/assets/local-service.md +160 -0
  73. package/.agent/skills/seo-plan/assets/publisher.md +153 -0
  74. package/.agent/skills/seo-plan/assets/saas.md +135 -0
  75. package/.agent/skills/seo-programmatic/SKILL.md +171 -0
  76. package/.agent/skills/seo-schema/SKILL.md +223 -0
  77. package/.agent/skills/seo-sitemap/SKILL.md +180 -0
  78. package/.agent/skills/seo-technical/SKILL.md +211 -0
  79. package/.agent/workflows/seo-audit.md +17 -0
  80. package/.agent/workflows/seo-competitor-pages.md +12 -0
  81. package/.agent/workflows/seo-content.md +14 -0
  82. package/.agent/workflows/seo-geo.md +12 -0
  83. package/.agent/workflows/seo-google.md +12 -0
  84. package/.agent/workflows/seo-hreflang.md +12 -0
  85. package/.agent/workflows/seo-images.md +13 -0
  86. package/.agent/workflows/seo-local.md +12 -0
  87. package/.agent/workflows/seo-maps.md +11 -0
  88. package/.agent/workflows/seo-page.md +13 -0
  89. package/.agent/workflows/seo-plan.md +13 -0
  90. package/.agent/workflows/seo-programmatic.md +12 -0
  91. package/.agent/workflows/seo-schema.md +11 -0
  92. package/.agent/workflows/seo-sitemap.md +9 -0
  93. package/.agent/workflows/seo-technical.md +18 -0
  94. package/LICENSE +88 -0
  95. package/README.md +122 -0
  96. package/bin/cli.js +117 -0
  97. package/docs/ARCHITECTURE.md +218 -0
  98. package/docs/COMMANDS.md +184 -0
  99. package/docs/INSTALLATION.md +100 -0
  100. package/docs/MCP-INTEGRATION.md +153 -0
  101. package/docs/TROUBLESHOOTING.md +151 -0
  102. package/docs/superpowers/plans/2026-03-13-github-audit-fixes.md +511 -0
  103. package/extensions/banana/README.md +95 -0
  104. package/extensions/banana/docs/BANANA-SETUP.md +86 -0
  105. package/extensions/banana/install.sh +170 -0
  106. package/extensions/banana/references/cost-tracking.md +47 -0
  107. package/extensions/banana/references/gemini-models.md +200 -0
  108. package/extensions/banana/references/mcp-tools.md +115 -0
  109. package/extensions/banana/references/post-processing.md +192 -0
  110. package/extensions/banana/references/presets.md +69 -0
  111. package/extensions/banana/references/prompt-engineering.md +411 -0
  112. package/extensions/banana/references/seo-image-presets.md +137 -0
  113. package/extensions/banana/scripts/batch.py +97 -0
  114. package/extensions/banana/scripts/cost_tracker.py +191 -0
  115. package/extensions/banana/scripts/edit.py +141 -0
  116. package/extensions/banana/scripts/generate.py +149 -0
  117. package/extensions/banana/scripts/presets.py +153 -0
  118. package/extensions/banana/scripts/setup_mcp.py +151 -0
  119. package/extensions/banana/scripts/validate_setup.py +133 -0
  120. package/extensions/banana/uninstall.sh +43 -0
  121. package/extensions/dataforseo/README.md +169 -0
  122. package/extensions/dataforseo/docs/DATAFORSEO-SETUP.md +74 -0
  123. package/extensions/dataforseo/field-config.json +280 -0
  124. package/extensions/dataforseo/install.ps1 +110 -0
  125. package/extensions/dataforseo/install.sh +161 -0
  126. package/extensions/dataforseo/uninstall.ps1 +35 -0
  127. package/extensions/dataforseo/uninstall.sh +39 -0
  128. package/lib/api.js +190 -0
  129. package/lib/fingerprint.js +68 -0
  130. package/lib/installer.js +486 -0
  131. package/lib/utils.js +254 -0
  132. package/package.json +40 -0
  133. package/pyproject.toml +11 -0
  134. package/requirements-google.txt +15 -0
  135. package/requirements.txt +11 -0
@@ -0,0 +1,96 @@
1
+ # SEO Kit: Universal SEO Analysis Skill
2
+
3
+ ## Project Overview
4
+
5
+ This repository contains **SEO Kit**, a comprehensive SEO analysis skill for AI
6
+ coding agents. It follows the Agent Skills open standard and the 3-layer architecture
7
+ (directive, orchestration, execution). 13 sub-skills and an extensible reference
8
+ system cover technical SEO, content quality, schema markup, image optimization,
9
+ sitemap architecture, AI search optimization, and local SEO (GBP, citations,
10
+ reviews, map pack).
11
+
12
+ ## Architecture
13
+
14
+ ```
15
+ seo-kit/
16
+ .agent/
17
+ agent.md # Project instructions (this file)
18
+ skills/
19
+ seo/ # Main orchestrator skill
20
+ SKILL.md # Entry point, routing table, core rules
21
+ references/ # On-demand knowledge files
22
+ scripts/ # Python execution scripts
23
+ schema/ # Schema.org JSON-LD templates
24
+ seo-audit/SKILL.md # Full site audit
25
+ seo-page/SKILL.md # Deep single-page analysis
26
+ seo-technical/SKILL.md # Technical SEO (9 categories)
27
+ seo-content/SKILL.md # E-E-A-T and content quality
28
+ seo-schema/SKILL.md # Schema.org markup detection/generation
29
+ seo-sitemap/SKILL.md # XML sitemap analysis/generation
30
+ seo-images/SKILL.md # Image optimization analysis
31
+ seo-geo/SKILL.md # AI search / GEO optimization
32
+ seo-local/SKILL.md # Local SEO (GBP, citations, reviews, map pack)
33
+ seo-plan/SKILL.md # Strategic SEO planning
34
+ seo-programmatic/SKILL.md # Programmatic SEO at scale
35
+ seo-competitor-pages/SKILL.md # Competitor comparison pages
36
+ seo-hreflang/SKILL.md # International SEO / hreflang
37
+ seo-dataforseo/SKILL.md # Live SEO data (extension)
38
+ seo-image-gen/SKILL.md # AI image generation (extension)
39
+ workflows/ # Slash-command workflows
40
+ seo-audit.md
41
+ seo-page.md
42
+ seo-technical.md
43
+ seo-content.md
44
+ seo-schema.md
45
+ seo-sitemap.md
46
+ seo-images.md
47
+ seo-geo.md
48
+ seo-local.md
49
+ seo-plan.md
50
+ seo-programmatic.md
51
+ seo-competitor-pages.md
52
+ seo-hreflang.md
53
+ extensions/ # Optional add-on capabilities
54
+ dataforseo/ # Live SEO data via DataForSEO MCP
55
+ banana/ # AI image generation via Gemini MCP
56
+ docs/ # Extended documentation
57
+ ARCHITECTURE.md
58
+ COMMANDS.md
59
+ INSTALLATION.md
60
+ MCP-INTEGRATION.md
61
+ TROUBLESHOOTING.md
62
+ ```
63
+
64
+ ## Workflows (Commands)
65
+
66
+ | Workflow | Purpose |
67
+ |----------|---------|
68
+ | `/seo-audit` | Full site audit with specialist skills |
69
+ | `/seo-page` | Deep single-page analysis |
70
+ | `/seo-technical` | Technical SEO audit (9 categories) |
71
+ | `/seo-content` | E-E-A-T and content quality analysis |
72
+ | `/seo-schema` | Schema.org detection, validation, generation |
73
+ | `/seo-sitemap` | XML sitemap analysis or generation |
74
+ | `/seo-images` | Image optimization analysis |
75
+ | `/seo-geo` | AI search / Generative Engine Optimization |
76
+ | `/seo-plan` | Strategic SEO planning by industry |
77
+ | `/seo-programmatic` | Programmatic SEO analysis and planning |
78
+ | `/seo-competitor-pages` | Competitor comparison page generation |
79
+ | `/seo-local` | Local SEO analysis (GBP, citations, reviews, map pack) |
80
+ | `/seo-hreflang` | International SEO / hreflang audit |
81
+
82
+ ## Development Rules
83
+
84
+ - Keep SKILL.md files under 500 lines / 5000 tokens
85
+ - Reference files should be focused and under 200 lines
86
+ - Scripts must have docstrings, CLI interface, and JSON output
87
+ - Follow kebab-case naming for all skill directories
88
+ - Python dependencies: install per project or user-level
89
+ - Test with `python -m pytest tests/` after changes (if applicable)
90
+
91
+ ## Key Principles
92
+
93
+ 1. **Progressive Disclosure**: Metadata always loaded, instructions on activation, resources on demand
94
+ 2. **Industry Detection**: Auto-detect SaaS, e-commerce, local, publisher, agency
95
+ 3. **Skill Composition**: Full audits activate multiple specialist skills simultaneously
96
+ 4. **Extension System**: DataForSEO MCP for live data, Banana MCP for AI image generation
@@ -0,0 +1,153 @@
1
+ ---
2
+ name: seo
3
+ description: >
4
+ Comprehensive SEO analysis for any website or business type. Performs full site
5
+ audits, single-page deep analysis, technical SEO checks (crawlability, indexability,
6
+ Core Web Vitals with INP), schema markup detection/validation/generation, content
7
+ quality assessment (E-E-A-T framework per Dec 2025 update extending to all
8
+ competitive queries), image optimization, sitemap analysis, and Generative Engine
9
+ Optimization (GEO) for AI Overviews, ChatGPT, and Perplexity citations. Analyzes
10
+ AI crawler accessibility (GPTBot, ClaudeBot, PerplexityBot), llms.txt compliance,
11
+ brand mention signals, and passage-level citability. Industry detection for SaaS,
12
+ e-commerce, local business, publishers, agencies. Triggers on: "SEO", "audit",
13
+ "schema", "Core Web Vitals", "sitemap", "E-E-A-T", "AI Overviews", "GEO",
14
+ "technical SEO", "content quality", "page speed", "structured data".
15
+ ---
16
+
17
+ # SEO: Universal SEO Analysis Skill
18
+
19
+ Comprehensive SEO analysis across all industries (SaaS, local services,
20
+ e-commerce, publishers, agencies). Orchestrates 15 specialized sub-skills
21
+ (+ optional extension sub-skills like seo-dataforseo and seo-image-gen).
22
+
23
+ ## Quick Reference
24
+
25
+ | Workflow | What it does |
26
+ |----------|-------------|
27
+ | `/seo-audit` | Full website audit with parallel skill delegation |
28
+ | `/seo-page` | Deep single-page analysis |
29
+ | `/seo-sitemap` | Analyze or generate XML sitemaps |
30
+ | `/seo-schema` | Detect, validate, and generate Schema.org markup |
31
+ | `/seo-images` | Image optimization analysis |
32
+ | `/seo-technical` | Technical SEO audit (9 categories) |
33
+ | `/seo-content` | E-E-A-T and content quality analysis |
34
+ | `/seo-geo` | AI Overviews / Generative Engine Optimization |
35
+ | `/seo-plan` | Strategic SEO planning |
36
+ | `/seo-programmatic` | Programmatic SEO analysis and planning |
37
+ | `/seo-competitor-pages` | Competitor comparison page generation |
38
+ | `/seo-local` | Local SEO analysis (GBP, citations, reviews, map pack) |
39
+ | `/seo-maps` | Maps intelligence (geo-grid, GBP audit, reviews, competitors) |
40
+ | `/seo-hreflang` | Hreflang/i18n SEO audit and generation |
41
+ | `/seo-google` | Google SEO APIs (GSC, PageSpeed, CrUX, Indexing, GA4) |
42
+
43
+ ## Orchestration Logic
44
+
45
+ When the user invokes `/seo-audit`, activate specialist skills:
46
+ 1. Detect business type (SaaS, local, ecommerce, publisher, agency, other)
47
+ 2. Activate relevant skills: seo-technical, seo-content, seo-schema, seo-sitemap, seo-images, seo-geo
48
+ 3. If Google API credentials detected (`python .agent/skills/seo-google/scripts/google_auth.py --check`), also activate seo-google skill
49
+ 4. If local business detected, also activate seo-local skill
50
+ 5. If local business detected AND DataForSEO MCP available, also activate seo-maps skill
51
+ 6. Collect results and generate unified report with SEO Health Score (0-100)
52
+ 7. Create prioritized action plan (Critical -> High -> Medium -> Low)
53
+ 8. **Offer PDF report**: "Generate a professional PDF report? Use `/seo-google report full`"
54
+
55
+ For individual workflows, load the relevant sub-skill directly.
56
+ After any analysis command completes, offer to generate a PDF report via `seo-google/scripts/google_report.py`.
57
+
58
+ ## Industry Detection
59
+
60
+ Detect business type from homepage signals:
61
+ - **SaaS**: pricing page, /features, /integrations, /docs, "free trial", "sign up"
62
+ - **Local Service**: phone number, address, service area, "serving [city]", Google Maps embed --> auto-suggest `/seo-local` for deeper analysis
63
+ - **E-commerce**: /products, /collections, /cart, "add to cart", product schema
64
+ - **Publisher**: /blog, /articles, /topics, article schema, author pages, publication dates
65
+ - **Agency**: /case-studies, /portfolio, /industries, "our work", client logos
66
+
67
+ ## Quality Gates
68
+
69
+ Read `references/quality-gates.md` for thin content thresholds per page type.
70
+ Hard rules:
71
+ - WARNING at 30+ location pages (enforce 60%+ unique content)
72
+ - HARD STOP at 50+ location pages (require user justification)
73
+ - Never recommend HowTo schema (deprecated Sept 2023)
74
+ - FAQ schema for Google rich results: only government and healthcare sites (Aug 2023 restriction); existing FAQPage on commercial sites -> flag Info priority (not Critical), noting AI/LLM citation benefit; adding new FAQPage -> not recommended for Google benefit
75
+ - All Core Web Vitals references use INP, never FID
76
+
77
+ ## Reference Files
78
+
79
+ Load these on-demand as needed (do NOT load all at startup):
80
+ - `references/cwv-thresholds.md`: Current Core Web Vitals thresholds and measurement details
81
+ - `references/schema-types.md`: All supported schema types with deprecation status
82
+ - `references/eeat-framework.md`: E-E-A-T evaluation criteria (Sept 2025 QRG update)
83
+ - `references/quality-gates.md`: Content length minimums, uniqueness thresholds
84
+ - `references/local-seo-signals.md`: Local ranking factors, review benchmarks, citation tiers, GBP status
85
+ - `references/local-schema-types.md`: LocalBusiness subtypes, industry-specific schema and citation sources
86
+
87
+ Maps-specific references (loaded by seo-maps skill, not at startup):
88
+ - `references/maps-geo-grid.md`, `references/maps-gbp-checklist.md`, `references/maps-api-endpoints.md`, `references/maps-free-apis.md`
89
+
90
+ ## Scoring Methodology
91
+
92
+ ### SEO Health Score (0-100)
93
+ Weighted aggregate of all categories:
94
+
95
+ | Category | Weight |
96
+ |----------|--------|
97
+ | Technical SEO | 22% |
98
+ | Content Quality | 23% |
99
+ | On-Page SEO | 20% |
100
+ | Schema / Structured Data | 10% |
101
+ | Performance (CWV) | 10% |
102
+ | AI Search Readiness | 10% |
103
+ | Images | 5% |
104
+
105
+ ### Priority Levels
106
+ - **Critical**: Blocks indexing or causes penalties (immediate fix required)
107
+ - **High**: Significantly impacts rankings (fix within 1 week)
108
+ - **Medium**: Optimization opportunity (fix within 1 month)
109
+ - **Low**: Nice to have (backlog)
110
+
111
+ ## Sub-Skills
112
+
113
+ This skill orchestrates 15 specialized sub-skills (+ 2 extensions):
114
+
115
+ 1. **seo-audit** -- Full website audit with skill delegation
116
+ 2. **seo-page** -- Deep single-page analysis
117
+ 3. **seo-technical** -- Technical SEO (9 categories)
118
+ 4. **seo-content** -- E-E-A-T and content quality
119
+ 5. **seo-schema** -- Schema markup detection and generation
120
+ 6. **seo-images** -- Image optimization
121
+ 7. **seo-sitemap** -- Sitemap analysis and generation
122
+ 8. **seo-geo** -- AI Overviews / GEO optimization
123
+ 9. **seo-plan** -- Strategic planning with templates
124
+ 10. **seo-programmatic** -- Programmatic SEO analysis and planning
125
+ 11. **seo-competitor-pages** -- Competitor comparison page generation
126
+ 12. **seo-hreflang** -- Hreflang/i18n SEO audit and generation
127
+ 13. **seo-local** -- Local SEO (GBP, NAP, citations, reviews, local schema, multi-location)
128
+ 14. **seo-maps** -- Maps intelligence (geo-grid, GBP audit, reviews, competitor radius)
129
+ 15. **seo-google** -- Google SEO APIs (GSC, PageSpeed, CrUX, Indexing API, GA4)
130
+ 16. **seo-dataforseo** -- Live SEO data via DataForSEO MCP (extension)
131
+ 17. **seo-image-gen** -- AI image generation for SEO assets via Gemini (extension)
132
+
133
+ ## Related Skills (for parallel analysis during audits)
134
+
135
+ - `seo-technical` -- Crawlability, indexability, security, CWV
136
+ - `seo-content` -- E-E-A-T, readability, thin content
137
+ - `seo-schema` -- Detection, validation, generation
138
+ - `seo-sitemap` -- Structure, coverage, quality gates
139
+ - `seo-geo` -- AI crawler access, llms.txt, citability, brand mention signals
140
+ - `seo-local` -- GBP signals, NAP consistency, reviews, local schema (conditional: activated when Local Service detected)
141
+ - `seo-maps` -- Geo-grid rank tracking, GBP audit, review intelligence, competitor radius (conditional: activated when Local Service detected AND DataForSEO MCP available)
142
+ - `seo-google` -- CWV field data, URL indexation status, organic traffic trends (conditional: activated when Google API credentials detected)
143
+ - `seo-dataforseo` -- Live SERP, keyword, backlink, local SEO data (extension, optional)
144
+ - `seo-image-gen` -- SEO image audit and generation plan (extension, optional)
145
+
146
+ ## Error Handling
147
+
148
+ | Scenario | Action |
149
+ |----------|--------|
150
+ | Unrecognized command | List available workflows from the Quick Reference table. Suggest the closest matching workflow. |
151
+ | URL unreachable | Report the error and suggest the user verify the URL. Do not attempt to guess site content. |
152
+ | Sub-skill fails during audit | Report partial results from successful sub-skills. Clearly note which sub-skill failed and why. Suggest re-running the failed sub-skill individually. |
153
+ | Ambiguous business type detection | Present the top two detected types with supporting signals. Ask the user to confirm before proceeding with industry-specific recommendations. |
@@ -0,0 +1,108 @@
1
+ <!-- Updated: 2026-02-07 -->
2
+ # Core Web Vitals Thresholds (February 2026)
3
+
4
+ ## Current Metrics
5
+
6
+ | Metric | Good | Needs Improvement | Poor |
7
+ |--------|------|-------------------|------|
8
+ | LCP (Largest Contentful Paint) | ≤2.5s | 2.5s–4.0s | >4.0s |
9
+ | INP (Interaction to Next Paint) | ≤200ms | 200ms–500ms | >500ms |
10
+ | CLS (Cumulative Layout Shift) | ≤0.1 | 0.1–0.25 | >0.25 |
11
+
12
+ ## Key Facts
13
+ - INP replaced FID (First Input Delay) on **March 12, 2024**. FID was fully removed from all Chrome tools (CrUX API, PageSpeed Insights, Lighthouse) on **September 9, 2024**. INP is the sole interactivity metric.
14
+ - Evaluation uses the **75th percentile** of real user data (field data from CrUX).
15
+ - Google assesses at the **page level** and the **origin level**.
16
+ - Core Web Vitals are a **tiebreaker** ranking signal: they matter most when content quality is similar between competitors.
17
+ - **Thresholds unchanged since original definitions**: ignore claims of "tightened thresholds" from SEO blogs.
18
+ - December 2025 core update appeared to weight **mobile CWV more heavily**.
19
+ - As of October 2025: **57.1%** desktop sites and **49.7%** mobile sites pass all three CWV.
20
+
21
+ ## LCP Subparts (February 2025 CrUX Addition)
22
+
23
+ LCP can now be broken into diagnostic subparts:
24
+
25
+ | Subpart | What It Measures | Target |
26
+ |---------|------------------|--------|
27
+ | **TTFB** | Time to First Byte (server response) | <800ms |
28
+ | **Resource Load Delay** | Time from TTFB to resource request start | Minimize |
29
+ | **Resource Load Time** | Time to download the LCP resource | Depends on size |
30
+ | **Element Render Delay** | Time from resource loaded to rendered | Minimize |
31
+
32
+ **Total LCP = TTFB + Resource Load Delay + Resource Load Time + Element Render Delay**
33
+
34
+ Use this breakdown to identify which phase is causing LCP issues.
35
+
36
+ ## Soft Navigations API (Experimental)
37
+
38
+ **Chrome 139+ Origin Trial (July 2025)**: First step toward measuring CWV in SPAs.
39
+
40
+ - Addresses the long-standing SPA measurement blind spot
41
+ - Currently experimental, **no ranking impact yet**
42
+ - Detects "soft navigations" (URL changes without full page load)
43
+ - May affect future SPA CWV measurement
44
+
45
+ **Detection:** Check for SPA frameworks (React, Vue, Angular, Svelte) and warn about current CWV measurement limitations.
46
+
47
+ ## Measurement Sources
48
+
49
+ ### Field Data (Real Users)
50
+ - Chrome User Experience Report (CrUX)
51
+ - PageSpeed Insights (uses CrUX data)
52
+ - Search Console Core Web Vitals report
53
+
54
+ ### Lab Data (Simulated)
55
+ - Lighthouse
56
+ - WebPageTest
57
+ - Chrome DevTools
58
+
59
+ > Field data is what Google uses for ranking. Lab data is useful for debugging.
60
+
61
+ ## Common Bottlenecks
62
+
63
+ ### LCP (Largest Contentful Paint)
64
+ - Unoptimized hero images (compress, use WebP/AVIF, add preload)
65
+ - Render-blocking CSS/JS (defer, async, critical CSS inlining)
66
+ - Slow server response (TTFB >200ms: use edge CDN, caching)
67
+ - Third-party script blocking (defer analytics, chat widgets)
68
+ - Web font loading delay (use font-display: swap + preload)
69
+
70
+ ### INP (Interaction to Next Paint)
71
+ - Long JavaScript tasks on main thread (break into smaller tasks <50ms)
72
+ - Heavy event handlers (debounce, use requestAnimationFrame)
73
+ - Excessive DOM size (>1,500 elements is concerning)
74
+ - Third-party scripts hijacking main thread
75
+ - Synchronous XHR or localStorage operations
76
+ - Layout thrashing (multiple forced reflows)
77
+
78
+ ### CLS (Cumulative Layout Shift)
79
+ - Images/iframes without width/height dimensions
80
+ - Dynamically injected content above existing content
81
+ - Web fonts causing layout shift (use font-display: swap + preload)
82
+ - Ads/embeds without reserved space
83
+ - Late-loading content pushing down the page
84
+
85
+ ## Optimization Priority
86
+
87
+ 1. **LCP**: Most impactful for perceived performance
88
+ 2. **CLS**: Most common issue affecting user experience
89
+ 3. **INP**: Matters most for interactive applications
90
+
91
+ ## Tools
92
+
93
+ ```bash
94
+ # PageSpeed Insights API
95
+ curl "https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=URL&key=API_KEY"
96
+
97
+ # Lighthouse CLI
98
+ npx lighthouse URL --output json --output-path report.json
99
+ ```
100
+
101
+ ## Performance Tooling Updates (2025)
102
+
103
+ - **Lighthouse 13.0** (October 2025): Major audit restructuring with reorganized performance categories and updated scoring weights. Lighthouse is a lab tool (simulated conditions): always cross-reference with CrUX field data for real-world performance.
104
+ - **CrUX Vis** replaced the CrUX Dashboard (November 2025). The old Looker Studio dashboard was deprecated. Use [CrUX Vis](https://cruxvis.withgoogle.com) or the CrUX API directly.
105
+ - **LCP subparts** added to CrUX (February 2025): Time to First Byte (TTFB), resource load delay, resource load time, and element render delay are now available as sub-components of LCP in CrUX data.
106
+ - **Google Search Console 2025 features** (December 2025): AI-powered configuration for automated analysis. Branded vs. non-branded queries filter. Hourly data available in API. Custom chart annotations. Social channels tracking.
107
+
108
+ > **Mobile-first indexing** is 100% complete as of July 5, 2024. Google now crawls and indexes ALL websites exclusively with the mobile Googlebot user-agent. Ensure your mobile version contains all critical content, structured data, and meta tags.
@@ -0,0 +1,214 @@
1
+ # E-E-A-T Evaluation Framework
2
+ ## Updated per Google Quality Rater Guidelines: September 11, 2025
3
+ ## Plus December 2025 Core Update Implications
4
+
5
+ ## Overview
6
+
7
+ E-E-A-T = **E**xperience, **E**xpertise, **A**uthoritativeness, **T**rustworthiness
8
+
9
+ Trustworthiness is the most important factor. It is assessed based on the
10
+ other three signals plus direct trust indicators.
11
+
12
+ ## CRITICAL: December 2025 Core Update
13
+
14
+ > **E-E-A-T now applies to ALL competitive queries, not just YMYL.**
15
+
16
+ The December 2025 core update was described as a "watershed moment" that:
17
+ - Extended E-E-A-T evaluation to virtually all competitive queries
18
+ - Made author attribution standards tighter across all categories
19
+ - Penalized anonymous or generic authorship even for non-YMYL content
20
+ - Significantly improved AI content quality detection
21
+
22
+ **Impact by industry:**
23
+ | Industry | Traffic Drops |
24
+ |----------|--------------|
25
+ | Affiliate sites | 71% average decline |
26
+ | Health/YMYL | 67% average decline |
27
+ | E-commerce | 52% average decline |
28
+
29
+ **Key takeaway:** Even entertainment and lifestyle content now requires demonstrated expertise. Generic content no longer ranks.
30
+
31
+ ## YMYL (Your Money or Your Life)
32
+
33
+ Topics requiring **highest** E-E-A-T standards (but E-E-A-T now matters everywhere):
34
+ - Health and safety
35
+ - Financial advice and transactions
36
+ - Legal information
37
+ - News and current events
38
+ - **Elections and civic trust** (added Sept 2025)
39
+ - **Democratic processes** (added Sept 2025)
40
+ - Groups of people (potential for harm)
41
+
42
+ ---
43
+
44
+ ## Experience (Weight: 20%)
45
+
46
+ First-hand knowledge and personal involvement with the topic.
47
+
48
+ ### Signals to Check
49
+ - [ ] Author has demonstrable first-hand experience with the topic
50
+ - [ ] Content includes original photos, screenshots, or data
51
+ - [ ] Case studies or real-world examples with specific details
52
+ - [ ] Personal process documentation or methodology descriptions
53
+ - [ ] Before/after results or outcome data
54
+ - [ ] Specific anecdotes that couldn't be fabricated
55
+
56
+ ### Scoring
57
+ - **Strong**: Multiple first-hand experience signals, original content
58
+ - **Moderate**: Some personal experience evident
59
+ - **Weak**: Generic information, no personal touch
60
+ - **None**: Clearly AI-generated or scraped content
61
+
62
+ ---
63
+
64
+ ## Expertise (Weight: 25%)
65
+
66
+ Formal qualifications, training, and demonstrated knowledge.
67
+
68
+ ### Signals to Check
69
+ - [ ] Author credentials relevant to topic (bio, certifications)
70
+ - [ ] Technical accuracy and depth appropriate for audience
71
+ - [ ] Claims supported by evidence or sources
72
+ - [ ] Specialized vocabulary used correctly
73
+ - [ ] Up-to-date with current developments in the field
74
+ - [ ] Byline with author name and credentials visible
75
+
76
+ ### Scoring
77
+ - **Strong**: Verified credentials, deep technical accuracy
78
+ - **Moderate**: Demonstrable knowledge, some credentials
79
+ - **Weak**: Surface-level information, no credentials
80
+ - **None**: Factual errors, misinformation
81
+
82
+ ---
83
+
84
+ ## Authoritativeness (Weight: 25%)
85
+
86
+ Recognition by others as a go-to source.
87
+
88
+ ### Signals to Check
89
+ - [ ] Site recognized as authority in its niche
90
+ - [ ] Author recognized as expert (external citations, speaking, publications)
91
+ - [ ] Content cited by other authoritative sources
92
+ - [ ] Industry awards, certifications, or accreditations
93
+ - [ ] Consistent publication history in the topic area
94
+ - [ ] Featured in reputable media outlets
95
+ - [ ] Professional affiliations
96
+
97
+ ### Scoring
98
+ - **Strong**: Widely recognized authority, cited by others
99
+ - **Moderate**: Growing recognition, some external validation
100
+ - **Weak**: No external recognition
101
+ - **None**: Negative reputation, known for misinformation
102
+
103
+ ---
104
+
105
+ ## Trustworthiness (Weight: 30%)
106
+
107
+ The most important factor, overall reliability and transparency.
108
+
109
+ ### Signals to Check
110
+ - [ ] Clear contact information (physical address, phone, email)
111
+ - [ ] Privacy policy and terms of service
112
+ - [ ] HTTPS with valid certificate
113
+ - [ ] Transparent about who creates content and why
114
+ - [ ] Customer reviews and testimonials
115
+ - [ ] Corrections and update history visible
116
+ - [ ] No deceptive practices (hidden ads, clickbait)
117
+ - [ ] Secure payment processing (for e-commerce)
118
+ - [ ] Return/refund policy visible
119
+
120
+ ### Scoring
121
+ - **Strong**: Full transparency, verified business, positive reputation
122
+ - **Moderate**: Good trust signals, minor gaps
123
+ - **Weak**: Missing key trust signals
124
+ - **None**: Deceptive practices, scam indicators
125
+
126
+ ---
127
+
128
+ ## September 2025 QRG Updates
129
+
130
+ ### AI Content Assessment
131
+ Raters now formally evaluate whether content appears AI-generated:
132
+ - AI content is **acceptable** if it demonstrates genuine E-E-A-T
133
+ - Low-quality AI content (generic, no unique value) is penalized
134
+ - The presence of AI-generated content is not inherently penalizing
135
+ - What matters: does the content provide unique value regardless of creation method?
136
+
137
+ ### Markers of Low-Quality AI Content
138
+ - Generic phrasing without specificity
139
+ - Lack of original insight or unique perspective
140
+ - No first-hand experience signals
141
+ - Factual inaccuracies
142
+ - Repetitive structure across multiple pages
143
+ - No author attribution or expertise signals
144
+
145
+ ### New Spam Categories
146
+ - **Expired domain abuse**: Buying expired domains for their backlinks
147
+ - **Site reputation abuse**: Using reputable site to host low-quality content
148
+ - **Scaled content abuse**: Mass-producing content without value
149
+
150
+ ### AI Overview Evaluation
151
+ Raters assess quality of AI-generated summaries in search results.
152
+
153
+ ### RSL 1.0 (Really Simple Licensing)
154
+ New machine-readable content licensing standard (December 2025) for AI training:
155
+ - Backed by: Reddit, Yahoo, Medium, Quora, Cloudflare, Akamai, Creative Commons
156
+ - Allows publishers to specify AI licensing terms
157
+ - Augments robots.txt for AI-specific permissions
158
+
159
+ ---
160
+
161
+ ## Experience Signals Are Critical Differentiators
162
+
163
+ The December 2025 update elevated the "Experience" dimension as a key differentiator:
164
+ - First-person narrative ("I tested this...", "In my experience...")
165
+ - Original photos and screenshots (not stock images)
166
+ - Specific examples with verifiable details
167
+ - Process documentation showing actual work done
168
+
169
+ **Why:** AI can generate expertise-sounding content but cannot fabricate genuine experience.
170
+
171
+ ---
172
+
173
+ ## Overall Scoring Guide
174
+
175
+ | Score | Description |
176
+ |-------|-------------|
177
+ | 90-100 | Exceptional E-E-A-T, authority site, recognized expert, full transparency |
178
+ | 70-89 | Strong E-E-A-T, demonstrated expertise, good trust signals |
179
+ | 50-69 | Moderate E-E-A-T, some signals, room for improvement |
180
+ | 30-49 | Weak E-E-A-T, minimal signals, significant gaps |
181
+ | 0-29 | Very low E-E-A-T, no visible signals, potential trust issues |
182
+
183
+ ---
184
+
185
+ ## Improvement Recommendations by Score
186
+
187
+ ### 0-29 (Critical)
188
+ 1. Add contact information and about page
189
+ 2. Establish author identity with credentials
190
+ 3. Implement HTTPS
191
+ 4. Remove deceptive elements
192
+
193
+ ### 30-49 (Major)
194
+ 1. Add author bios with credentials
195
+ 2. Include first-hand experience content
196
+ 3. Get external citations/mentions
197
+ 4. Add customer testimonials
198
+
199
+ ### 50-69 (Moderate)
200
+ 1. Deepen content with original research
201
+ 2. Build topical authority through content clusters
202
+ 3. Pursue industry recognition
203
+ 4. Document processes and methodologies
204
+
205
+ ### 70-89 (Minor)
206
+ 1. Maintain freshness with regular updates
207
+ 2. Expand author presence across platforms
208
+ 3. Pursue speaking/publication opportunities
209
+ 4. Add video/multimedia demonstrating expertise
210
+
211
+ ### 90-100 (Maintenance)
212
+ 1. Continue publishing high-quality content
213
+ 2. Monitor and respond to reputation issues
214
+ 3. Keep credentials and certifications current