How to Show Your Reviews in BigCommerce Product Page HTML (Step by Step)

Updated 18 Sept 2026Manage Reviews

AI crawlers and Google read your product page’s raw HTML. They do not run your review widget, so by default they see a BigCommerce product page with no reviews on it. This guide fixes that with a one-time theme edit.

For the background, see Make Your Reviews Visible to AI Search (LLM Discoverability).

How it works

Two pieces work together:

  • WiserReview saves the review content on your products. For every product with reviews, it stores two storefront-visible product metafields in the wiserreview namespace: html (your reviews as hidden HTML) and jsonld (the rich snippet). They update on their own whenever reviews change.
  • Your theme prints them. A small addition to your product page template reads those two metafields and prints them into the page HTML, before the page reaches the browser.

The theme edit is needed because a BigCommerce theme cannot call an outside API while it builds a page. It can only print data that already lives in BigCommerce, which is why the review content is saved on the product first.

Before you start

  • Your store uses a Stencil theme – Cornerstone or a theme based on it.
  • You can edit theme files, or you have a developer who can.
  • WiserReview is connected to your store and your reviews are published. Pending reviews are never included.

Step 1: Reconnect WiserReview

Open the WiserReview app in your BigCommerce admin and approve the permissions it asks for. WiserReview needs permission to write product data so it can save the review content onto each product. Until you approve it, nothing is saved and the theme has nothing to print.

Step 2: Make your theme editable

Go to Storefront > Themes. If your active theme is the stock Cornerstone, open Advanced > Make a copy first, then apply the copy. The stock theme’s files cannot be edited.

Step 3: Add the query to your product template

Go to Advanced > Edit theme files and open templates/pages/product.html.

At the very top of the file, between the lines, add the gql: block next to the existing product: block. Use spaces for indentation, never tabs:

---
product:
    ...existing lines stay as they are...
gql: "query wiserReview($productId: Int!) {
  site { product(entityId: $productId) {
    metafields(namespace: \"wiserreview\", first: 5) { edges { node { key value } } }
  } }
}"
---

The two inner quotes around wiserreview must each keep the backslash in front of them, exactly as shown. Without it the theme cannot read the query. BigCommerce fills in $productId for you with the product being viewed.

Step 4: Print the reviews in the page

In the body of the same file, right after {{> components/products/product-view}}, add:

{{#each gql.data.site.product.metafields.edges}}
  {{#if node.key '===' 'html'}}{{{node.value}}}{{/if}}
  {{#if node.key '===' 'jsonld'}}{{{node.value}}}{{/if}}
{{/each}}

The three curly braces are required. With two, the code would be printed on the page as visible text instead of being read as HTML.

Step 5: Save and check

  1. Save & apply the theme file.
  2. Open a product page that has published reviews.
  3. View the page source with Ctrl+U on Windows or Cmd+Option+U on Mac. Do not use Inspect – that shows the page after JavaScript has run, which is not what a crawler sees.
  4. Search the source for wiserreview_.

If you find your review text there, crawlers can see it too. To check the rich snippet, run the same page through Google’s Rich Results Test.

Troubleshooting

Add {{{json gql}}} under the snippet from Step 4, reload the product page, and look at the page source. What you see tells you where the problem is.

  • You see “errors”. The query has a typo. Check that each inner quote still has its backslash, and that you used spaces instead of tabs.
  • You see an empty “edges” list. Nothing is saved on that product yet. Confirm the product has published reviews, and that you approved the app permissions in Step 1.
  • You see nothing at all. This template is not the one drawing the page. Confirm you edited the theme that is applied, not another copy.
  • It works on most products but not one or two. Those products are probably using a custom layout, which uses a different template file. Add the same two pieces to that template as well.

Remove the {{{json gql}}} line once you are done.

Good to know

  • Shoppers see no change. The review HTML is visually hidden and your normal WiserReview widget keeps working exactly as before.
  • It keeps itself up to date. New, edited and unpublished reviews are saved to the product automatically, so the page source stays correct without you touching it again.
  • Redo it after a theme switch. The edit lives in your theme files, so a new theme needs the same two additions.
  • Avoid two Product schemas. If an SEO app already outputs Product schema with a rating on your product pages, print only the html line in Step 4 and leave the jsonld line out.
  • How many reviews are included. The same reviews your widget shows on its first page.