How to fix seo product price not in html on Shopify

Render product prices in server-side HTML so search engines and rich-result parsers can read them without executing JavaScript.

Steps for Shopify

  1. In your Shopify admin, go to Online Store → Themes → click Actions → Edit code.
  2. Open the product template file: templates/product.json (Dawn and newer themes) or templates/product.liquid (older themes). The actual price rendering lives in a section — look in sections/main-product.liquid or similar.
  3. Confirm the price is output using a Liquid tag such as {{ product.price | money }} or {{ product.selected_or_first_available_variant.price | money }}. These render server-side and will appear in the static HTML.
  4. If a third-party app is overriding the price display with JavaScript, disable or reconfigure that app so Shopify's native Liquid price tag is what appears in the HTML source.
  5. Shopify automatically injects Product JSON-LD on product pages in most themes; verify it includes 'offers.price' by using View Page Source and searching for 'schema.org'.
  6. Use Online Store → Themes → Preview, then View Page Source in your browser to confirm the price value is visible in raw HTML before publishing.
Official Shopify documentation ↗
{
  "@context": "https://schema.org/",
  "@type": "Product",
  "name": "Your Product Name",
  "offers": {
    "@type": "Offer",
    "priceCurrency": "USD",
    "price": "29.99",
    "availability": "https://schema.org/InStock",
    "url": "https://example.com/products/your-product"
  }
}

What is seo product price not in html?

Every product page has a price, but if that price is inserted into the page by JavaScript after the page loads, it exists only "in the browser" — it is never written into the raw HTML file that the server sends. Search engines and other crawlers fetch that raw HTML first. If your price only appears after JavaScript runs, many crawlers simply never see it. "Rendering the price in server HTML" means the price number is baked directly into the HTML source code the server delivers, visible the moment the page is downloaded — no JavaScript required to reveal it.

Google uses prices shown in static HTML to power Shopping rich results and structured-data price snippets in search, which increase click-through rates and can drive significantly more organic traffic to your product pages. When a price is JavaScript-only, Google's crawler may index the page without a price, preventing your listings from qualifying for rich results like price drops or availability badges. Non-JS crawlers (price-comparison sites, affiliate aggregators, accessibility tools) also cannot read JS-rendered prices, shrinking your distribution. Additionally, if prices shown to users differ from what crawlers can read, Google may flag the page for inconsistent content, hurting your overall crawl trust and rankings.

See the complete Seo product price not in html guide for every platform and the full background.

Not sure if your Shopify store has this?

Run a free SEOLZ audit — we’ll find seo product price not in html and every other issue across your whole site.

Scan my site free

Fix seo product price not in html on another platform