Skip to content

Simple guide · Public product

Page status: Active

NutsNews SEO Structured Data Audit

This update adds an automated production SEO audit for NutsNews.

Visual overview

Primary diagram

System map

This update adds an automated production SEO audit for NutsNews.

Render the repository-owned system map when you need it.

Diagram is not rendered yet.

View as text
NutsNews SEO Structured Data Audit

This update adds an automated production SEO audit for NutsNews.

flowchart TD
  accTitle: NutsNews SEO Structured Data Audit
  accDescr {
    This update adds an automated production SEO audit for NutsNews.
  }
  A[Audit starts in CLI or Actions] --> B[Validate homepage title, description, OG/Twitter fields]
  B --> C[Fetch sitemap index and article URLs]
  C --> D[Validate JSON-LD schema on homepage and article pages]
  D --> E[Write markdown + JSON reports to web/reports/seo]
  E --> F[Upload artifact in CI workflow]

NutsNews SEO Structured Data Audit

Fullscreen diagram view.

This update adds an automated production SEO audit for NutsNews.

The audit checks the live site for the core fields that matter before manually using Google Rich Results Test or Schema.org Validator:

  • homepage title and description
  • canonical URL
  • Open Graph title, description, and image
  • Twitter card image metadata
  • valid application/ld+json JSON-LD
  • homepage page-level schema
  • article page Article, NewsArticle, or BlogPosting schema
  • article headline, description, image, dates, publisher, and mainEntityOfPage
  • sitemap index traversal and article URL discovery

From the web app folder:

Terminal window
cd web
npm run audit:seo

Audit a different public URL:

Terminal window
SEO_AUDIT_BASE_URL="https://www.nutsnews.com" npm run audit:seo

Audit more article URLs:

Terminal window
SEO_AUDIT_ARTICLE_LIMIT=5 npm run audit:seo

Optionally include static pages:

Terminal window
SEO_AUDIT_EXTRA_PATHS="/privacy,/contact" npm run audit:seo

Reports are written to:

web/reports/seo/seo-structured-data-audit.md
web/reports/seo/seo-structured-data-audit.json

The audit checks /sitemap-index.xml first and follows same-origin sitemap entries, including article sitemap shards. It falls back to /sitemap.xml for compatibility with older deployments. Traversal is capped so a bad sitemap index cannot turn the audit into an unbounded crawl.

The workflow lives at:

.github/workflows/seo-structured-data.yml

It runs on:

  • push to main
  • pull requests
  • manual dispatch
  • daily schedule at 10:30 UTC

The workflow audits the live production site by default:

https://www.nutsnews.com

It uploads the report as a GitHub Actions artifact.

Google Rich Results Test and Schema.org Validator are still useful manual checks. This workflow does not replace those tools completely, but it catches the common NutsNews SEO regressions automatically before they sit unnoticed in production.