Playbook · Shopify VideoObject schema / product videos not indexing

Shopify VideoObject schema / product videos not indexing in Google.

Written for a Shopify DTC owner whose product page or landing page shows a video while VideoObject schema / product videos never index — or Search Console Video reports stay empty. DIY-first: prove view-source VideoObject JSON-LD with thumbnailUrl, uploadDate, and contentUrl or embedUrl; fix theme embeds and YouTube / Vimeo players; recheck Rich Results Test and Search Console. Distinct from HowTo rich results / HowTo schema, FAQ rich results / FAQPage schema, Product structured data / JSON-LD missing, AggregateRating / review stars not in Google, and Open Graph / og:image missing. No earnings claims, no invented case studies.

Nico at Latch AI Ops · Sep 8, 2026 · ~12 minute read

Buy the 72-hour install — $997HowTo schemaOpen GraphMerchant FAQ

01

VideoObject / product videos not indexing — not HowTo, FAQPage, Product, AggregateRating, Open Graph.

Several schema and share products can look like “my rich media is broken.” They do not share a settings panel. This page is only when VideoObject schema / product videos are not indexing in Google on a Shopify product, collection, or page. HowTo rich results are shopify-howto-schema-not-eligible. FAQPage / FAQ rich results are shopify-faq-schema-not-showing. Product structured data / JSON-LD missing or invalid is shopify-structured-data-missing. AggregateRating / review stars in Google are shopify-review-stars-not-in-google. Open Graph / og:image (and og:video social share tags) are shopify-open-graph-image-missing. This page is only: VideoObject markup for a visible product or page video (theme embed, YouTube, Vimeo, hosted MP4).

Six ordinary reasons VideoObject fails or never indexes: theme renders an iframe / HTML5 player with no VideoObject JSON-LD, SEO app VideoObject fields empty or missing thumbnailUrl / uploadDate, YouTube embed without a matching embedUrl / contentUrl, media URL blocked from crawl, duplicate VideoObject graphs fighting, or you validated HowTo / FAQPage / Product / AggregateRating / Open Graph instead. Walk them in that order. You already pay for Shopify and Search Console. You do not need another SEO seat to view-source VideoObject.

02

Prove view-source VideoObject JSON-LD vs Rich Results Test / Search Console Video.

Open the public product or page URL that shows the video (not a draft, not a password page, not a theme editor preview). View-source and collect every script type="application/ld+json" block. Look for "@type": "VideoObject" with name, description, thumbnailUrl, uploadDate, and either contentUrl (direct media) or embedUrl (YouTube / Vimeo / player). Note whether the URLs match the visible player.

Paste the same public URL into Google Rich Results Test. Check Search Console Video indexing / Enhancement reports for that URL (detected, indexed, or excluded). Honest proof: if HowTo fails while VideoObject is fine, leave for shopify-howto-schema-not-eligible. If FAQPage fails, leave for shopify-faq-schema-not-showing. If Product / Offer schema is missing, leave for shopify-structured-data-missing. If AggregateRating stars fail, leave for shopify-review-stars-not-in-google. If social share preview / og:image is wrong, leave for shopify-open-graph-image-missing. Do not mix those proofs with missing VideoObject / video not indexing.

03

Theme video embeds without VideoObject, SEO-app empty markup, or iframe-only players.

Shopify themes often drop a product video section or custom Liquid iframe without emitting VideoObject JSON-LD. SEO apps may ship a VideoObject field that stays empty, omits thumbnailUrl / uploadDate, or overrides the theme with invalid markup. Some installs only inject Product / FAQPage and never VideoObject.

Fix: On the template that shows the player, emit valid VideoObject JSON-LD with name, description, thumbnailUrl, uploadDate, and contentUrl or embedUrl. If an SEO app owns schema, fill its VideoObject fields completely and disable empty VideoObject blocks. After save, view-source and confirm VideoObject appears once. If the real bug is Product Offer schema missing on the same URL, that companion issue is shopify-structured-data-missing — different product; Product there, VideoObject here.

04

YouTube / Vimeo product videos: embedUrl vs contentUrl, thumbnailUrl, uploadDate.

Hosted players are fine when VideoObject points at the real embed. Common breaks: theme embeds YouTube with a watch URL while schema has a blank embedUrl, contentUrl points at a private / geo-blocked file, thumbnailUrl 404s or uses a relative path, uploadDate missing or inventing a future date, or the player is behind a click-to-load that never exposes a stable media URL to crawlers.

Fix: Prefer embedUrl for YouTube / Vimeo iframe embeds and contentUrl for direct MP4 / Shopify Files media. Use an absolute HTTPS thumbnailUrl that returns 200. Set uploadDate to the real publish date. Confirm the video is public on the host (unlisted YouTube can still work for embeds; private will not). Recheck Rich Results Test after each change. Open Graph og:video tags are a different product — shopify-open-graph-image-missing — fix social share there, VideoObject indexing here.

05

Search Console Video indexing lag, noindex, or media blocked from crawl.

Markup can validate in Rich Results Test while Search Console still shows the video as not indexed. Common cases: page noindex / robots blocking the URL, media URL returns 403 / 404 to Googlebot, CDN hotlink rules, password / Markets URL serving a template without the VideoObject block, or crawl lag after a fresh upload.

Fix: Confirm the page URL is indexable (companion robots issues often live under shopify-robots-txt-blocking-indexing). Confirm contentUrl / embedUrl / thumbnailUrl return 200 to an anonymous fetch. Recheck Markets / translated URLs if primary-language VideoObject works and locale URLs do not. Request indexing after markup validates. Google still decides video indexing — no install sells a video-in-Google guarantee.

06

You tested HowTo, FAQPage, Product, AggregateRating, or Open Graph instead.

HowTo rich results not showing or ineligible is shopify-howto-schema-not-eligible. FAQ rich results / FAQPage schema not showing is shopify-faq-schema-not-showing. Product structured data / JSON-LD missing or invalid is shopify-structured-data-missing. AggregateRating / review stars not showing in Google is shopify-review-stars-not-in-google. Open Graph / og:image missing or wrong on social share is shopify-open-graph-image-missing.

The only honest test for this page: view-source on a product or page with a visible video shows missing, empty, mismatched, or non-indexing VideoObject — theme iframe-only embed, YouTube / Vimeo without embedUrl / contentUrl, missing thumbnailUrl / uploadDate, crawl-blocked media, or you validated a different schema type. Capture view-source + Rich Results Test + Search Console Video status, repair those causes, request indexing. Anything else is a different product.

07

When to stay DIY vs pay $997.

Stay DIY if you can spend one afternoon on the list above: prove view-source VideoObject / Rich Results Test / Search Console Video, emit valid VideoObject on the product or page, fix YouTube / Vimeo embedUrl or contentUrl + thumbnailUrl + uploadDate, and stop confusing HowTo / FAQPage / Product / AggregateRating / Open Graph with missing VideoObject indexing. That is the whole playbook. No agency required. Short answers also live on the merchant FAQ. Related pages: shopify-howto-schema-not-eligible, shopify-faq-schema-not-showing, shopify-structured-data-missing, shopify-review-stars-not-in-google, shopify-open-graph-image-missing.

Pay for help when the work is not the VideoObject row — it is connecting the stack you already have so lead capture is not dying in DMs, storefront and checkout-ready exceptions land in a channel you already check, and the live store is one workflow instead of a spreadsheet plus a Slack bot you forgot. That is the Latch AI Ops install.

What $997 USD one-time buys: lead capture on the live store, ops alerts in a channel you already check, and a checkout-ready workflow. 72 hours after collaborator access, not after payment. One live Shopify store. Access plus a delivery thread. Store URL collected at checkout. Not a SaaS seat, not an SEO agency retainer, not a rankings or video-indexing guarantee, not a theme rebuild.

Other shops' public ranges, not testimonials: a checkout / ops install typically runs $500–$2,500. A full ops consulting block typically runs $2,000–$5,000. $997 is the cheap end of that work, sold as a 72-hour install of three systems — not as an earnings number or ranking-lift claim.

What it does not buy: more orders, recovered revenue, a forever SERP / rankings / video-indexing guarantee, or a case study. Latch AI Ops has not published customer proof because there are no customers yet. You are buying the install.

Checkout is on Whop. Operator is Nico. United States offer. You can revoke collaborator access after handoff. We do not take owner passwords.