ImageObject Schema

ImageObject is the schema.org type that describes an image as structured data — used standalone for photo-licensing metadata (the Licensable badge) or, more often, nested inside Product, Article, Recipe, and Organization schema. Here's when a plain URL is enough and when you need the full object.

First published: Jul 2, 2026 · Last updated: Jul 18, 2026 · Advanced
demand #29 in Structured Data#59 in On-Page#267 in Technical SEO#360 on the site
1 evidence signal on this page

ImageObject is the schema.org type for describing an image as structured data — but it's rarely a destination on its own. Its main job is as the value of an image or logo property nested inside another type: Product.image, Article.image, Recipe.image, Organization.logo, WebPage.primaryImageOfPage. When a property just wants a picture, a plain URL string works; you upgrade to a full ImageObject when you want to attach metadata (owner, license, caption, dimensions). The one visible feature it directly unlocks is Google's Licensable badge, and the trigger is specifically the license property — contentUrl plus creator/creditText/copyrightNotice alone won't do it. Use contentUrl over url (Google says it's more precise). Two facts most guides miss: Recipe's image is required for the recipe rich result but has no impact on your normal text-result thumbnail (Google clarified this June 2025), and Product's image is not in Google's formal required/recommended lists at all. None of it is a ranking factor — it earns eligibility, not rank. And every uncited X% traffic-lift stat you'll see attached to image schema traces to no source; ignore them.

TL;DR — ImageObject (Thing > CreativeWork > MediaObject > ImageObject) is primarily a nested value type, not a standalone destination schema. It’s the value of Product.image, Article.image, Recipe.image, Organization.logo, WebPage.primaryImageOfPage. A plain URL works when you don’t need metadata; upgrade to a full object for licensing/attribution. The Licensable-badge recipe is contentUrl + at least one of creator/creditText/copyrightNotice/license — but license specifically is what makes the badge eligible. Use contentUrl over url (Google calls it more precise). Two commonly-missed facts: Recipe’s image is required but has no impact on your text-result thumbnail (Google, June 2025), and Product’s image is not in Google’s formal required/recommended lists. It’s not a ranking factor — same indirect story as all schema.

Evidence for this claim Schema.org ImageObject describes an image media object and its properties; vocabulary validity alone does not create a Google rich result. Scope: Schema.org vocabulary definition, distinct from search-feature eligibility. Confidence: high · Verified: Schema.org: ImageObject Evidence for this claim Google documents structured data or IPTC metadata for image licensing information and the Licensable badge in Google Images. Scope: Current Google image-license metadata feature; not generic ImageObject rich-result eligibility. Confidence: high · Verified: Google Search Central: Image license metadata

Where ImageObject sits, and how it’s actually used

On schema.org, ImageObject sits in the hierarchy as Thing > CreativeWork > MediaObject > ImageObject. That lineage is the whole story of its properties: it inherits licensing and attribution fields from CreativeWork (license, acquireLicensePage, creditText, copyrightNotice, creator, author) and file fields from MediaObject (contentUrl, encodingFormat, height, width, contentSize, uploadDate), plus a few of its own like caption and exifData.

It gets used two ways:

  • Standalone — on a page whose whole point is describing one image (a photo-licensing landing page). The reason to do this is almost always the Licensable badge.
  • Nested — as the value of another type’s image, logo, or primaryImageOfPage property. This is by far the more common case, and it’s why ImageObject is best framed as the utility type the CreativeWork subtypes quietly depend on rather than a schema type you point people at. (It’s the thematic cousin of the creative-works schema\"Creative Works schema\" is a practitioner label for the schema.org CreativeWork subtypes used to mark up authored content — Article, AudioObject, Book, Course, Dataset, Movie, Recipe, and VideoObject. bucket — Article, Recipe, and VideoObject all lean on ImageObject through their image properties without ever making it their headline.)

The key mental unlock: schema.orgSchema markup is code that uses the schema.org vocabulary to label what your content means so search engines can understand it and show rich results. It's most often written in JSON-LD, and it's not a direct ranking factor. and Google both accept “a URL or a fully described ImageObject” for an image property. A bare URL string is a perfectly valid ImageObject value. You only pay the cost of the full object when you have metadata worth attaching.

The core properties

contentUrl vs url — use contentUrl

Both point at the image file, but Google is explicit about which to prefer. From the image-metadata documentation: Google uses contentUrl “to determine which image the photo metadata applies to.” And on the choice between the two: “While the url property is not as precise and we recommend you use contentUrl instead, existing markup may still use url.” Translation: contentUrl pins down which image the metadata describes; url is a looser legacy fallback that still works but shouldn’t be your default.

license and acquireLicensePage — the Licensable pair

This is the part with a visible payoff. license links to a page describing the image’s licensing terms; acquireLicensePage links to where someone can actually buy a license. They pair naturally — one says “here are the terms,” the other says “here’s where to buy one” — but they’re not equal in weight, which the next section covers.

creator, creditText, copyrightNotice — the attribution trio

These credit the image. One nuance worth keeping: creator isn’t necessarily a person. Google’s doc: “This is usually the photographer, but it may be a company or organization (if appropriate).”

caption, exifData, height/width, thumbnail

Descriptive and technical metadata. Useful, occasionally surfaced, but none of them trigger a search feature on their own.

Getting the Licensable badge

This is the one exact recipe worth memorizing, because the requirement is subtle.

The required structure: you need contentUrl, and at least one of creator, creditText, copyrightNotice, or license. Google’s doc: “In addition to contentUrl, you must include one of the following properties: creator, creditText, copyrightNotice, license. Once you include one of these properties, the other three properties become recommended in the Rich ResultsRich results (formerly 'rich snippets') are enhanced search listings — stars, images, prices, breadcrumbs, video thumbnails, and more — that Google and Bing build from structured data. They're a display feature, not a ranking factor, and eligibility never guarantees they'll show. Test.”

But the badge itself has a stricter trigger. Passing validation is not the same as being badge-eligible. Google: “If you’re using structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. to specify an image, you must include the license property for your image to be eligible to be shown with the Licensable badge.” So creator or creditText alone will validate fine — and get you no badge. The license property is the switch. Google adds: “We recommend that you also add the acquireLicensePage property if you have that information.”

Structured data isn’t the only path. IPTC embedded photo metadata is an equally valid way to earn the same eligibility — no schema.org markup required at all. But if you use both and they disagree, Google is explicit about the tiebreaker: “If you choose to use both IPTC photo metadata and structured data, and if any information conflicts between the two, Google will use the structured data information.” That’s the reverse of what a lot of people assume (that the file’s embedded metadata is the more “authoritative” source).

One policy that catches people: the image URL has to be reachable. Google’s structured-data policies say “All image URLs specified in structured data must be crawlable and indexable” — block the image host in robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. and the whole thing silently fails.

ImageObject inside specific types

Recipe — required, and the June 2025 clarification

For Recipe, image is required, and it has real guidance: crawlable and indexable, must represent the dish, and Google “recommend[s] providing multiple high-resolution images (minimum of 50K pixels when multiplying width and height) with the following aspect ratios: 16x9, 4x3, and 1x1.”

Here’s the counterintuitive part most guides haven’t caught up to. As of a June 2025 doc update, Google states plainly: “Specifying the image property in Recipe markup has no impact on the image chosen for a text result image.” In other words, your Recipe image governs recipe rich-result eligibility — not the thumbnail that shows next to your normal blue-link result. That’s a separate system entirely (covered below). Barry Schwartz reported this change at Search Engine Land on June 5, 2025.

Product — not formally required (the myth-bust)

Almost everyone asserts that images are “required” for Product rich resultsRich results (formerly 'rich snippets') are enhanced search listings — stars, images, prices, breadcrumbs, video thumbnails, and more — that Google and Bing build from structured data. They're a display feature, not a ranking factor, and eligibility never guarantees they'll show.. They’re not — at least not per Google’s documented lists. The product-snippet doc’s formal Required properties are name plus one of review/aggregateRating/offers; the Recommended list is aggregateRating, offers, review. The image property appears only inside the worked examples, never in the required/recommended tables. Add product images anyway — a listing without a photo converts worse — but know that’s a UX-and-Shopping argument, not a documented schema requirement. (And don’t conflate it with Merchant CenterGoogle Merchant Center (GMC) is a free platform where retailers upload and manage product data so their products can appear across Google — Shopping, organic Search product grids, Images, Lens, and AI surfaces. Since 2020 it powers free (organic) product listings, not just paid Shopping ads.’s separate, stricter product-image resolution rules — a different system from ImageObject entirely.)

Article and Organization

For Article, image is a recommended property that feeds Article’s eligibility; it does not produce a dedicated image card of its own. For Organization.logo, the logo has its own separate requirements (and is the image Google can use for things like knowledge-panel and some rich-result branding) — worth marking up, but it’s a logo-specific job, not general ImageObject licensing.

Controlling your Search / Discover thumbnail

If you actually want to influence the image Google shows as your page’s preview, that’s a different mechanism from any of the above — and Google clarified it in a March 2026 documentation update. From the image-SEO best-practices doc: “Google’s selection of an image preview is completely automated and takes into account a number of different sources to select which image on a given page is shown on Google.”

Three parallel, non-exclusive signals feed that choice:

  1. The schema.org primaryImageOfPage property on your WebPage.
  2. An image property attached via mainEntity / mainEntityOfPage.
  3. The og:image meta tag.

Google’s guidance for all three: “Choose an image that’s relevant and representative of the page. Avoid using a generic image (for example, your site logo) or an image with text in the schema.org markup or og:image meta tag.” Matt G. Southern covered the update at Search Engine Journal on March 2, 2026, noting the key point: schema markupSchema markup is code that uses the schema.org vocabulary to label what your content means so search engines can understand it and show rich results. It's most often written in JSON-LD, and it's not a direct ranking factor. and og:image both count — they’re parallel inputs, not an either/or.

C2PA / “About this image” — adjacent, not ImageObject

One forward-looking sibling worth a mention, clearly scoped as separate from ImageObject licensing: C2PA content-provenance metadata (embedded in the image file, not schema.org). Google: “If an image contains C2PA metadata, Google can extract those details and may show information in the ‘About this image’ feature, such as how the image was created or if it was edited with AI tools.” This is an AI-provenance signal on the same “About this image” surface as licensing info — but it lives in the file’s manifest, not in your ImageObject markup. Don’t fold the two together.

Is ImageObject a ranking factor?

No — same indirect story as all structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding.. The standing Google position (Gary Illyes, John Mueller) is that schema helps engines understand content and can unlock eligibility for features, but it isn’t a direct ranking input. For ImageObject specifically, the wins are concrete but narrow: the Licensable badge (via license), rich-result eligibility for parent types like Recipe (via a valid image), and thumbnail-selection input (via primaryImageOfPage). None of those is “rank higher,” and Google’s own troubleshooting guidance is explicit that even a fully valid image-metadata block isn’t guaranteed to display. The same reviewed sources don’t establish an AI-citation effect from ImageObject either — I haven’t foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. a source that shows it improves your odds of being cited in an AI answer. Anyone selling you a specific percentage traffic lift from image schema is quoting a number that traces to no source.

Common mistakes

  • Using url instead of contentUrl. Both work; Google prefers contentUrl as more precise.
  • Forgetting license specifically. The other three attribution properties validate but don’t trigger the Licensable badge.
  • Assuming Recipe’s image controls your text-result thumbnail. It doesn’t (Google, June 2025) — it only affects recipe rich-result eligibility.
  • Assuming Product images are formally required schema. They’re not in Google’s documented lists (still add them for UX/Shopping).
  • Blocking the image URL. A robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere.-disallowed or noindexed image host means the markup silently fails Google’s crawlable-and-indexable requirement.
  • Repeating invented performance stats. Nearly every competing guide cites an uncited “+X% CTR/traffic” figure. None trace to a source.

Where this fits

ImageObject is a deep dive in the structured-data sub-cluster, alongside its sibling schema-type articles (article-schema, recipe-schema, product-schema, videoobject-schema, organization-schema). Thematically it’s the utility type the creative-works schema\"Creative Works schema\" is a practitioner label for the schema.org CreativeWork subtypes used to mark up authored content — Article, AudioObject, Book, Course, Dataset, Movie, Recipe, and VideoObject. family leans on, and it lives under the Structured Data for SEOStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. hub. For the broader picture of alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search., formats, image sitemapsAn image sitemap is a sitemap (or an extension added to an existing sitemap) that lists the images on your pages using Google's image namespace, helping Google discover images it might otherwise miss., and lazy-loading, that’s a separate image-SEO topic; this article is specifically the “how do I describe an image as data” piece those others quietly depend on.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.