Blog Technical 8 min read

JSON-LD Image Properties When featuredImage Is Missing

Supply valid json-ld image schema values when your CMS featured image is absent to keep structured data eligible for Google rich results.

json-ld image schemastructured data imagesschema.org imagerich resultsGoogle structured data
JSON-LD Image Properties When featuredImage Is Missing

Google's rich result types — Article, Product, Recipe, Event — all require an image property in their JSON-LD structured data. When the image is missing from the schema, Google may still index the page but the rich result is ineligible. A page that was showing an article rich snippet in search results stops doing so once the image is removed or becomes unavailable.

Generating a fallback image URL for the json-ld image schema property ensures that structured data remains valid even when the CMS featured image is missing. The image does not need to be a photograph — it needs to meet Google's minimum pixel requirements and be publicly accessible.

Requirements

Google's json-ld image schema requirements for rich results

For Article rich results, Google requires the image property to be an ImageObject or URL. The image must be crawlable and indexable. The minimum dimensions are 696 pixels wide, and images should be at 16×9, 4×3, or 1×1 aspect ratios for Article. Larger images (at least 1200px wide) are preferred.

For Product rich results, the image array can contain multiple ImageObjects. Google recommends high-resolution images but does not specify a minimum size for products. The image must be of the actual product, not a logo or text-only placeholder — though enforcement of this rule is inconsistent in practice.

For Event and Recipe rich results, image is required and must be at least 720×405 pixels. The 16×9 ratio is standard. Google uses the first image in the array for rich result display if multiple are provided.

Fallback URL

Generating a json-ld image schema fallback from page metadata

When a CMS article has no featured image, generate a fallback.pics thumbnail URL and use it as the image property in the Article JSON-LD block. Use 1200×630 to satisfy the 'at least 1200px wide' recommendation and the 16×9 ratio. Encode the article title as the text parameter so the image reflects the content.

The fallback image URL must be publicly accessible — no authentication, no cookies required. fallback.pics generates images on the Cloudflare edge and returns them with public caching headers, so Googlebot can fetch and index them without any special configuration.

Implementation text
<!-- Article JSON-LD with conditional image fallback -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "How to Configure Redis Caching for Node.js",
  "description": "A practical guide to Redis caching patterns...",
  "author": {
    "@type": "Person",
    "name": "Alex Chen"
  },
  "datePublished": "2026-01-15",
  "image": {
    "@type": "ImageObject",
    "url": "https://fallback.pics/api/v1/thumbnail/1200x630.png?text=How+to+Configure+Redis+Caching+for+Node.js&theme=purple&style=soft",
    "width": 1200,
    "height": 630
  }
}
</script>

CMS integration

Adding fallback logic to CMS-generated structured data

Most CMS platforms generate JSON-LD from their own schema plugins. WordPress with Yoast SEO generates Article or Product JSON-LD automatically. When the featured image is not set, Yoast omits the image property entirely, making the structured data invalid for rich results.

Override the image property in your WordPress theme or with a Yoast filter hook. Check if the post has a featured image; if not, generate a fallback.pics URL from the post title and inject it into the schema. The wpseo_schema_article filter provides access to the schema array before it is output.

In headless CMS setups (Contentful, Sanity, Strapi), the JSON-LD is generated in your frontend application. Add a utility function that accepts the page data and returns either the CMS image URL or a fallback URL. Call it from the same place where you construct the og:image tag so both are consistent.

Implementation text
// WordPress — Yoast schema filter for image fallback
add_filter('wpseo_schema_article', function($schema) {
  if (empty($schema['image'])) {
    $title = get_the_title();
    $fallback = 'https://fallback.pics/api/v1/thumbnail/1200x630.png'
      . '?text=' . urlencode($title)
      . '&theme=purple&style=soft';

    $schema['image'] = [
      '@type'  => 'ImageObject',
      'url'    => $fallback,
      'width'  => 1200,
      'height' => 630,
    ];
  }
  return $schema;
});

Product schema

Product JSON-LD image when catalog photo is pending

Product pages with missing images drop out of Google Shopping eligibility. The Merchant Center requires at least one product image and reports validation errors when image is absent. A fallback.pics square URL with the product name satisfies the schema requirement while the real product photo is in processing.

Use a square format (1000×1000 or 800×800) for product image fallbacks. Product images in Google Search and Shopping display in square or near-square crop frames. A 1200×630 landscape image will be cropped awkwardly in product carousels.

Implementation text
<!-- Product JSON-LD with fallback image -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Titanium Mechanical Keyboard – 65% Layout",
  "image": [
    "https://fallback.pics/api/v1/square/800?text=Titanium+Mechanical+Keyboard"
  ],
  "offers": {
    "@type": "Offer",
    "price": "149.00",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock"
  }
}
</script>

Validation

Testing JSON-LD image properties with Google's Rich Results Test

Google's Rich Results Test at search.google.com/test/rich-results accepts a URL or code snippet and shows which rich result types the page qualifies for, including any errors. The tool highlights missing required properties and shows a preview of how the rich result will appear in search.

Test with both your real featured image URL and the fallback URL to confirm that the fallback satisfies Google's requirements. Pay attention to the image dimensions reported in the test — if the tool cannot fetch the image, it cannot validate the dimensions and will mark the image property as unresolvable.

Key takeaways

What to standardize before shipping

  • Missing image in JSON-LD structured data makes Article, Product, Recipe, and Event pages ineligible for Google rich results.
  • Google recommends at least 1200px wide for Article images in a 16×9 ratio — a 1200×630 fallback.pics thumbnail satisfies this.
  • Use square fallback images (800×800 or 1000×1000) for Product schema to match Google Shopping's crop frame.
  • Override CMS schema plugins with filter hooks to inject fallback image URLs when featured images are absent.
  • Validate with Google's Rich Results Test to confirm the fallback image satisfies dimension and accessibility requirements.

Production fallback layer

Use fallback.pics anywhere an image URL is accepted.

Start with one deterministic URL and standardize fallback behavior across your design system.

Read the docs