- Shipped
- August 25, 2026 at 4:36 PM UTC
- Author
- Kamo
- Commit
- 16a2c73
Twelve rather than one because there is no single place a logo lives. A Shopify store declares it in JSON-LD; WordPress puts it in a header img; a React app renders its header after hydration so only the manifest and favicons survive in the initial HTML; a hand-built site has nothing but /favicon.ico. Any one signal finds a logo on about half of real sites. Scored twice on purpose -- what the page CLAIMS, then what the bytes turn out to be. The best possible declaration can still point at a 1x1, and a fine 512px PNG in a footer is probably a payment-provider badge. Two misses the tests caught, both real shapes rather than hypotheticals: selecting on img[src] skipped <img data-src> entirely, which is what a lazy loader ships for an above-the-fold header logo since the src is written by JS we never run; and the inline-SVG size floor rejected an svg the site had itself classed "logo", when a compact mark really can be a hundred bytes of path data. A site's own claim now outranks the floor.