https://pseolint.dev/leaderboard: 8 of 8 <img> tags declare neither width/height attributes nor inline sizing (e.g. https://tonfoyer.fr/opengraph-image?ef2f5ca556314a1d, https://codexmachina.dev/previews/dashboard/dashboard.jpg, https://pseolint.dev/opengraph-image?c80e752142bf0595). Without an aspect ratio the browser cannot reserve space, so content shifts as each image loads, which is what Cumulative Layout Shift measures.
↗ pseolint.dev/leaderboardSet the intrinsic width and height attributes on each <img> and let CSS scale it (width: 100%; height: auto). The browser derives aspect-ratio from the attribute pair and reserves the box before the bytes arrive. In a template, bind both from the same data source as the src.