All checks
Performancelowimages-missing-dimensionschecked on every page we scan

Images have no width and height

One or more images set neither a width nor a height attribute, so the browser does not know how much space to reserve and the page can jump as each image loads — the layout shift that Core Web Vitals penalise and that makes people mis-tap.

Why it matters

One or more images set neither a width nor a height attribute, so the browser does not know how much space to reserve and the page can jump as each image loads — the layout shift that Core Web Vitals penalise and that makes people mis-tap. Add width and height attributes (the intrinsic pixel size; CSS can still scale it), or set an aspect-ratio in CSS. (Count in the evidence.)

How ShipReady detects it

Markup hygiene read straight from the fetched HTML — no extra requests. Page-scoped because images and scripts differ between routes.

Detection is deterministic. ShipReady reports this only when it observes the condition directly, and prefers to miss a real problem over inventing one. Rule version 1.0.0.

How to fix it

This is the prompt ShipReady puts in your report — written to be pasted straight into Cursor, Claude Code, or whichever assistant built the app.

One or more images have neither a width nor a height attribute, so the browser cannot reserve space for them and the page jumps as they load — the layout shift Core Web Vitals penalise. Add width and height attributes set to the image's intrinsic pixel size (CSS can still scale it responsively — the attributes only give the browser an aspect ratio to reserve). In Next.js use next/image, which sets these for you; otherwise add the attributes in your image component or, at minimum, set an explicit aspect-ratio in CSS for the image's container.

Frequently asked questions

What does "Images have no width and height" mean?
One or more images set neither a width nor a height attribute, so the browser does not know how much space to reserve and the page can jump as each image loads — the layout shift that Core Web Vitals penalise and that makes people mis-tap.
How serious is it?
ShipReady rates this low. Worth fixing. Small individually, and they accumulate.
How do I fix it?
Paste the fix prompt on this page into Cursor, Claude Code or your AI editor. It is the same prompt ShipReady puts in your report.
Can I check my own site?
Yes — ShipReady scans up to ten pages of any public site for free and reports this alongside every other check. The free report lists every issue it finds and shows full evidence and a fix prompt for the critical and high-severity ones; medium and low findings are counted and unlock on Pro.

Related checks

Run this check on your site

ShipReady checks this and 193 other things across up to ten pages of your site, with an AI-ready fix for each. Free, no signup.