ImageObject Schema Missing
Issue No: 228
Category: Structured Data & Rich Results
Issue type: Suggestion
Priority: STANDARD
Description
Pages using Article or Product schema declare images as plain URL strings instead of full ImageObject blocks. Without ImageObject, crawlers receive no metadata about image dimensions, license, or caption — reducing eligibility for Google Image rich results and AI Overview image citations.
How do we capture it
- Detect
Article,Product,Recipe,VideoObject, orNewsArticleschema blocks on the page - Check whether the
imageproperty is a plain URL string (e.g."image": "https://...") instead of anImageObjectblock - If
imageis a string or an array of strings → trigger suggestion - If
imageis already anImageObjectblock → validateurl,width,heightare present
What to store
StructuredDataAudit record with schemaType = ImageObject, issueNumber = 154, plus StructuredDataField rows:
| Field | Type | Comment |
|---|---|---|
has_url | boolean | url or contentUrl property present |
has_width | boolean | width in pixels declared |
has_height | boolean | height in pixels declared |
has_caption | boolean | caption property present |
has_license | boolean | license URL property present |
parent_schema | string | Schema type the ImageObject is nested inside |
Core audit fields used: isPresent, hasUrl, rawJson
Condition for trigger
-
Trigger Rule 1: Image declared as plain URL string
- Target Field:
isPresent - Evaluation Logic:
isPresent = false(ImageObject block absent; image is a plain string) - Severity: STANDARD
- Diagnostic Message: "Image declared as plain URL string in schema — replace with an
ImageObjectblock includingurl,width, andheight."
- Target Field:
-
Trigger Rule 2: Width or height missing
- Target Field:
has_width/has_height - Evaluation Logic:
has_width = falseORhas_height = false - Severity: STANDARD
- Diagnostic Message: "
ImageObjectpresent butwidthorheightis missing — Google requires dimensions for image rich results."
- Target Field:
-
Trigger Rule 3: License missing
- Target Field:
has_license - Evaluation Logic:
has_license = false - Severity: STANDARD
- Diagnostic Message: "
ImageObjecthas nolicenseproperty — adding a license URL enables Google Image licence filter eligibility."
- Target Field:
Sources
- Schema.org — ImageObject
- Google — Image structured data
- Google — Product structured data (image requirements)
- Google — Article structured data
Long description
When schema types like Article or Product declare images, Google strongly prefers a full ImageObject block over a plain URL string. The ImageObject communicates exact pixel dimensions, a human-readable caption, and a license URL — all of which directly influence rich result eligibility.
Google's minimum image requirements for rich results:
- Minimum 50,000 pixels (width × height)
- Aspect ratio between 1:1 and 16:9
- Crawlable and indexable URL
Declaring as a plain string (not recommended):
{
"@type": "Article",
"image": "https://www.example.com/photo.jpg"
}
Correct — full ImageObject block:
{
"@type": "Article",
"image": {
"@type": "ImageObject",
"url": "https://www.example.com/photo.jpg",
"width": 1200,
"height": 630,
"caption": "A team of engineers reviewing code on a whiteboard.",
"license": "https://creativecommons.org/licenses/by/4.0/"
}
}
Multiple images (array of ImageObjects):
{
"@type": "Product",
"image": [
{
"@type": "ImageObject",
"url": "https://www.example.com/img-1x1.jpg",
"width": 800,
"height": 800
},
{
"@type": "ImageObject",
"url": "https://www.example.com/img-16x9.jpg",
"width": 1280,
"height": 720
}
]
}
Google recommends providing multiple aspect ratios (1:1, 4:3, 16:9) to serve all rich result surface areas.
Key properties:
| Property | Required | Description |
|---|---|---|
url | Yes | Absolute URL of the image |
width | Yes | Width in pixels |
height | Yes | Height in pixels |
caption | Recommended | Human-readable description of the image |
license | Recommended | URL of the image license (enables licence filter) |
contentUrl | Optional | Alternative to url for the raw image file location |
How to Fix
- In every
Article,Product,Recipe, orNewsArticleschema block, replace plain image URL strings with fullImageObjectblocks - Always include
url,width, andheight - For articles: provide at least one image at 1200×630px (16:9)
- For products: provide at least one 1:1 ratio image and one 16:9 image
- Add
captionwith a meaningful description matching the visible image - Add
licensewith the appropriate Creative Commons or custom license URL where applicable - Validate at Rich Results Test and Schema Markup Validator