Skip to content

feat: Add custom metric for UCP well-known file parsing#194

Merged
tunetheweb merged 4 commits intoHTTPArchive:mainfrom
tsunoyu:ucp
Feb 26, 2026
Merged

feat: Add custom metric for UCP well-known file parsing#194
tunetheweb merged 4 commits intoHTTPArchive:mainfrom
tsunoyu:ucp

Conversation

@tsunoyu
Copy link
Contributor

@tsunoyu tsunoyu commented Feb 25, 2026

Description

This PR adds support for tracking and analyzing a critical file related to the Universal Commerce Protocol (UCP):

  1. UCP Profile: /.well-known/ucp

This file is central to the Universal Commerce Protocol (UCP) and allows businesses to publish their accepted payment handlers and available services to agents. The changes ensure this file is fetched, parsed, and included in the HTTP Archive's custom metrics for analysis of this standard's adoption.

Changes

  1. Added a new parseResponse call for /.well-known/ucp to track its presence and extract key metadata cleanly without overloading the payload, such as the UCP profile version, whether payment handlers exist, and the signing keys count.

Example Output

UCP Profile (/.well-known/ucp)

{
  "/.well-known/ucp": {
    "found": true,
    "data": {
      "has_ucp": true,
      "version": "2026-01-11",
      "has_payment_handlers": true,
      "signing_keys_count": 0
    }
  }
}

Test websites:

@tsunoyu
Copy link
Contributor Author

tsunoyu commented Feb 25, 2026

I can see that the test captured the new UCP logic.

"/.well-known/ucp": {
      "found": true,
      "data": {
        "has_ucp": true,
        "version": "2026-01-11",
        "has_payment_handlers": true,
        "signing_keys_count": 0
      }

Copy link
Member

@tunetheweb tunetheweb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM with a couple of minor nits

tsunoyu and others added 2 commits February 26, 2026 14:26
Co-authored-by: Barry Pollard <barrypollard@google.com>
Co-authored-by: Barry Pollard <barrypollard@google.com>
@github-actions
Copy link

https://almanac.httparchive.org/en/2022/

WPT result details

Changed custom metrics values:

{
  "_a11y": {
    "tables": {
      "total": 0,
      "total_with_caption": 0,
      "total_with_presentational": 0,
      "total_with_figcaption": 0
    },
    "file_extension_alts": {
      "total_elements_with_alt": 5,
      "total_elements_with_non_empty_alt": 0,
      "total_with_file_extension": 0,
      "file_extensions": {}
    },
    "title_and_alt": {
      "total_alt": 5,
      "total_title": 5,
      "total_both": 0,
      "total_alt_same_as_title": 0
    },
    "th_with_scope_attribute": {
      "total_th": 0,
      "total_with_scope": 0,
      "scopes": {}
    },
    "td_with_headers_attribute": {
      "total_tds": 0,
      "total_with_headers": 0
    },
    "total_anchors_with_role_button": 0,
    "total_role_tab_with_selected_and_controls": 0,
    "placeholder_but_no_label": {
      "total_placeholder": 4,
      "total_no_label": 0
    },
    "divs_or_spans_as_button_or_link": {
      "total_role_button": 0,
      "total_role_link": 0,
      "total_either": 0
    },
    "screen_reader_classes": true,
    "form_control_a11y_tree": {
      "__error": {
        "stack": "TypeError: Cannot read properties of undefined (reading 'value')\n    at addControlToStats (<anonymous>:202:28)\n    at <anonymous>:246:1\n    at captureAndLogError (<anonymous>:30:8)\n    at wptCustomMetric (<anonymous>:195:25)\n    at <anonymous>:318:7",
        "message": "Cannot read properties of undefined (reading 'value')"
      }
    },
    "fieldset_radio_checkbox": {
      "total_radio": 0,
      "total_checkbox": 0,
      "total_radio_in_fieldset": 0,
      "total_checkbox_in_fieldset": 0,
      "fieldsets": []
    },
    "required_form_controls": []
  },
  "_almanac": {
    "01.12": 0,
    "01.13": 0,
    "link-nodes": {
      "total": 29,
      "nodes": [
        {
          "tagName": "link",
          "rel": "stylesheet",
          "href": "/static/css/normalize.css?v=3a712a3381a95c0a7b7c6ed3aa03b911"
        },
        {
          "tagName": "link",
          "rel": "stylesheet",
          "href": "/static/css/almanac.css?v=f1b659664e1ffbc5e1f3feca4080486d"
        },
        {
          "tagName": "link",
          "rel": "stylesheet",
          "href": "/static/css/index.css?v=10da3c5123c1a99e20252d43085e83d5"
        },
        {
          "tagName": "link",
          "rel": "preload",
          "href": "/static/fonts/Poppins-Light.woff2",
          "as": "font",
          "type": "font/woff2",
          "crossorigin": ""
        },
        {
          "tagName": "link",
          "rel": "preload",
          "href": "/static/fonts/Lato-Regular.woff2",
          "as": "font",
          "type": "font/woff2",
          "crossorigin": ""
        },
        {
          "tagName": "link",
          "rel": "preload",
          "href": "/static/fonts/Poppins-Bold.woff2",
          "as": "font",
          "type": "font/woff2",
          "crossorigin": ""
        },
        {
          "tagName": "link",
          "rel": "preload",
          "href": "/static/fonts/Lato-Black.woff2",
          "as": "font",
          "type": "font/woff2",
          "crossorigin": ""
        },
        {
          "tagName": "link",
          "rel": "preload",
          "href": "/static/fonts/Lato-Bold.woff2",
          "as": "font",
          "type": "font/woff2",
          "crossorigin": ""
        },
        {
          "tagName": "link",
          "rel": "shortcut icon",
          "href": "/static/images/favicon.ico"
        },
        {
          "tagName": "link",
          "rel": "apple-touch-icon",
          "href": "/static/images/apple-touch-icon.png"
        },
        {
          "tagName": "link",
          "rel": "webmention",
          "href": "https://webmention.io/almanac.httparchive.org/webmention"
        },
        {
          "tagName": "link",
          "rel": "pingback",
          "href": "https://webmention.io/almanac.httparchive.org/xmlrpc"
        },
        {
          "tagName": "link",
          "rel": "me",
          "href": "mailto:team@httparchive.org"
        },
        {
          "tagName": "link",
          "rel": "canonical",
          "href": "https://almanac.httparchive.org/en/2022/"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "type": "application/rss+xml",
          "title": "Web Almanac by HTTP Archive RSS (en)",
          "href": "/en/rss.xml"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/en/2022/",
          "hreflang": "en"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/es/2022/",
          "hreflang": "es"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/fr/2022/",
          "hreflang": "fr"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/hi/2022/",
          "hreflang": "hi"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/it/2022/",
          "hreflang": "it"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/ja/2022/",
          "hreflang": "ja"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/nl/2022/",
          "hreflang": "nl"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/pt/2022/",
          "hreflang": "pt"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/ru/2022/",
          "hreflang": "ru"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/tr/2022/",
          "hreflang": "tr"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/uk/2022/",
          "hreflang": "uk"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/zh-CN/2022/",
          "hreflang": "zh-CN"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/zh-TW/2022/",
          "hreflang": "zh-TW"
        },
        {
          "tagName": "link",
          "rel": "alternate",
          "href": "https://almanac.httparchive.org/en/2022/",
          "hreflang": "x-default"
        }
      ],
      "attribute_usage_count": {
        "rel": 29,
        "href": 29,
        "as": 5,
        "type": 6,
        "crossorigin": 5,
        "title": 1,
        "hreflang": 14
      }
    },
    "priority-hints": {
      "total": 1,
      "nodes": [
        {
          "tagName": "img",
          "src": "/static/images/home-hero.png",
          "alt": "",
          "width": "820",
          "height": "562",
          "fetchpriority": "high"
        }
      ],
      "attribute_usage_count": {
        "src": 1,
        "alt": 1,
        "width": 1,
        "height": 1,
        "fetchpriority": 1
      }
    },
    "meta-nodes": {
      "total": 16,
      "nodes": [
        {
          "tagName": "meta",
          "charset": "UTF-8"
        },
        {
          "tagName": "meta",
          "name": "viewport",
          "content": "width=device-width, initial-scale=1"
        },
        {
          "tagName": "meta",
          "name": "description",
          "content": "The Web Almanac is an annual state of the web report combining the expertise of the web community with the data and trends of the HTTP Archive."
        },
        {
          "tagName": "meta",
          "property": "og:title",
          "content": "The 2022 Web Almanac"
        },
        {
          "tagName": "meta",
          "property": "og:url",
          "content": "https://almanac.httparchive.org/en/2022/"
        },
        {
          "tagName": "meta",
          "property": "og:image",
          "content": "https://almanac.httparchive.org/static/images/home-hero-2022.png"
        },
        {
          "tagName": "meta",
          "property": "og:image:height",
          "content": "600"
        },
        {
          "tagName": "meta",
          "property": "og:image:width",
          "content": "1200"
        },
        {
          "tagName": "meta",
          "property": "og:type",
          "content": "article"
        },
        {
          "tagName": "meta",
          "property": "og:description",
          "content": "The Web Almanac is an annual state of the web report combining the expertise of the web community with the data and trends of the HTTP Archive."
        },
        {
          "tagName": "meta",
          "name": "twitter:card",
          "content": "summary_large_image"
        },
        {
          "tagName": "meta",
          "name": "twitter:site",
          "content": "@HTTPArchive"
        },
        {
          "tagName": "meta",
          "name": "twitter:title",
          "content": "The 2022 Web Almanac"
        },
        {
          "tagName": "meta",
          "name": "twitter:image",
          "content": "https://almanac.httparchive.org/static/images/home-hero-2022.png"
        },
        {
          "tagName": "meta",
          "name": "twitter:image:alt",
          "content": "The 2022 Web Almanac"
        },
        {
          "tagName": "meta",
          "name": "twitter:description",
          "content": "The Web Almanac is an annual state of the web report combining the expertise of the web community with the data and trends of the HTTP Archive."
        }
      ],
      "attribute_usage_count": {
        "charset": 1,
        "name": 8,
        "content": 15,
        "property": 7
      }
    },
    "10.5": [
      "WebPage",
      "ImageObject",
      "Organization",
      "Person",
      "schema.org/Article",
      "EntryPoint",
      "SearchAction",
      "schema.org/WebSite",
      "ListItem",
      "schema.org/BreadcrumbList"
    ],
    "seo-anchor-elements": {
      "internal": 118,
      "external": 17,
      "hash": 1,
      "navigateHash": 0,
      "earlyHash": 1
    },
    "seo-titles": {
      "titleWords": 15,
      "titleElements": 6
    },
    "seo-words": {
      "wordsCount": 372,
      "wordElements": 37
    },
    "input_elements": {
      "total": 10,
      "nodes": [
        {
          "tagName": "input",
          "id": "header-search-box",
          "type": "search",
          "name": "q",
          "placeholder": "Search",
          "aria-label": "Search"
        },
        {
          "tagName": "input",
          "id": "mobile-search-box",
          "type": "search",
          "name": "q",
          "placeholder": "Search",
          "aria-label": "Search"
        },
        {
          "tagName": "select",
          "id": "table-of-contents-switcher-mobile"
        },
        {
          "tagName": "select",
          "id": "year-switcher-mobile"
        },
        {
          "tagName": "select",
          "id": "language-switcher-mobile"
        },
        {
          "tagName": "input",
          "id": "footer-search-box",
          "type": "search",
          "name": "q",
          "placeholder": "Search",
          "aria-label": "Search"
        },
        {
          "tagName": "input",
          "id": "mobile-footer-search-box",
          "type": "search",
          "name": "q",
          "placeholder": "Search",
          "aria-label": "Search"
        },
        {
          "tagName": "select",
          "id": "table-of-contents-switcher-mobile-footer"
        },
        {
          "tagName": "select",
          "id": "year-switcher-mobile-footer"
        },
        {
          "tagName": "select",
          "id": "language-switcher-mobile-footer"
        }
      ],
      "attribute_usage_count": {
        "id": 10,
        "class": 4,
        "type": 4,
        "name": 4,
        "placeholder": 4,
        "title": 4,
        "aria-label": 4,
        "data-label": 2
      }
    },
    "link_protocols_used": {
      "https": 135
    },
    "06.47": 0,
    "08.39": {
      "link": 0,
      "script": 0
    },
    "09.27": {
      "total": 0,
      "nodes": [],
      "attribute_usage_count": {}
    },
    "icon_only_clickables": 0,
    "inline_svg_stats": {
      "total": 18,
      "content_lengths": [
        11691,
        250,
        232,
        240,
        252,
        252,
        249,
        77,
        250,
        246,
        232,
        235,
        235,
        232,
        210,
        222,
        222,
        219
      ],
      "attribute_usage_count": {
        "xmlns": 1,
        "width": 17,
        "height": 17,
        "display": 1,
        "role": 16,
        "aria-labelledby": 4,
        "viewbox": 1
      }
    },
    "images": {
      "pictures": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      },
      "imgs": {
        "total": 5,
        "nodes": [
          {
            "tagName": "img"
          },
          {
            "tagName": "img",
            "loading": "lazy"
          },
          {
            "tagName": "img",
            "loading": "lazy"
          },
          {
            "tagName": "img",
            "loading": "lazy"
          },
          {
            "tagName": "img",
            "loading": "lazy"
          }
        ],
        "attribute_usage_count": {
          "src": 5,
          "alt": 5,
          "width": 5,
          "height": 5,
          "fetchpriority": 1,
          "id": 3,
          "class": 4,
          "loading": 4
        }
      },
      "sources": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      },
      "total_with_srcset": 0,
      "total_with_sizes": 0,
      "total_pictures_with_img": 0,
      "sizes_values": [],
      "loading_values": [
        "lazy",
        "lazy",
        "lazy",
        "lazy"
      ],
      "alt_lengths": [
        0,
        0,
        0,
        0,
        0
      ]
    },
    "videos": {
      "total": 0,
      "nodes": [],
      "attribute_usage_count": {},
      "total_with_track": 0,
      "tracks": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      }
    },
    "audios": {
      "total": 0,
      "nodes": [],
      "attribute_usage_count": {},
      "total_with_track": 0,
      "tracks": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      }
    },
    "iframes": {
      "iframes": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      },
      "loading_values": []
    },
    "scripts": {
      "total": 13,
      "nodes": [
        {
          "tagName": "script",
          "type": "text/javascript",
          "async": "",
          "src": "https://www.google-analytics.com/plugins/ua/linkid.js",
          "nonce": ""
        },
        {
          "tagName": "script",
          "type": "text/javascript",
          "async": "",
          "src": "https://www.google-analytics.com/analytics.js",
          "nonce": ""
        },
        {
          "tagName": "script",
          "type": "text/javascript",
          "async": "",
          "src": "https://www.googletagmanager.com/gtag/js?id=UA-22381566-3&cx=c&gtm=4e62o1",
          "nonce": ""
        },
        {
          "tagName": "script",
          "nonce": ""
        },
        {
          "tagName": "script",
          "type": "application/ld+json"
        },
        {
          "tagName": "script",
          "type": "application/ld+json"
        },
        {
          "tagName": "script",
          "type": "application/ld+json"
        },
        {
          "tagName": "script",
          "nonce": ""
        },
        {
          "tagName": "script",
          "async": "",
          "src": "/static/js/almanac.js?v=fa418742db0ee3ef3f6f493962cd0dc7",
          "nonce": ""
        },
        {
          "tagName": "script",
          "async": "",
          "src": "https://www.googletagmanager.com/gtag/js?id=G-PQ5N2MZG5M",
          "nonce": ""
        },
        {
          "tagName": "script",
          "defer": "",
          "src": "/static/js/web-vitals.js?v=e7b8ecda99703fdc7c6a33b6a3d07cc6",
          "nonce": ""
        },
        {
          "tagName": "script",
          "defer": "",
          "src": "/static/js/send-web-vitals.js?v=67574c23a511f3149c90c88735c5a6f3",
          "nonce": ""
        },
        {
          "tagName": "script",
          "type": "speculationrules",
          "nonce": ""
        }
      ],
      "attribute_usage_count": {
        "type": 7,
        "async": 5,
        "src": 7,
        "nonce": 10,
        "defer": 2
      }
    },
    "nodes_using_role": {
      "total": 16,
      "usage_and_count": {
        "img": 16
      }
    },
    "headings_order": [
      1,
      2,
      2,
      3,
      2,
      2
    ],
    "shortcuts_stats": {
      "total_with_aria_shortcut": 0,
      "total_with_accesskey": 0,
      "aria_shortcut_values": [],
      "accesskey_values": []
    },
    "attributes_used_on_elements": {
      "lang": 51,
      "charset": 1,
      "name": 12,
      "content": 15,
      "rel": 33,
      "href": 166,
      "as": 5,
      "type": 30,
      "crossorigin": 5,
      "async": 5,
      "src": 12,
      "nonce": 10,
      "property": 7,
      "title": 5,
      "hreflang": 15,
      "class": 199,
      "xmlns": 2,
      "width": 22,
      "height": 22,
      "display": 1,
      "id": 57,
      "viewBox": 14,
      "d": 17,
      "fill": 17,
      "fill-rule": 1,
      "clip-rule": 1,
      "cx": 2,
      "cy": 2,
      "r": 1,
      "stroke-width": 3,
      "stroke-miterlimit": 3,
      "stroke": 3,
      "rx": 1,
      "ry": 1,
      "aria-label": 14,
      "aria-expanded": 9,
      "action": 4,
      "for": 10,
      "placeholder": 4,
      "role": 16,
      "aria-labelledby": 17,
      "xmlns:xlink": 16,
      "xlink:href": 16,
      "data-event": 4,
      "data-label": 4,
      "data-open-text": 1,
      "data-close-text": 1,
      "selected": 6,
      "disabled": 2,
      "value": 98,
      "x": 1,
      "y": 1,
      "alt": 5,
      "fetchpriority": 1,
      "aria-hidden": 1,
      "loading": 4,
      "defer": 2
    },
    "body_node": {
      "tagName": "body",
      "class": "year-2022"
    },
    "html_node": {
      "tagName": "html",
      "lang": "en"
    },
    "document_title": {
      "value": "The 2022 Web Almanac",
      "length": 20
    },
    "length_of_h1s": [
      11
    ]
  },
  "_doctype": "html",
  "_fugu-apis": {
    "Device Memory": [
      "https://almanac.httparchive.org/static/js/send-web-vitals.js?v=67574c23a511f3149c90c88735c5a6f3"
    ]
  },
  "_lib-detector-version": "6.1.0",
  "_markup": {
    "favicon": true,
    "rel_alternate_mobile": false,
    "compatMode": "CSS1Compat",
    "noscripts": {
      "iframe_googletagmanager_count": 0,
      "total": 0
    },
    "buttons": {
      "types": {
        "button": 9,
        "submit": 4
      },
      "total": 13
    },
    "form": {
      "target": {},
      "method": {},
      "elements": [
        {
          "tagNames": {
            "label": 1,
            "input": 1,
            "button": 1
          },
          "types": {
            "search": 1,
            "submit": 1
          },
          "total": 3
        },
        {
          "tagNames": {
            "label": 1,
            "input": 1,
            "button": 1
          },
          "types": {
            "search": 1,
            "submit": 1
          },
          "total": 3
        },
        {
          "tagNames": {
            "label": 1,
            "input": 1,
            "button": 1
          },
          "types": {
            "search": 1,
            "submit": 1
          },
          "total": 3
        },
        {
          "tagNames": {
            "label": 1,
            "input": 1,
            "button": 1
          },
          "types": {
            "search": 1,
            "submit": 1
          },
          "total": 3
        }
      ],
      "total": 4
    },
    "dirs": {
      "html_dir": null,
      "body_nodes_dir": {
        "values": {},
        "total": 0
      }
    },
    "inputs": {
      "types": {
        "search": 4
      },
      "total": 4
    },
    "audios": {
      "autoplay": {},
      "total": 0
    },
    "classes": {
      "unique_names_total": 77,
      "references_total": 249
    },
    "ids": {
      "ids_total": 57,
      "duplicate_ids_total": 0,
      "unique_ids_total": 57
    },
    "images": {
      "picture": {
        "total": 0
      },
      "source": {
        "total": 0,
        "src_total": 0,
        "srcset_total": 0,
        "media_total": 0,
        "type_total": 0
      },
      "img": {
        "total": 5,
        "src_total": 5,
        "srcset_total": 0,
        "alt": {
          "missing": 0,
          "blank": 5,
          "present": 0
        },
        "loading": {
          "auto": 0,
          "lazy": 4,
          "eager": 0,
          "invalid": 0,
          "missing": 1,
          "blank": 0
        },
        "dimensions": {
          "missing_width": 0,
          "missing_height": 0
        }
      }
    },
    "iframes": {
      "total": 0,
      "loading": {
        "auto": 0,
        "lazy": 0,
        "eager": 0,
        "invalid": 0,
        "missing": 0,
        "blank": 0
      }
    },
    "amp": {
      "html_amp_attribute_present": false,
      "html_amp_emoji_attribute_present": false,
      "amp_page": false,
      "rel_amphtml": null
    },
    "data_nosnippet": {
      "valid": 0,
      "wrong_tag_type": 0
    },
    "obsolete_elements": {},
    "svgs": {
      "svg_element_total": 18,
      "svg_img_total": 0,
      "svg_object_total": 0,
      "svg_embed_total": 0,
      "svg_iframe_total": 0,
      "svg_total": 18
    },
    "app": {
      "app_id_present": false,
      "meta_theme_color": null
    },
    "anchors": {
      "hrefs_without_special_scheme": []
    },
    "dom-shape": {
      "bodyNodesCount": 622,
      "bodyLeafNodesCount": 346,
      "depth": {
        "mean": 7.80635838150289,
        "median": 9,
        "mode": 9,
        "stddev": 2.449505088363983,
        "skew": -0.48729909734310434,
        "range": {
          "min": 1,
          "max": 13
        }
      },
      "bodyNonLeafNodesCount": 276,
      "branchFactor": {
        "mean": 5.445652173913044,
        "median": 3,
        "mode": 3,
        "stddev": 8.701196149365996,
        "skew": 0.28107080129336515,
        "range": {
          "min": 1,
          "max": 71
        }
      },
      "branchFactorByDepth": [
        {
          "depth": 0,
          "count": 1,
          "mean": 33,
          "stddev": 0,
          "skew": null,
          "median": 33,
          "mode": 33,
          "range": {
            "min": 33,
            "max": 33
          }
        },
        {
          "depth": 1,
          "count": 6,
          "mean": 12,
          "stddev": 18.502252115170556,
          "skew": 0.4864272707980575,
          "median": 3,
          "mode": 3,
          "range": {
            "min": 1,
            "max": 53
          }
        },
        {
          "depth": 2,
          "count": 20,
          "mean": 4.5,
          "stddev": 3.5142566781611158,
          "skew": 0.42683279491835413,
          "median": 3,
          "mode": 3,
          "range": {
            "min": 3,
            "max": 19
          }
        },
        {
          "depth": 3,
          "count": 14,
          "mean": 6.285714285714286,
          "stddev": 3.260774917289522,
          "skew": 1.007648294978144,
          "median": 5,
          "mode": 3,
          "range": {
            "min": 3,
            "max": 11
          }
        },
        {
          "depth": 4,
          "count": 20,
          "mean": 5.55,
          "stddev": 3.0244834269673224,
          "skew": 0.8431191843418062,
          "median": 5,
          "mode": 3,
          "range": {
            "min": 3,
            "max": 13
          }
        },
        {
          "depth": 5,
          "count": 29,
          "mean": 4.275862068965517,
          "stddev": 3.0160096007820525,
          "skew": 0.4230298433515216,
          "median": 3,
          "mode": 3,
          "range": {
            "min": 1,
            "max": 15
          }
        },
        {
          "depth": 6,
          "count": 27,
          "mean": 3.7037037037037037,
          "stddev": 1.5108205966200843,
          "skew": -0.8580080912295552,
          "median": 4,
          "mode": 5,
          "range": {
            "min": 1,
            "max": 7
          }
        },
        {
          "depth": 7,
          "count": 20,
          "mean": 14,
          "stddev": 18.606450494385005,
          "skew": 0.48370321909146463,
          "median": 5,
          "mode": 5,
          "range": {
            "min": 3,
            "max": 71
          }
        },
        {
          "depth": 8,
          "count": 65,
          "mean": 6.015384615384615,
          "stddev": 11.567184761799627,
          "skew": 0.26068439965987716,
          "median": 3,
          "mode": 3,
          "range": {
            "min": 3,
            "max": 71
          }
        },
        {
          "depth": 9,
          "count": 59,
          "mean": 3.135593220338983,
          "stddev": 0.812145664454979,
          "skew": 0.16695677422593652,
          "median": 3,
          "mode": 3,
          "range": {
            "min": 1,
            "max": 7
          }
        },
        {
          "depth": 10,
          "count": 7,
          "mean": 3.5714285714285716,
          "stddev": 1.761261143705422,
          "skew": 0.32444284226152514,
          "median": 3,
          "mode": 3,
          "range": {
            "min": 1,
            "max": 7
          }
        },
        {
          "depth": 11,
          "count": 5,
          "mean": 3.4,
          "stddev": 0.8,
          "skew": 0.4999999999999999,
          "median": 3,
          "mode": 3,
          "range": {
            "min": 3,
            "max": 5
          }
        },
        {
          "depth": 12,
          "count": 4,
          "mean": 5,
          "stddev": 0,
          "skew": null,
          "median": 5,
          "mode": 5,
          "range": {
            "min": 5,
            "max": 5
          }
        }
      ]
    }
  },
  "_meta_viewport": "width=device-width, initial-scale=1",
  "_robots_txt": {
    "redirected": false,
    "status": 200,
    "size": 76,
    "size_kib": 0.07421875,
    "over_google_limit": false,
    "comment_count": 0,
    "record_counts": {
      "by_type": {
        "sitemap": 1,
        "user_agent": 1,
        "allow": 1,
        "disallow": 0,
        "crawl_delay": 0,
        "noindex": 0,
        "other": 0
      },
      "by_useragent": {
        "*": {
          "allow": 1,
          "disallow": 0,
          "crawl_delay": 0,
          "noindex": 0,
          "other": 0
        }
      }
    }
  },
  "_third-parties": [
    {
      "name": "Workbox",
      "version": null
    }
  ],
  "_well-known": {
    "/.well-known/assetlinks.json": {
      "found": false
    },
    "/.well-known/apple-app-site-association": {
      "found": false
    },
    "/.well-known/related-website-set.json": {
      "found": false
    },
    "/.well-known/privacy-sandbox-attestations.json": {
      "found": false
    },
    "/.well-known/gpc.json": {
      "found": false
    },
    "/.well-known/web-identity": {
      "found": false
    },
    "/.well-known/passkey-endpoints": {
      "found": false
    },
    "/.well-known/webauthn": {
      "found": false
    },
    "/.well-known/ucp": {
      "found": false
    },
    "/robots.txt": {
      "found": true,
      "data": {
        "matched_disallows": {}
      }
    },
    "/.well-known/security.txt": {
      "found": false,
      "data": {
        "status": 404,
        "redirected": true,
        "url": "https://almanac.httparchive.org/.well-known/security.txt/",
        "content_type": "text/html; charset=utf-8"
      }
    },
    "/.well-known/change-password": {
      "found": false,
      "data": {
        "status": 404,
        "redirected": true,
        "url": "https://almanac.httparchive.org/.well-known/change-password/"
      }
    },
    "/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200/": {
      "found": false,
      "data": {
        "status": 404,
        "redirected": false,
        "url": "https://almanac.httparchive.org/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200/"
      }
    }
  }
}
https://business-store.dev

WPT result details

Changed custom metrics values:

{
  "_a11y": {
    "tables": {
      "total": 0,
      "total_with_caption": 0,
      "total_with_presentational": 0,
      "total_with_figcaption": 0
    },
    "file_extension_alts": {
      "total_elements_with_alt": 21,
      "total_elements_with_non_empty_alt": 21,
      "total_with_file_extension": 0,
      "file_extensions": {}
    },
    "title_and_alt": {
      "total_alt": 21,
      "total_title": 0,
      "total_both": 0,
      "total_alt_same_as_title": 0
    },
    "th_with_scope_attribute": {
      "total_th": 0,
      "total_with_scope": 0,
      "scopes": {}
    },
    "td_with_headers_attribute": {
      "total_tds": 0,
      "total_with_headers": 0
    },
    "total_anchors_with_role_button": 0,
    "total_role_tab_with_selected_and_controls": 0,
    "placeholder_but_no_label": {
      "total_placeholder": 0,
      "total_no_label": 0
    },
    "divs_or_spans_as_button_or_link": {
      "total_role_button": 0,
      "total_role_link": 0,
      "total_either": 0
    },
    "screen_reader_classes": false,
    "form_control_a11y_tree": [],
    "fieldset_radio_checkbox": {
      "total_radio": 0,
      "total_checkbox": 0,
      "total_radio_in_fieldset": 0,
      "total_checkbox_in_fieldset": 0,
      "fieldsets": []
    },
    "required_form_controls": []
  },
  "_almanac": {
    "01.12": 0,
    "01.13": 0,
    "link-nodes": {
      "total": 3,
      "nodes": [
        {
          "tagName": "link",
          "rel": "stylesheet",
          "href": "/static/css/styles.css"
        },
        {
          "tagName": "link",
          "rel": "canonical",
          "href": "https://business-store.dev"
        },
        {
          "tagName": "link",
          "rel": "shortcut icon",
          "href": "/static/images/logo.png"
        }
      ],
      "attribute_usage_count": {
        "rel": 3,
        "href": 3
      }
    },
    "priority-hints": {
      "total": 0,
      "nodes": [],
      "attribute_usage_count": {}
    },
    "meta-nodes": {
      "total": 3,
      "nodes": [
        {
          "tagName": "meta",
          "charset": "UTF-8"
        },
        {
          "tagName": "meta",
          "name": "viewport",
          "content": "width=device-width, initial-scale=1.0"
        },
        {
          "tagName": "meta",
          "name": "google-site-verification",
          "content": "n5Q1oDMuy8PlmUozhPpVEm0w0noBHnGsY_48hDtgQKM"
        }
      ],
      "attribute_usage_count": {
        "charset": 1,
        "name": 2,
        "content": 2
      }
    },
    "10.5": [
      "schema.org/Organization"
    ],
    "seo-anchor-elements": {
      "internal": 29,
      "external": 0,
      "hash": 0,
      "navigateHash": 0,
      "earlyHash": 0
    },
    "seo-titles": {
      "titleWords": 62,
      "titleElements": 20
    },
    "seo-words": {
      "wordsCount": 415,
      "wordElements": 30
    },
    "input_elements": {
      "total": 0,
      "nodes": [],
      "attribute_usage_count": {}
    },
    "link_protocols_used": {
      "https": 29
    },
    "06.47": 0,
    "08.39": {
      "link": 0,
      "script": 0
    },
    "09.27": {
      "total": 0,
      "nodes": [],
      "attribute_usage_count": {}
    },
    "icon_only_clickables": 0,
    "inline_svg_stats": {
      "total": 0,
      "content_lengths": [],
      "attribute_usage_count": {}
    },
    "images": {
      "pictures": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      },
      "imgs": {
        "total": 21,
        "nodes": [
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          },
          {
            "tagName": "img"
          }
        ],
        "attribute_usage_count": {
          "src": 21,
          "alt": 21,
          "style": 1
        }
      },
      "sources": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      },
      "total_with_srcset": 0,
      "total_with_sizes": 0,
      "total_pictures_with_img": 0,
      "sizes_values": [],
      "loading_values": [],
      "alt_lengths": [
        23,
        18,
        15,
        15,
        12,
        14,
        13,
        14,
        17,
        27,
        27,
        26,
        26,
        26,
        26,
        26,
        26,
        26,
        26,
        21,
        21
      ]
    },
    "videos": {
      "total": 0,
      "nodes": [],
      "attribute_usage_count": {},
      "total_with_track": 0,
      "tracks": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      }
    },
    "audios": {
      "total": 0,
      "nodes": [],
      "attribute_usage_count": {},
      "total_with_track": 0,
      "tracks": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      }
    },
    "iframes": {
      "iframes": {
        "total": 0,
        "nodes": [],
        "attribute_usage_count": {}
      },
      "loading_values": []
    },
    "scripts": {
      "total": 1,
      "nodes": [
        {
          "tagName": "script",
          "type": "application/ld+json"
        }
      ],
      "attribute_usage_count": {
        "type": 1
      }
    },
    "nodes_using_role": {
      "total": 0,
      "usage_and_count": {}
    },
    "headings_order": [
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3,
      3
    ],
    "shortcuts_stats": {
      "total_with_aria_shortcut": 0,
      "total_with_accesskey": 0,
      "aria_shortcut_values": [],
      "accesskey_values": []
    },
    "attributes_used_on_elements": {
      "lang": 1,
      "charset": 1,
      "name": 2,
      "content": 2,
      "rel": 3,
      "href": 32,
      "class": 56,
      "src": 21,
      "alt": 21,
      "style": 1,
      "type": 1
    },
    "body_node": {
      "tagName": "body"
    },
    "html_node": {
      "tagName": "html",
      "lang": "en"
    },
    "document_title": {
      "value": "Our Products",
      "length": 12
    },
    "length_of_h1s": []
  },
  "_doctype": "html",
  "_fugu-apis": [],
  "_lib-detector-version": "6.1.0",
  "_markup": {
    "favicon": true,
    "rel_alternate_mobile": false,
    "compatMode": "CSS1Compat",
    "noscripts": {
      "iframe_googletagmanager_count": 0,
      "total": 0
    },
    "buttons": {
      "types": {},
      "total": 0
    },
    "form": {
      "target": {},
      "method": {},
      "elements": [],
      "total": 0
    },
    "dirs": {
      "html_dir": null,
      "body_nodes_dir": {
        "values": {},
        "total": 0
      }
    },
    "inputs": {
      "types": {},
      "total": 0
    },
    "audios": {
      "autoplay": {},
      "total": 0
    },
    "classes": {
      "unique_names_total": 8,
      "references_total": 56
    },
    "ids": {
      "ids_total": 0,
      "duplicate_ids_total": 0,
      "unique_ids_total": 0
    },
    "images": {
      "picture": {
        "total": 0
      },
      "source": {
        "total": 0,
        "src_total": 0,
        "srcset_total": 0,
        "media_total": 0,
        "type_total": 0
      },
      "img": {
        "total": 21,
        "src_total": 21,
        "srcset_total": 0,
        "alt": {
          "missing": 0,
          "blank": 0,
          "present": 21
        },
        "loading": {
          "auto": 0,
          "lazy": 0,
          "eager": 0,
          "invalid": 0,
          "missing": 21,
          "blank": 0
        },
        "dimensions": {
          "missing_width": 21,
          "missing_height": 21
        }
      }
    },
    "iframes": {
      "total": 0,
      "loading": {
        "auto": 0,
        "lazy": 0,
        "eager": 0,
        "invalid": 0,
        "missing": 0,
        "blank": 0
      }
    },
    "amp": {
      "html_amp_attribute_present": false,
      "html_amp_emoji_attribute_present": false,
      "amp_page": false,
      "rel_amphtml": null
    },
    "data_nosnippet": {
      "valid": 0,
      "wrong_tag_type": 0
    },
    "obsolete_elements": {},
    "svgs": {
      "svg_element_total": 0,
      "svg_img_total": 0,
      "svg_object_total": 0,
      "svg_embed_total": 0,
      "svg_iframe_total": 0,
      "svg_total": 0
    },
    "app": {
      "app_id_present": false,
      "meta_theme_color": null
    },
    "anchors": {
      "hrefs_without_special_scheme": []
    },
    "dom-shape": {
      "bodyNodesCount": 188,
      "bodyLeafNodesCount": 122,
      "depth": {
        "mean": 5.098360655737705,
        "median": 5,
        "mode": 5,
        "stddev": 0.7725817487179121,
        "skew": 0.12731423684410437,
        "range": {
          "min": 2,
          "max": 6
        }
      },
      "bodyNonLeafNodesCount": 66,
      "branchFactor": {
        "mean": 6.636363636363637,
        "median": 5,
        "mode": 3,
        "stddev": 5.655880189347494,
        "skew": 0.6429350542489402,
        "range": {
          "min": 3,
          "max": 41
        }
      },
      "branchFactorByDepth": [
        {
          "depth": 0,
          "count": 1,
          "mean": 5,
          "stddev": 0,
          "skew": null,
          "median": 5,
          "mode": 5,
          "range": {
            "min": 5,
            "max": 5
          }
        },
        {
          "depth": 1,
          "count": 2,
          "mean": 5,
          "stddev": 2,
          "skew": 1,
          "median": 5,
          "mode": 3,
          "range": {
            "min": 3,
            "max": 7
          }
        },
        {
          "depth": 2,
          "count": 3,
          "mean": 20.333333333333332,
          "stddev": 15.69146972791976,
          "skew": 1.104634150521427,
          "median": 17,
          "mode": 3,
          "range": {
            "min": 3,
            "max": 41
          }
        },
        {
          "depth": 3,
          "count": 21,
          "mean": 3,
          "stddev": 0,
          "skew": null,
          "median": 3,
          "mode": 3,
          "range": {
            "min": 3,
            "max": 3
          }
        },
        {
          "depth": 4,
          "count": 20,
          "mean": 11,
          "stddev": 0,
          "skew": null,
          "median": 11,
          "mode": 11,
          "range": {
            "min": 11,
            "max": 11
          }
        },
        {
          "depth": 5,
          "count": 20,
          "mean": 4.2,
          "stddev": 0.9797958971132715,
          "skew": -0.8164965809277256,
          "median": 5,
          "mode": 5,
          "range": {
            "min": 3,
            "max": 5
          }
        }
      ]
    }
  },
  "_meta_viewport": "width=device-width, initial-scale=1.0",
  "_robots_txt": {
    "redirected": false,
    "status": 200,
    "size": 71,
    "size_kib": 0.0693359375,
    "over_google_limit": false,
    "comment_count": 0,
    "record_counts": {
      "by_type": {
        "sitemap": 0,
        "user_agent": 2,
        "allow": 0,
        "disallow": 2,
        "crawl_delay": 0,
        "noindex": 0,
        "other": 0
      },
      "by_useragent": {
        "googlebot": {
          "allow": 0,
          "disallow": 1,
          "crawl_delay": 0,
          "noindex": 0,
          "other": 0
        },
        "googlebot-image": {
          "allow": 0,
          "disallow": 1,
          "crawl_delay": 0,
          "noindex": 0,
          "other": 0
        }
      }
    }
  },
  "_third-parties": [
    {
      "name": "Workbox",
      "version": null
    }
  ],
  "_well-known": {
    "/.well-known/assetlinks.json": {
      "found": false
    },
    "/.well-known/apple-app-site-association": {
      "found": false
    },
    "/.well-known/related-website-set.json": {
      "found": false
    },
    "/.well-known/privacy-sandbox-attestations.json": {
      "found": false
    },
    "/.well-known/gpc.json": {
      "found": false
    },
    "/.well-known/web-identity": {
      "found": false
    },
    "/.well-known/passkey-endpoints": {
      "found": false
    },
    "/.well-known/webauthn": {
      "found": false
    },
    "/.well-known/ucp": {
      "found": true,
      "data": {
        "has_ucp": true,
        "version": "2026-01-11",
        "has_payment_handlers": true,
        "signing_keys_count": 0
      }
    },
    "/robots.txt": {
      "found": true,
      "data": {
        "matched_disallows": {}
      }
    },
    "/.well-known/security.txt": {
      "found": false,
      "data": {
        "status": 404,
        "redirected": false,
        "url": "https://business-store.dev/.well-known/security.txt",
        "content_type": "application/json"
      }
    },
    "/.well-known/change-password": {
      "found": false,
      "data": {
        "status": 404,
        "redirected": false,
        "url": "https://business-store.dev/.well-known/change-password"
      }
    },
    "/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200/": {
      "found": false,
      "data": {
        "status": 404,
        "redirected": false,
        "url": "https://business-store.dev/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200/"
      }
    }
  }
}
https://www.mozilla.org

WPT result details

Cannot display changed custom metrics due to comment size limits, view test JSON instead.

@tunetheweb tunetheweb merged commit ce1f9ab into HTTPArchive:main Feb 26, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants