{
  "crawler": {
    "command": "siteone-crawler --url=http://127.0.0.1:4319/ --workers=1 --max-reqs-per-sec=2 --max-visited-urls=30 --no-color --output-json-file=siteone.json --output-html-report=siteone.html --output-text-file=siteone.txt",
    "executedAt": "2026-09-29 01:43:10",
    "finalUserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/26.0.0.0 Safari/537.36 SiteOne-Crawler/2.5.1.20260627",
    "hostname": "MacBook-Pro.local",
    "name": "SiteOne Crawler",
    "version": "2.5.1.20260627"
  },
  "extraColumnsFromAnalysis": [
    {
      "customGroup": null,
      "customMethod": null,
      "customPattern": null,
      "length": 8,
      "name": "Access.",
      "truncate": false
    },
    {
      "customGroup": null,
      "customMethod": null,
      "customPattern": null,
      "length": 8,
      "name": "Best pr.",
      "truncate": false
    }
  ],
  "options": {
    "acceptEncoding": "gzip, deflate, br",
    "acceptInvalidCerts": false,
    "addHostToOutputFile": false,
    "addRandomQueryParams": false,
    "addTimestampToOutputFile": false,
    "aiActions": [
      "seo",
      "typos",
      "summary"
    ],
    "aiApiKey": null,
    "aiApiKeyEnv": null,
    "aiApiKeyFile": null,
    "aiCacheDir": "[local-workspace]/public/research/2026-09-seo-audit/tmp/ai-cache",
    "aiDryRun": false,
    "aiEndpoint": null,
    "aiExclude": [],
    "aiExtraBody": null,
    "aiInclude": [],
    "aiLanguage": null,
    "aiMaxConcurrency": 4,
    "aiMaxPages": 100,
    "aiMaxReqsPerSec": null,
    "aiMaxTokens": 32000,
    "aiModel": null,
    "aiPrompt": null,
    "aiPromptFile": null,
    "aiProvider": "openai-compatible",
    "aiSeoAffectsScore": false,
    "aiSynthesisExtraBody": null,
    "aiTemperature": 0.0,
    "aiTimeout": 180,
    "aiUseMaxCompletionTokens": false,
    "allowedDomainsForCrawling": [],
    "allowedDomainsForExternalFiles": [],
    "analyzerFilterRegex": null,
    "browserAutoDownload": false,
    "browserHeadful": false,
    "browserNoSandbox": false,
    "browserPath": null,
    "browserRenderAll": false,
    "browserTimeout": 30,
    "browserWait": "networkidle",
    "browserWaitExtraMs": 0,
    "browserWorkers": 3,
    "ci": false,
    "ciBaseline": null,
    "ciFailOnCode": [],
    "ciGithubAnnotations": false,
    "ciIgnoreCode": [],
    "ciJunitFile": null,
    "ciMax404": 0,
    "ciMax5xx": 0,
    "ciMaxAvgResponse": null,
    "ciMaxCriticals": 0,
    "ciMaxScoreDrop": null,
    "ciMaxWarnings": null,
    "ciMinAccessibility": 3.0,
    "ciMinAssets": 10,
    "ciMinBestPractices": 5.0,
    "ciMinDocuments": 0,
    "ciMinPages": 10,
    "ciMinPerformance": 5.0,
    "ciMinScore": 5.0,
    "ciMinSecurity": 5.0,
    "ciMinSeo": 5.0,
    "consoleMaxMessages": 100,
    "consoleMsgMaxChars": 200,
    "consoleTotalMaxKb": 128,
    "consoleWidth": null,
    "debug": false,
    "debugLogFile": null,
    "debugUrlRegex": [],
    "device": "desktop",
    "disableAllAssets": false,
    "disableAstroInlineModules": false,
    "disableFiles": false,
    "disableFonts": false,
    "disableImages": false,
    "disableJavascript": false,
    "disableStyles": false,
    "doNotTruncateUrl": false,
    "extraColumns": [],
    "extraColumnsNamesOnly": [],
    "fastestMaxTime": 1.0,
    "fastestTopLimit": 20,
    "forceColor": false,
    "forceRelativeUrls": false,
    "hideColumns": [],
    "hideProgressBar": false,
    "htmlReportOptions": null,
    "htmlToMarkdownFile": null,
    "htmlToMarkdownOutput": null,
    "httpAuth": null,
    "httpCacheCompression": false,
    "httpCacheDir": "<workstation-home>/Library/Caches/siteone-crawler/http-cache",
    "httpCacheTtl": 86400,
    "ignoreHtmlComments": false,
    "ignoreRegex": [],
    "ignoreRobotsTxt": false,
    "ignoreStoreFileError": false,
    "includeRegex": [],
    "keepQueryParams": [],
    "mailFrom": "siteone-crawler@your-hostname.com",
    "mailFromName": "SiteOne Crawler",
    "mailSmtpHost": "localhost",
    "mailSmtpPass": null,
    "mailSmtpPort": 25,
    "mailSmtpUser": null,
    "mailSubjectTemplate": "Crawler Report for %domain% (%date%)",
    "mailTo": [],
    "markdownDisableFiles": false,
    "markdownDisableImages": false,
    "markdownExcludeSelector": [],
    "markdownExportDir": null,
    "markdownExportSingleFile": null,
    "markdownExportStoreOnlyUrlRegex": [],
    "markdownIgnoreStoreFileError": false,
    "markdownMoveContentBeforeH1ToEnd": false,
    "markdownRemoveLinksAndImagesFromSingleFile": false,
    "markdownReplaceContent": [],
    "markdownReplaceQueryString": [],
    "maxDepth": 0,
    "maxHeadingLevel": 3,
    "maxNon200ResponsesPerBasename": 5,
    "maxQueueLength": 9000,
    "maxReqsPerSec": 2.0,
    "maxSkippedUrls": 10000,
    "maxUrlLength": 2083,
    "maxVisitedUrls": 30,
    "memoryLimit": "2048M",
    "noColor": true,
    "offlineExportDir": null,
    "offlineExportLowercase": false,
    "offlineExportNoAutoRedirectHtml": false,
    "offlineExportNoUrlRewriting": false,
    "offlineExportPreserveUrlStructure": false,
    "offlineExportPreserveUrls": false,
    "offlineExportRemoveUnwantedCode": true,
    "offlineExportStoreOnlyUrlRegex": [],
    "outputHtmlReport": "[local-workspace]/public/research/2026-09-seo-audit/siteone.html",
    "outputJsonFile": "[local-workspace]/public/research/2026-09-seo-audit/siteone.json",
    "outputTextFile": "[local-workspace]/public/research/2026-09-seo-audit/siteone.txt",
    "outputType": "text",
    "proxy": null,
    "regexFilteringOnlyForPages": false,
    "removeAllAnchorListeners": false,
    "removeQueryParams": false,
    "replaceContent": [],
    "replaceQueryString": [],
    "resolve": [],
    "resultStorage": "memory",
    "resultStorageCompression": false,
    "resultStorageDir": "[local-workspace]/public/research/2026-09-seo-audit/tmp/result-storage",
    "rowsLimit": 200,
    "screenshotFormat": "png",
    "screenshotMode": "viewport",
    "screenshotQuality": 80,
    "screenshotViewport": "1920x1080",
    "screenshots": false,
    "screenshotsDir": null,
    "serveBindAddress": "127.0.0.1",
    "serveMarkdownDir": null,
    "serveOfflineDir": null,
    "servePort": 8321,
    "showHelpOnly": false,
    "showInlineCriticals": false,
    "showInlineWarnings": false,
    "showSchemeAndHost": false,
    "showVersionOnly": false,
    "singleForeignPage": false,
    "singlePage": false,
    "sitemapBasePriority": 0.5,
    "sitemapPriorityIncrease": 0.1,
    "sitemapTxtFile": null,
    "sitemapXmlFile": null,
    "slowestMaxTime": 3.0,
    "slowestMinTime": 0.01,
    "slowestTopLimit": 20,
    "timeout": 5,
    "timezone": null,
    "transformUrl": [],
    "uploadEnabled": false,
    "uploadPassword": null,
    "uploadRetention": "30d",
    "uploadTimeout": 3600,
    "uploadTo": "https://crawler.siteone.io/up",
    "url": "http://127.0.0.1:4319/",
    "urlColumnSize": null,
    "urlList": null,
    "urlListUrls": [],
    "userAgent": null,
    "websocketServer": null,
    "workers": 1
  },
  "qualityScores": {
    "categories": [
      {
        "code": "performance",
        "deductions": [],
        "label": "Excellent",
        "name": "Performance",
        "score": 10.0,
        "weight": 0.2
      },
      {
        "code": "seo",
        "deductions": [
          {
            "fix": "Give every page a unique, descriptive <title> (avoid reusing the same title across pages).",
            "points": 0.3,
            "reason": "Non-unique page titles detected"
          },
          {
            "fix": "Write a unique meta description per page summarizing its content (~50-160 chars).",
            "points": 0.3,
            "reason": "Non-unique meta descriptions detected"
          },
          {
            "fix": "Fix or redirect the broken links causing 404s (see the 404 table for source pages).",
            "points": 1.0,
            "reason": "2 page(s) returned 404"
          },
          {
            "fix": "Link directly to final URLs to avoid redirect hops (update internal links to the canonical target).",
            "points": 0.2,
            "reason": "1 redirect(s) found"
          },
          {
            "fix": "Add a unique, descriptive <title> to every indexable page.",
            "points": 0.5,
            "reason": "1 page(s) without a <title>"
          }
        ],
        "label": "Good",
        "name": "SEO",
        "score": 7.7,
        "weight": 0.2
      },
      {
        "code": "security",
        "deductions": [
          {
            "fix": "Add the missing security headers (CSP, HSTS, X-Content-Type-Options) and harden cookies (Secure/HttpOnly/SameSite).",
            "points": 2.5,
            "reason": "8 page(s) with critical security findings"
          }
        ],
        "label": "Good",
        "name": "Security",
        "score": 7.5,
        "weight": 0.25
      },
      {
        "code": "accessibility",
        "deductions": [],
        "label": "Excellent",
        "name": "Accessibility",
        "score": 10.0,
        "weight": 0.2
      },
      {
        "code": "best-practices",
        "deductions": [
          {
            "fix": "Enable Brotli (or at least gzip) compression for text assets on the server/CDN.",
            "points": 0.5,
            "reason": "No Brotli compression support"
          },
          {
            "fix": "Serve images in a modern format (WebP or AVIF) for better compression.",
            "points": 0.3,
            "reason": "No WebP image support"
          },
          {
            "fix": "Consider AVIF for the best image compression (alongside or instead of WebP).",
            "points": 0.1,
            "reason": "No AVIF image support"
          }
        ],
        "label": "Excellent",
        "name": "Best Practices",
        "score": 9.1,
        "weight": 0.15
      }
    ],
    "overall": {
      "code": "overall",
      "deductions": [],
      "label": "Good",
      "name": "Overall",
      "score": 8.8,
      "weight": 1.0
    }
  },
  "results": [
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.001,
      "extras": [],
      "size": 994,
      "status": "200",
      "type": 1,
      "url": "http://127.0.0.1:4319/"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.001,
      "extras": [],
      "size": 580,
      "status": "200",
      "type": 1,
      "url": "http://127.0.0.1:4319/duplicate-b"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.001,
      "extras": [],
      "size": 589,
      "status": "200",
      "type": 1,
      "url": "http://127.0.0.1:4319/noindex"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.001,
      "extras": [],
      "size": 650,
      "status": "200",
      "type": 1,
      "url": "http://127.0.0.1:4319/healthy"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.004,
      "extras": [],
      "size": 580,
      "status": "200",
      "type": 1,
      "url": "http://127.0.0.1:4319/duplicate-a"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.002,
      "extras": [],
      "size": 38,
      "status": "404",
      "type": 7,
      "url": "http://127.0.0.1:4319/gone"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.002,
      "extras": [],
      "size": 455,
      "status": "200",
      "type": 1,
      "url": "http://127.0.0.1:4319/missing-description"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.001,
      "extras": [],
      "size": 529,
      "status": "200",
      "type": 1,
      "url": "http://127.0.0.1:4319/missing-title"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.001,
      "extras": [],
      "size": 538,
      "status": "200",
      "type": 1,
      "url": "http://127.0.0.1:4319/final"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.001,
      "extras": [],
      "size": 77,
      "status": "301",
      "type": 9,
      "url": "http://127.0.0.1:4319/old-url"
    },
    {
      "cacheLifetime": null,
      "cacheTypeFlags": 32768,
      "elapsedTime": 0.001,
      "extras": [],
      "size": 38,
      "status": "404",
      "type": 7,
      "url": "http://127.0.0.1:4319/missing-image.svg"
    }
  ],
  "stats": {
    "countByStatus": {
      "200": 8,
      "301": 1,
      "404": 2
    },
    "totalExecutionTime": 6.799,
    "totalRequestsTimes": 0.015,
    "totalRequestsTimesAvg": 0.001,
    "totalRequestsTimesMax": 0.004,
    "totalRequestsTimesMin": 0.001,
    "totalRequestsTimesP90": 0.002,
    "totalSize": 5068,
    "totalSizeFormatted": "5 kB",
    "totalUrls": 11
  },
  "summary": {
    "items": [
      {
        "aplCode": "dns",
        "status": "CRITICAL",
        "text": "Problem with DNS analysis: Unable to resolve DNS records for 127.0.0.1"
      },
      {
        "aplCode": "security",
        "status": "CRITICAL",
        "text": "Security - 8 pages(s) with critical finding(s)."
      },
      {
        "aplCode": "seo-title-missing",
        "status": "WARNING",
        "text": "1 page(s) without a <title>"
      },
      {
        "aplCode": "title-uniqueness",
        "status": "WARNING",
        "text": "The title 'Shared title for duplicate detection' exceeds the allowed 10% duplicity. 28% of pages have this same title."
      },
      {
        "aplCode": "meta-description-uniqueness",
        "status": "WARNING",
        "text": "The description 'A deliberately small test page for checking how different SEO tools report known defects.' exceeds the allowed 10% duplicity. 87% of pages have this same description."
      },
      {
        "aplCode": "brotli-support",
        "status": "WARNING",
        "text": "8 page(s) do not support Brotli compression."
      },
      {
        "aplCode": "webp-support",
        "status": "WARNING",
        "text": "No WebP image found on the website."
      },
      {
        "aplCode": "avif-support",
        "status": "WARNING",
        "text": "No AVIF image found on the website."
      },
      {
        "aplCode": "robots-txt-127.0.0.1",
        "status": "NOTICE",
        "text": "Loaded robots.txt for domain '127.0.0.1': status code 200, size 77 B and took 6 ms."
      },
      {
        "aplCode": "redirects",
        "status": "NOTICE",
        "text": "Redirects - 1 redirect(s) found"
      },
      {
        "aplCode": "404",
        "status": "NOTICE",
        "text": "404 NOTICE - 2 non-existent page(s) found"
      },
      {
        "aplCode": "ssl-tls-analyzer",
        "status": "NOTICE",
        "text": "SSL/TLS not supported, analyzer skipped."
      },
      {
        "aplCode": "seo-meta-description-missing",
        "status": "NOTICE",
        "text": "1 page(s) without a meta description"
      },
      {
        "aplCode": "seo-noindex",
        "status": "NOTICE",
        "text": "1 page(s) are marked noindex (excluded from on-page SEO checks)"
      },
      {
        "aplCode": "skipped",
        "status": "OK",
        "text": "Skipped URLs - no skipped URLs found"
      },
      {
        "aplCode": "external-urls",
        "status": "OK",
        "text": "External URLs - no external URLs found"
      },
      {
        "aplCode": "slowUrls",
        "status": "OK",
        "text": "Performance OK - all non-media URLs are faster than 3 seconds"
      },
      {
        "aplCode": "seo-canonical-missing",
        "status": "OK",
        "text": "All indexable pages declare a canonical URL"
      },
      {
        "aplCode": "unique-headers",
        "status": "OK",
        "text": "HTTP headers - found 5 unique headers"
      },
      {
        "aplCode": "pages-with-missing-quotes",
        "status": "OK",
        "text": "All pages have quoted attributes"
      },
      {
        "aplCode": "pages-with-large-svgs",
        "status": "OK",
        "text": "All pages have inline SVGs smaller than 5120 bytes"
      },
      {
        "aplCode": "pages-with-duplicated-svgs",
        "status": "OK",
        "text": "All pages have inline SVGs with less than 5 duplicates"
      },
      {
        "aplCode": "pages-with-invalid-svgs",
        "status": "OK",
        "text": "All pages have valid or none inline SVGs"
      },
      {
        "aplCode": "pages-with-multiple-h1",
        "status": "OK",
        "text": "All pages without multiple <h1> headings"
      },
      {
        "aplCode": "pages-without-h1",
        "status": "OK",
        "text": "All pages have <h1> heading"
      },
      {
        "aplCode": "pages-with-skipped-heading-levels",
        "status": "OK",
        "text": "All pages have heading structure without skipped levels"
      },
      {
        "aplCode": "pages-with-deep-dom",
        "status": "OK",
        "text": "All pages have DOM depth less than 30"
      },
      {
        "aplCode": "pages-with-non-clickable-phone-numbers",
        "status": "OK",
        "text": "All pages have clickable (interactive) phone numbers"
      },
      {
        "aplCode": "pages-with-invalid-html",
        "status": "OK",
        "text": "No HTML structural issues found"
      },
      {
        "aplCode": "pages-without-image-alt-attributes",
        "status": "OK",
        "text": "All pages have image alt attributes"
      },
      {
        "aplCode": "pages-without-form-labels",
        "status": "OK",
        "text": "All pages have form labels"
      },
      {
        "aplCode": "pages-without-aria-labels",
        "status": "OK",
        "text": "All links/buttons have an accessible name"
      },
      {
        "aplCode": "pages-without-main-landmark",
        "status": "OK",
        "text": "All pages expose a main landmark"
      },
      {
        "aplCode": "pages-without-lang",
        "status": "OK",
        "text": "All pages have lang attribute"
      },
      {
        "aplCode": "pages-weight-exceeded",
        "status": "OK",
        "text": "All pages are within the page-weight budget"
      },
      {
        "aplCode": "export-to-html",
        "status": "INFO",
        "text": "HTML report saved to '[local-workspace]/public/research/2026-09-seo-audit/siteone.html' and took 0 ms"
      }
    ]
  },
  "tables": {
    "404": {
      "aplCode": "404",
      "columns": {
        "sourceUqId": {
          "aplCode": "sourceUqId",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Found at URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 61
        },
        "statusCode": {
          "aplCode": "statusCode",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "url": {
          "aplCode": "url",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "URL 404",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 61
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "sourceUqId": "http://127.0.0.1:4319/",
          "statusCode": "404",
          "url": "http://127.0.0.1:4319/gone"
        },
        {
          "sourceUqId": "http://127.0.0.1:4319/healthy",
          "statusCode": "404",
          "url": "http://127.0.0.1:4319/missing-image.svg"
        }
      ],
      "title": "404 URLs"
    },
    "accessibility": {
      "aplCode": "accessibility",
      "columns": {
        "analysisName": {
          "aplCode": "analysisName",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Analysis name",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "critical": {
          "aplCode": "critical",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Critical",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 8
        },
        "notice": {
          "aplCode": "notice",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Notice",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "ok": {
          "aplCode": "ok",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "OK",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "warning": {
          "aplCode": "warning",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Warning",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 7
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "analysisName": "HTML structural issues",
          "critical": "0",
          "notice": "0",
          "ok": "8",
          "warning": "0"
        },
        {
          "analysisName": "Missing image alt attributes",
          "critical": "0",
          "notice": "0",
          "ok": "1",
          "warning": "0"
        },
        {
          "analysisName": "Missing main landmark",
          "critical": "0",
          "notice": "0",
          "ok": "1",
          "warning": "0"
        },
        {
          "analysisName": "Unnamed links/buttons",
          "critical": "0",
          "notice": "0",
          "ok": "1",
          "warning": "0"
        },
        {
          "analysisName": "Missing html lang attribute",
          "critical": "0",
          "notice": "0",
          "ok": "1",
          "warning": "0"
        }
      ],
      "title": "Accessibility"
    },
    "analysis-stats": {
      "aplCode": "analysis-stats",
      "columns": {
        "classAndMethod": {
          "aplCode": "classAndMethod",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Class::method",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "execCount": {
          "aplCode": "execCount",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Exec count",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "execTime": {
          "aplCode": "execTime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Exec time",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 9
        }
      },
      "position": "after-url-table",
      "rows": [
        {
          "classAndMethod": "SeoAndOpenGraphAnalyzer::analyzeHeadings",
          "execCount": "1",
          "execTime": "0.001750084",
          "execTimeFormatted": "1 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkNonClickablePhoneNumbers",
          "execCount": "8",
          "execTime": "0.001510501",
          "execTimeFormatted": "1 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkMissingQuotesOnAttributes",
          "execCount": "8",
          "execTime": "0.00035120799999999993",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkHeadingStructure",
          "execCount": "8",
          "execTime": "0.000269501",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkMaxDOMDepth",
          "execCount": "8",
          "execTime": "0.00022271000000000001",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "AccessibilityAnalyzer::checkImageAltAttributes",
          "execCount": "8",
          "execTime": "0.000180666",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkInlineSvg",
          "execCount": "8",
          "execTime": "0.000165541",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "SeoAndOpenGraphAnalyzer::analyzeSeo",
          "execCount": "1",
          "execTime": "0.00016525",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "SecurityAnalyzer::checkHeaders",
          "execCount": "8",
          "execTime": "0.000153417",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "AccessibilityAnalyzer::checkMissingAriaLabels",
          "execCount": "8",
          "execTime": "0.00014891699999999998",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "AccessibilityAnalyzer::checkMissingLabels",
          "execCount": "8",
          "execTime": "0.000123957",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "AccessibilityAnalyzer::checkHtmlStructure",
          "execCount": "8",
          "execTime": "0.00008416700000000001",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkMetaDescriptionUniqueness",
          "execCount": "1",
          "execTime": "0.000042917",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkTitleUniqueness",
          "execCount": "1",
          "execTime": "0.000036375",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "AccessibilityAnalyzer::checkMissingLang",
          "execCount": "8",
          "execTime": "0.000026416",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "SeoAndOpenGraphAnalyzer::analyzeOpenGraph",
          "execCount": "1",
          "execTime": "0.00002275",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "AccessibilityAnalyzer::checkMissingRoles",
          "execCount": "8",
          "execTime": "0.000020625",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "SeoAndOpenGraphAnalyzer::emitSeoQualityFindings",
          "execCount": "1",
          "execTime": "0.00001225",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkBrotliSupport",
          "execCount": "1",
          "execTime": "0.000002292",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkAvifSupport",
          "execCount": "1",
          "execTime": "0.000001709",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "BestPracticeAnalyzer::checkWebpSupport",
          "execCount": "1",
          "execTime": "0.000001125",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "SecurityAnalyzer::checkHtmlSecurity",
          "execCount": "8",
          "execTime": "0.000000248",
          "execTimeFormatted": "0 ms"
        }
      ],
      "title": "Analysis stats"
    },
    "best-practices": {
      "aplCode": "best-practices",
      "columns": {
        "analysisName": {
          "aplCode": "analysisName",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Analysis name",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "critical": {
          "aplCode": "critical",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Critical",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 8
        },
        "notice": {
          "aplCode": "notice",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Notice",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "ok": {
          "aplCode": "ok",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "OK",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "warning": {
          "aplCode": "warning",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Warning",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 7
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "analysisName": "Heading structure",
          "critical": "0",
          "notice": "0",
          "ok": "16",
          "warning": "0"
        },
        {
          "analysisName": "DOM depth",
          "critical": "0",
          "notice": "0",
          "ok": "8",
          "warning": "0"
        },
        {
          "analysisName": "Title uniqueness",
          "critical": "0",
          "notice": "0",
          "ok": "5",
          "warning": "1"
        },
        {
          "analysisName": "Description uniqueness",
          "critical": "0",
          "notice": "0",
          "ok": "1",
          "warning": "1"
        },
        {
          "analysisName": "Brotli support",
          "critical": "0",
          "notice": "0",
          "ok": "0",
          "warning": "8"
        },
        {
          "analysisName": "WebP support",
          "critical": "0",
          "notice": "0",
          "ok": "0",
          "warning": "1"
        },
        {
          "analysisName": "AVIF support",
          "critical": "0",
          "notice": "0",
          "ok": "0",
          "warning": "1"
        }
      ],
      "title": "Best practices"
    },
    "caching-per-content-type": {
      "aplCode": "caching-per-content-type",
      "columns": {
        "avgLifetime": {
          "aplCode": "avgLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "AVG lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "cacheType": {
          "aplCode": "cacheType",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Cache type",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 12
        },
        "contentType": {
          "aplCode": "contentType",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Content type",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 12
        },
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "URLs",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "maxLifetime": {
          "aplCode": "maxLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "MAX lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "minLifetime": {
          "aplCode": "minLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "MIN lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "avgLifetime": "",
          "cacheType": "No cache headers",
          "contentType": "HTML",
          "count": "8",
          "maxLifetime": "",
          "minLifetime": ""
        },
        {
          "avgLifetime": "",
          "cacheType": "No cache headers",
          "contentType": "Document",
          "count": "2",
          "maxLifetime": "",
          "minLifetime": ""
        },
        {
          "avgLifetime": "",
          "cacheType": "No cache headers",
          "contentType": "Redirect",
          "count": "1",
          "maxLifetime": "",
          "minLifetime": ""
        }
      ],
      "title": "HTTP Caching by content type (only from crawlable domains)"
    },
    "caching-per-domain": {
      "aplCode": "caching-per-domain",
      "columns": {
        "avgLifetime": {
          "aplCode": "avgLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "AVG lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "cacheType": {
          "aplCode": "cacheType",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Cache type",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 12
        },
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "URLs",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "domain": {
          "aplCode": "domain",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Domain",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 20
        },
        "maxLifetime": {
          "aplCode": "maxLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "MAX lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "minLifetime": {
          "aplCode": "minLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "MIN lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "avgLifetime": "",
          "cacheType": "No cache headers",
          "count": "11",
          "domain": "127.0.0.1",
          "maxLifetime": "",
          "minLifetime": ""
        }
      ],
      "title": "HTTP Caching by domain"
    },
    "caching-per-domain-and-content-type": {
      "aplCode": "caching-per-domain-and-content-type",
      "columns": {
        "avgLifetime": {
          "aplCode": "avgLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "AVG lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "cacheType": {
          "aplCode": "cacheType",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Cache type",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 12
        },
        "contentType": {
          "aplCode": "contentType",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Content type",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 12
        },
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "URLs",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "domain": {
          "aplCode": "domain",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Domain",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 20
        },
        "maxLifetime": {
          "aplCode": "maxLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "MAX lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "minLifetime": {
          "aplCode": "minLifetime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "MIN lifetime",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "avgLifetime": "",
          "cacheType": "No cache headers",
          "contentType": "HTML",
          "count": "8",
          "domain": "127.0.0.1",
          "maxLifetime": "",
          "minLifetime": ""
        },
        {
          "avgLifetime": "",
          "cacheType": "No cache headers",
          "contentType": "Document",
          "count": "2",
          "domain": "127.0.0.1",
          "maxLifetime": "",
          "minLifetime": ""
        },
        {
          "avgLifetime": "",
          "cacheType": "No cache headers",
          "contentType": "Redirect",
          "count": "1",
          "domain": "127.0.0.1",
          "maxLifetime": "",
          "minLifetime": ""
        }
      ],
      "title": "HTTP Caching by domain and content type"
    },
    "content-processors-stats": {
      "aplCode": "content-processors-stats",
      "columns": {
        "classAndMethod": {
          "aplCode": "classAndMethod",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Class::method",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "execCount": {
          "aplCode": "execCount",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Exec count",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "execTime": {
          "aplCode": "execTime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Exec time",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 9
        }
      },
      "position": "after-url-table",
      "rows": [
        {
          "classAndMethod": "HtmlProcessor::findUrls",
          "execCount": "9",
          "execTime": "0.006112626000000001",
          "execTimeFormatted": "6 ms"
        },
        {
          "classAndMethod": "CssProcessor::findUrls",
          "execCount": "8",
          "execTime": "0.000178418",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "AstroProcessor::findUrls",
          "execCount": "8",
          "execTime": "0.000055169000000000007",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "NextJsProcessor::findUrls",
          "execCount": "8",
          "execTime": "0.000034541",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "NextJsProcessor::applyContentChangesBeforeUrlParsing",
          "execCount": "8",
          "execTime": "0.000028541999999999995",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "JavaScriptProcessor::findUrls",
          "execCount": "8",
          "execTime": "0.0000064589999999999995",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "AstroProcessor::applyContentChangesBeforeUrlParsing",
          "execCount": "8",
          "execTime": "0.000001916",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "JavaScriptProcessor::applyContentChangesBeforeUrlParsing",
          "execCount": "8",
          "execTime": "0.000000959",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "HtmlProcessor::applyContentChangesBeforeUrlParsing",
          "execCount": "9",
          "execTime": "0.0000003749999999999999",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "SvelteProcessor::applyContentChangesBeforeUrlParsing",
          "execCount": "8",
          "execTime": "0.000000251",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "SvelteProcessor::findUrls",
          "execCount": "8",
          "execTime": "0.000000251",
          "execTimeFormatted": "0 ms"
        },
        {
          "classAndMethod": "CssProcessor::applyContentChangesBeforeUrlParsing",
          "execCount": "8",
          "execTime": "0.00000020700000000000001",
          "execTimeFormatted": "0 ms"
        }
      ],
      "title": "Content processor stats"
    },
    "content-types": {
      "aplCode": "content-types",
      "columns": {
        "avgTime": {
          "aplCode": "avgTime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Avg time",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 8
        },
        "contentType": {
          "aplCode": "contentType",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Content type",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 12
        },
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "URLs",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "status20x": {
          "aplCode": "status20x",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status 20x",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "status30x": {
          "aplCode": "status30x",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status 30x",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "status40x": {
          "aplCode": "status40x",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status 40x",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "totalSize": {
          "aplCode": "totalSize",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Total size",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "totalTime": {
          "aplCode": "totalTime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Total time",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "avgTime": "0.0013",
          "contentType": "HTML",
          "count": "8",
          "status20x": "8",
          "status30x": "0",
          "status40x": "0",
          "totalSize": "4915",
          "totalTime": "0.0107"
        },
        {
          "avgTime": "0.0016",
          "contentType": "Document",
          "count": "2",
          "status20x": "0",
          "status30x": "0",
          "status40x": "2",
          "totalSize": "76",
          "totalTime": "0.0032"
        },
        {
          "avgTime": "0.0008",
          "contentType": "Redirect",
          "count": "1",
          "status20x": "0",
          "status30x": "1",
          "status40x": "0",
          "totalSize": "77",
          "totalTime": "0.0008"
        }
      ],
      "title": "Content types"
    },
    "content-types-raw": {
      "aplCode": "content-types-raw",
      "columns": {
        "avgTime": {
          "aplCode": "avgTime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Avg time",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 8
        },
        "contentType": {
          "aplCode": "contentType",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Content type",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 26
        },
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "URLs",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "status20x": {
          "aplCode": "status20x",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status 20x",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "status30x": {
          "aplCode": "status30x",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status 30x",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "status40x": {
          "aplCode": "status40x",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status 40x",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "totalSize": {
          "aplCode": "totalSize",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Total size",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "totalTime": {
          "aplCode": "totalTime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Total time",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "avgTime": "0.0013",
          "contentType": "text/html; charset=utf-8",
          "count": "8",
          "status20x": "8",
          "status30x": "0",
          "status40x": "0",
          "totalSize": "4915",
          "totalTime": "0.0107"
        },
        {
          "avgTime": "0.0016",
          "contentType": "text/plain",
          "count": "2",
          "status20x": "0",
          "status30x": "0",
          "status40x": "2",
          "totalSize": "76",
          "totalTime": "0.0032"
        },
        {
          "avgTime": "0.0008",
          "contentType": "text/html",
          "count": "1",
          "status20x": "0",
          "status30x": "1",
          "status40x": "0",
          "totalSize": "77",
          "totalTime": "0.0008"
        }
      ],
      "title": "Content types (MIME types)"
    },
    "dns": {
      "aplCode": "dns",
      "columns": {
        "info": {
          "aplCode": "info",
          "escapeOutputHtml": false,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "DNS resolving tree",
          "nonBreakingSpaces": true,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 70
        }
      },
      "position": "after-url-table",
      "rows": [
        {
          "info": "Unable to resolve DNS records for 127.0.0.1"
        }
      ],
      "title": "DNS info"
    },
    "external-urls": {
      "aplCode": "external-urls",
      "columns": {
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Pages",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "foundOn": {
          "aplCode": "foundOn",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Found on URL (max 5)",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 60
        },
        "url": {
          "aplCode": "url",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "External URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 60
        }
      },
      "position": "before-url-table",
      "rows": [],
      "title": "External URLs"
    },
    "fastest-urls": {
      "aplCode": "fastest-urls",
      "columns": {
        "requestTime": {
          "aplCode": "requestTime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Time",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "statusCode": {
          "aplCode": "statusCode",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "url": {
          "aplCode": "url",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Fast URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 118
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "requestTime": "0.0006",
          "statusCode": "200",
          "url": "http://127.0.0.1:4319/noindex"
        },
        {
          "requestTime": "0.0007",
          "statusCode": "200",
          "url": "http://127.0.0.1:4319/duplicate-b"
        },
        {
          "requestTime": "0.0007",
          "statusCode": "200",
          "url": "http://127.0.0.1:4319/missing-title"
        },
        {
          "requestTime": "0.0009",
          "statusCode": "200",
          "url": "http://127.0.0.1:4319/final"
        },
        {
          "requestTime": "0.0009",
          "statusCode": "200",
          "url": "http://127.0.0.1:4319/"
        },
        {
          "requestTime": "0.0015",
          "statusCode": "200",
          "url": "http://127.0.0.1:4319/healthy"
        },
        {
          "requestTime": "0.0017",
          "statusCode": "200",
          "url": "http://127.0.0.1:4319/missing-description"
        },
        {
          "requestTime": "0.0038",
          "statusCode": "200",
          "url": "http://127.0.0.1:4319/duplicate-a"
        }
      ],
      "title": "TOP fastest URLs"
    },
    "headers": {
      "aplCode": "headers",
      "columns": {
        "header": {
          "aplCode": "header",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Header",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "maxValue": {
          "aplCode": "maxValue",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Max value",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "minValue": {
          "aplCode": "minValue",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Min value",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 10
        },
        "occurrences": {
          "aplCode": "occurrences",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Occurs",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "uniqueValues": {
          "aplCode": "uniqueValues",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Unique",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "valuesPreview": {
          "aplCode": "valuesPreview",
          "escapeOutputHtml": false,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Values preview",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 48
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "header": "Connection",
          "maxValue": "",
          "minValue": "",
          "occurrences": "11",
          "uniqueValues": "1",
          "valuesPreview": "close"
        },
        {
          "header": "Content-Type",
          "maxValue": "",
          "minValue": "",
          "occurrences": "11",
          "uniqueValues": "3",
          "valuesPreview": "text/html; charset=utf-8 (8) / text/plain (2) / text/html (1)"
        },
        {
          "header": "Date",
          "maxValue": "2026-09-29",
          "minValue": "2026-09-29",
          "occurrences": "11",
          "uniqueValues": "-",
          "valuesPreview": "[ignored generic values]"
        },
        {
          "header": "Location",
          "maxValue": "",
          "minValue": "",
          "occurrences": "1",
          "uniqueValues": "1",
          "valuesPreview": "/final"
        },
        {
          "header": "Transfer-Encoding",
          "maxValue": "",
          "minValue": "",
          "occurrences": "11",
          "uniqueValues": "1",
          "valuesPreview": "chunked"
        }
      ],
      "title": "HTTP headers"
    },
    "headers-values": {
      "aplCode": "headers-values",
      "columns": {
        "header": {
          "aplCode": "header",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Header",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "occurrences": {
          "aplCode": "occurrences",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Occurs",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "value": {
          "aplCode": "value",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Value",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 82
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "header": "Connection",
          "occurrences": "11",
          "value": "close"
        },
        {
          "header": "Content-Type",
          "occurrences": "8",
          "value": "text/html; charset=utf-8"
        },
        {
          "header": "Content-Type",
          "occurrences": "2",
          "value": "text/plain"
        },
        {
          "header": "Content-Type",
          "occurrences": "1",
          "value": "text/html"
        },
        {
          "header": "Location",
          "occurrences": "1",
          "value": "/final"
        },
        {
          "header": "Transfer-Encoding",
          "occurrences": "11",
          "value": "chunked"
        }
      ],
      "title": "HTTP header values"
    },
    "non-unique-descriptions": {
      "aplCode": "non-unique-descriptions",
      "columns": {
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Count",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "description": {
          "aplCode": "description",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Description",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 128
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "count": "7",
          "description": "A deliberately small test page for checking how different SEO tools report known defects."
        }
      ],
      "title": "TOP non-unique descriptions"
    },
    "non-unique-titles": {
      "aplCode": "non-unique-titles",
      "columns": {
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Count",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "title": {
          "aplCode": "title",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Title",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 128
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "count": "2",
          "title": "Shared title for duplicate detection"
        }
      ],
      "title": "TOP non-unique titles"
    },
    "open-graph": {
      "aplCode": "open-graph",
      "columns": {
        "urlPathAndQuery": {
          "aplCode": "urlPathAndQuery",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 50
        }
      },
      "position": "before-url-table",
      "rows": [],
      "title": "OpenGraph metadata"
    },
    "redirects": {
      "aplCode": "redirects",
      "columns": {
        "sourceUqId": {
          "aplCode": "sourceUqId",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Found at URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 39
        },
        "statusCode": {
          "aplCode": "statusCode",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "targetUrl": {
          "aplCode": "targetUrl",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Target URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 39
        },
        "url": {
          "aplCode": "url",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Redirected URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 39
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "sourceUqId": "http://127.0.0.1:4319/",
          "statusCode": "301",
          "targetUrl": "/final",
          "url": "http://127.0.0.1:4319/old-url"
        }
      ],
      "title": "Redirected URLs"
    },
    "security": {
      "aplCode": "security",
      "columns": {
        "critical": {
          "aplCode": "critical",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Critical",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 8
        },
        "header": {
          "aplCode": "header",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Header",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 26
        },
        "notice": {
          "aplCode": "notice",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Notice",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "ok": {
          "aplCode": "ok",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "OK",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "recommendation": {
          "aplCode": "recommendation",
          "escapeOutputHtml": false,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Recommendation",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 68
        },
        "warning": {
          "aplCode": "warning",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Warning",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 7
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "critical": "8",
          "header": "Content-Security-Policy",
          "highestSeverity": "4",
          "notice": "0",
          "ok": "0",
          "recommendation": "Content-Security-Policy header is not set. It restricts resources the page can load and prevents XSS attacks.",
          "warning": "0"
        },
        {
          "critical": "0",
          "header": "X-Frame-Options",
          "highestSeverity": "3",
          "notice": "0",
          "ok": "0",
          "recommendation": "X-Frame-Options header is not set. It prevents clickjacking attacks when set to 'deny' or 'sameorigin.",
          "warning": "8"
        },
        {
          "critical": "0",
          "header": "X-Content-Type-Options",
          "highestSeverity": "3",
          "notice": "0",
          "ok": "0",
          "recommendation": "X-Content-Type-Options header is not set. It stops MIME type sniffing and mitigates content type attacks.",
          "warning": "8"
        },
        {
          "critical": "0",
          "header": "Referrer-Policy",
          "highestSeverity": "3",
          "notice": "0",
          "ok": "0",
          "recommendation": "Referrer-Policy header is not set. It controls referrer header sharing and enhances privacy and security.",
          "warning": "8"
        },
        {
          "critical": "0",
          "header": "Feature-Policy",
          "highestSeverity": "3",
          "notice": "0",
          "ok": "0",
          "recommendation": "Feature-Policy header is not set. It allows enabling/disabling browser APIs and features for security. Not important if Permissions-Policy is set.",
          "warning": "8"
        },
        {
          "critical": "0",
          "header": "Permissions-Policy",
          "highestSeverity": "3",
          "notice": "0",
          "ok": "0",
          "recommendation": "Permissions-Policy header is not set. It allows enabling/disabling browser APIs and features for security.",
          "warning": "8"
        },
        {
          "critical": "0",
          "header": "Cross-Origin-Opener-Policy",
          "highestSeverity": "2",
          "notice": "8",
          "ok": "0",
          "recommendation": "Cross-Origin-Opener-Policy is not set. 'same-origin' isolates your browsing context from cross-origin popups (mitigates Spectre/XS-Leaks).",
          "warning": "0"
        },
        {
          "critical": "0",
          "header": "Cross-Origin-Embedder-Policy",
          "highestSeverity": "2",
          "notice": "8",
          "ok": "0",
          "recommendation": "Cross-Origin-Embedder-Policy is not set. 'require-corp' enables cross-origin isolation for powerful features.",
          "warning": "0"
        },
        {
          "critical": "0",
          "header": "Cross-Origin-Resource-Policy",
          "highestSeverity": "2",
          "notice": "8",
          "ok": "0",
          "recommendation": "Cross-Origin-Resource-Policy is not set. 'same-origin' or 'same-site' blocks other sites from embedding this resource.",
          "warning": "0"
        },
        {
          "critical": "0",
          "header": "X-XSS-Protection",
          "highestSeverity": "1",
          "notice": "0",
          "ok": "8",
          "recommendation": "",
          "warning": "0"
        },
        {
          "critical": "0",
          "header": "Server",
          "highestSeverity": "1",
          "notice": "0",
          "ok": "8",
          "recommendation": "Server header is not set or empty. This is recommended.",
          "warning": "0"
        }
      ],
      "title": "Security"
    },
    "seo": {
      "aplCode": "seo",
      "columns": {
        "description": {
          "aplCode": "description",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Description",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 12
        },
        "h1": {
          "aplCode": "h1",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "H1",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 12
        },
        "indexing": {
          "aplCode": "indexing",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Indexing",
          "nonBreakingSpaces": false,
          "renderer": {},
          "truncateIfLonger": false,
          "width": 20
        },
        "keywords": {
          "aplCode": "keywords",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Keywords",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 12
        },
        "title": {
          "aplCode": "title",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Title",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 12
        },
        "urlPathAndQuery": {
          "aplCode": "urlPathAndQuery",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 50
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "deniedByRobotsTxt": "false",
          "description": "A deliberately small test page for checking how different SEO tools report known defects.",
          "h1": "SEO fixture /",
          "indexing": "",
          "keywords": "",
          "robotsIndex": "1",
          "title": "SEO fixture /",
          "urlPathAndQuery": "/"
        },
        {
          "deniedByRobotsTxt": "false",
          "description": "A deliberately small test page for checking how different SEO tools report known defects.",
          "h1": "Shared title for duplicate detection",
          "indexing": "",
          "keywords": "",
          "robotsIndex": "1",
          "title": "Shared title for duplicate detection",
          "urlPathAndQuery": "/duplicate-a"
        },
        {
          "deniedByRobotsTxt": "false",
          "description": "A deliberately small test page for checking how different SEO tools report known defects.",
          "h1": "Shared title for duplicate detection",
          "indexing": "",
          "keywords": "",
          "robotsIndex": "1",
          "title": "Shared title for duplicate detection",
          "urlPathAndQuery": "/duplicate-b"
        },
        {
          "deniedByRobotsTxt": "false",
          "description": "A deliberately small test page for checking how different SEO tools report known defects.",
          "h1": "SEO fixture /final",
          "indexing": "",
          "keywords": "",
          "robotsIndex": "1",
          "title": "SEO fixture /final",
          "urlPathAndQuery": "/final"
        },
        {
          "deniedByRobotsTxt": "false",
          "description": "A deliberately small test page for checking how different SEO tools report known defects.",
          "h1": "SEO fixture /healthy",
          "indexing": "",
          "keywords": "",
          "robotsIndex": "1",
          "title": "SEO fixture /healthy",
          "urlPathAndQuery": "/healthy"
        },
        {
          "deniedByRobotsTxt": "false",
          "description": "",
          "h1": "SEO fixture /missing-description",
          "indexing": "",
          "keywords": "",
          "robotsIndex": "1",
          "title": "SEO fixture /missing-description",
          "urlPathAndQuery": "/missing-description"
        },
        {
          "deniedByRobotsTxt": "false",
          "description": "A deliberately small test page for checking how different SEO tools report known defects.",
          "h1": "Page intentionally missing a title",
          "indexing": "",
          "keywords": "",
          "robotsIndex": "1",
          "title": "",
          "urlPathAndQuery": "/missing-title"
        },
        {
          "deniedByRobotsTxt": "false",
          "description": "A deliberately small test page for checking how different SEO tools report known defects.",
          "h1": "SEO fixture /noindex",
          "indexing": "",
          "keywords": "",
          "robotsIndex": "0",
          "title": "SEO fixture /noindex",
          "urlPathAndQuery": "/noindex"
        }
      ],
      "title": "SEO metadata"
    },
    "seo-headings": {
      "aplCode": "seo-headings",
      "columns": {
        "headings": {
          "aplCode": "headings",
          "escapeOutputHtml": false,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Heading structure",
          "nonBreakingSpaces": false,
          "renderer": {},
          "truncateIfLonger": true,
          "width": 84
        },
        "headingsCount": {
          "aplCode": "headingsCount",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Count",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 5
        },
        "headingsErrorsCount": {
          "aplCode": "headingsErrorsCount",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Errors",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "urlPathAndQuery": {
          "aplCode": "urlPathAndQuery",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 30
        }
      },
      "position": "before-url-table",
      "rows": [
        {
          "headings": "<h1> SEO fixture /",
          "headingsCount": "1",
          "headingsErrorsCount": "0",
          "headingsHtml": "<ul><li>&lt;h1&gt; SEO fixture /</li></ul>",
          "urlPathAndQuery": "/"
        },
        {
          "headings": "<h1> Shared title for duplicate detection",
          "headingsCount": "1",
          "headingsErrorsCount": "0",
          "headingsHtml": "<ul><li>&lt;h1&gt; Shared title for duplicate detection</li></ul>",
          "urlPathAndQuery": "/duplicate-b"
        },
        {
          "headings": "<h1> SEO fixture /noindex",
          "headingsCount": "1",
          "headingsErrorsCount": "0",
          "headingsHtml": "<ul><li>&lt;h1&gt; SEO fixture /noindex</li></ul>",
          "urlPathAndQuery": "/noindex"
        },
        {
          "headings": "<h1> SEO fixture /healthy <h2> Existing anchor [#present]",
          "headingsCount": "2",
          "headingsErrorsCount": "0",
          "headingsHtml": "<ul><li>&lt;h1&gt; SEO fixture /healthy<ul><li>&lt;h2&gt; Existing anchor [#present]</li></ul></li></ul>",
          "urlPathAndQuery": "/healthy"
        },
        {
          "headings": "<h1> Shared title for duplicate detection",
          "headingsCount": "1",
          "headingsErrorsCount": "0",
          "headingsHtml": "<ul><li>&lt;h1&gt; Shared title for duplicate detection</li></ul>",
          "urlPathAndQuery": "/duplicate-a"
        },
        {
          "headings": "<h1> SEO fixture /missing-description",
          "headingsCount": "1",
          "headingsErrorsCount": "0",
          "headingsHtml": "<ul><li>&lt;h1&gt; SEO fixture /missing-description</li></ul>",
          "urlPathAndQuery": "/missing-description"
        },
        {
          "headings": "<h1> Page intentionally missing a title",
          "headingsCount": "1",
          "headingsErrorsCount": "0",
          "headingsHtml": "<ul><li>&lt;h1&gt; Page intentionally missing a title</li></ul>",
          "urlPathAndQuery": "/missing-title"
        },
        {
          "headings": "<h1> SEO fixture /final",
          "headingsCount": "1",
          "headingsErrorsCount": "0",
          "headingsHtml": "<ul><li>&lt;h1&gt; SEO fixture /final</li></ul>",
          "urlPathAndQuery": "/final"
        }
      ],
      "title": "Heading structure"
    },
    "skipped": {
      "aplCode": "skipped",
      "columns": {
        "reason": {
          "aplCode": "reason",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Reason",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 18
        },
        "sourceAttr": {
          "aplCode": "sourceAttr",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Source",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 19
        },
        "sourceUqId": {
          "aplCode": "sourceUqId",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Found at URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 60
        },
        "url": {
          "aplCode": "url",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Skipped URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 60
        }
      },
      "position": "before-url-table",
      "rows": [],
      "title": "Skipped URLs"
    },
    "skipped-summary": {
      "aplCode": "skipped-summary",
      "columns": {
        "count": {
          "aplCode": "count",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Unique URLs",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 11
        },
        "domain": {
          "aplCode": "domain",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Domain",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "reason": {
          "aplCode": "reason",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Reason",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 18
        }
      },
      "position": "before-url-table",
      "rows": [],
      "title": "Skipped URLs Summary"
    },
    "slowest-urls": {
      "aplCode": "slowest-urls",
      "columns": {
        "requestTime": {
          "aplCode": "requestTime",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Time",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "statusCode": {
          "aplCode": "statusCode",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Status",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": 6
        },
        "url": {
          "aplCode": "url",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": true,
          "getDataValueCallback": null,
          "name": "Slow URL",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": true,
          "width": 113
        }
      },
      "position": "before-url-table",
      "rows": [],
      "title": "TOP slowest URLs"
    },
    "source-domains": {
      "aplCode": "source-domains",
      "columns": {
        "Document": {
          "aplCode": "Document",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Document",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "HTML": {
          "aplCode": "HTML",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "HTML",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "Redirect": {
          "aplCode": "Redirect",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Redirect",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "domain": {
          "aplCode": "domain",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": null,
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Domain",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        },
        "totals": {
          "aplCode": "totals",
          "escapeOutputHtml": true,
          "forcedDataType": null,
          "formatter": {},
          "formatterWillChangeValueLength": false,
          "getDataValueCallback": null,
          "name": "Totals",
          "nonBreakingSpaces": false,
          "renderer": null,
          "truncateIfLonger": false,
          "width": -1
        }
      },
      "position": "after-url-table",
      "rows": [
        {
          "Audio": "",
          "CSS": "",
          "Document": "2/76B/3ms",
          "Font": "",
          "HTML": "8/5kB/10ms",
          "Image": "",
          "JS": "",
          "JSON": "",
          "Other": "",
          "Redirect": "1/77B/0ms",
          "Video": "",
          "XML": "",
          "domain": "127.0.0.1",
          "totalCount": "11",
          "totals": "11/5kB/14ms"
        }
      ],
      "title": "Source domains"
    }
  }
}