{
  "ok": true,
  "generated_at": "2026-05-28T18:21:03.617Z",
  "checks": [
    "JSON-LD component presence",
    "word count floor",
    "semantic coverage floor",
    "rendered/prod-like image alt attributes",
    "canonical/og:url metadata",
    "sitemap inclusion",
    "thin /prompts/[slug] sitemap ban"
  ],
  "pages": [
    {
      "route": "/",
      "word_count": 1291,
      "exact_keyword_count": 8,
      "exact_keyword_density_pct": 0.62,
      "semantic_keyword_count": 156,
      "semantic_density_pct": 12.08,
      "expected_schema": [
        "WebApplication",
        "FAQPage",
        "BreadcrumbList"
      ],
      "source_schema_component": [
        "WebApplication",
        "FAQPage",
        "BreadcrumbList",
        "Article",
        "CollectionPage"
      ],
      "missing_expected_schema": [],
      "image_alt": {
        "img_count": 4,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/index.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/ai-photo-prompt-editor",
      "word_count": 1162,
      "exact_keyword_count": 10,
      "exact_keyword_density_pct": 0.86,
      "semantic_keyword_count": 140,
      "semantic_density_pct": 12.05,
      "expected_schema": [
        "WebApplication",
        "FAQPage"
      ],
      "source_schema_component": [
        "WebApplication",
        "FAQPage",
        "BreadcrumbList",
        "Article",
        "CollectionPage"
      ],
      "missing_expected_schema": [],
      "image_alt": {
        "img_count": 4,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/ai-photo-prompt-editor.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/chatgpt-photo-editing-prompts",
      "word_count": 1181,
      "exact_keyword_count": 12,
      "exact_keyword_density_pct": 1.02,
      "semantic_keyword_count": 143,
      "semantic_density_pct": 12.11,
      "expected_schema": [
        "Article",
        "FAQPage",
        "BreadcrumbList"
      ],
      "source_schema_component": [
        "WebApplication",
        "FAQPage",
        "BreadcrumbList",
        "Article",
        "CollectionPage"
      ],
      "missing_expected_schema": [],
      "image_alt": {
        "img_count": 3,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/chatgpt-photo-editing-prompts.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/ai-photo-editing-prompts",
      "word_count": 977,
      "exact_keyword_count": 6,
      "exact_keyword_density_pct": 0.61,
      "semantic_keyword_count": 114,
      "semantic_density_pct": 11.67,
      "expected_schema": [
        "CollectionPage",
        "FAQPage"
      ],
      "source_schema_component": [
        "WebApplication",
        "FAQPage",
        "BreadcrumbList",
        "Article",
        "CollectionPage"
      ],
      "missing_expected_schema": [],
      "image_alt": {
        "img_count": 5,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/ai-photo-editing-prompts.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/prompt-library",
      "word_count": 1344,
      "exact_keyword_count": 5,
      "exact_keyword_density_pct": 0.37,
      "semantic_keyword_count": 133,
      "semantic_density_pct": 9.9,
      "expected_schema": [
        "CollectionPage",
        "FAQPage"
      ],
      "source_schema_component": [
        "WebApplication",
        "FAQPage",
        "BreadcrumbList",
        "Article",
        "CollectionPage"
      ],
      "missing_expected_schema": [],
      "image_alt": {
        "img_count": 0,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/prompt-library.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/pricing",
      "title_len": 43,
      "description_len": 145,
      "image_alt": {
        "img_count": 1,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/pricing.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/privacy",
      "title_len": 43,
      "description_len": 147,
      "image_alt": {
        "img_count": 0,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/privacy.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/terms",
      "title_len": 40,
      "description_len": 144,
      "image_alt": {
        "img_count": 1,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/terms.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/cookie-policy",
      "title_len": 41,
      "description_len": 137,
      "image_alt": {
        "img_count": 0,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/cookie-policy.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/refund",
      "title_len": 40,
      "description_len": 156,
      "image_alt": {
        "img_count": 0,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/refund.html",
        "rendered_build_output": true
      },
      "failures": []
    },
    {
      "route": "/contact",
      "title_len": 40,
      "description_len": 137,
      "image_alt": {
        "img_count": 2,
        "img_missing_alt": 0,
        "missing_alt_imgs": [],
        "rendered_html_source": ".next/server/app/contact.html",
        "rendered_build_output": true
      },
      "failures": []
    }
  ],
  "failures": [],
  "waiver_notes": [
    "Exact primary-keyword density is not forced to 2.5%-3.6% when it would create keyword stuffing; semantic coverage must be >=2.5% and exact terms must remain visibly present.",
    "Raw Stitch images without alt are remediated by getRawDesignBody using data-alt or route fallback text, and seo:audit checks built/rendered HTML when available."
  ]
}