How the league works
What we measure, how pages rank, and what data we keep.
Lightest goes first
Pages are ranked by transferred bytes, from lightest to heaviest. That includes HTML, CSS, JavaScript, images, fonts, and other network responses. KB means 1,000 bytes; MB means 1,000,000.
Version one has a single open leaderboard. Rank is a measurement, not a universal quality score. Weight classes will come later.
The official scale
Every weigh-in uses a fresh Chrome session, a 1440 × 900 desktop viewport, an empty cache, and no service worker. We wait for the load event and one second of network quiet, with a 25-second limit.
Chrome reports compressed transfer sizes, including response overhead and redirects. JavaScript includes script resources.
Entering a contender
Submit a public page without query parameters or login details. Each URL gets a permanent scorecard. The latest successful weigh-in determines rank; older measurements remain in its record.
A page can reweigh once every 24 hours. Ties go to the earlier measurement, then the scorecard ID.
No contested decisions
Broken content resources, unsuccessful responses, and unfinished loads do not qualify. A missing site icon does not invalidate an otherwise complete page. Some sites block automated browsers, and we do not bypass those blocks.
Ads, location, time, and cookie banners can change results. We don’t scroll, sign in, accept cookies, or exercise every interaction. Accessibility is not scored in this version.
Audience privacy
We count page views and approximate daily visitors so we can learn how the league is used. We record the page, device category, country, external referrer host, and campaign tags when present.
We do not store IP addresses, full browser strings, or tracking cookies. Anonymous visitor identifiers rotate every day, and Do Not Track and Global Privacy Control signals are respected.
Vercel Web Analytics also receives anonymous, cookie-free page-view data for the public site.