Skip to content

Product info blocks

The six blocks that describe the product before anyone chooses anything. All of them live in the Product section and reorder freely — see the blocks overview for how that works.

The kicker line above the title: product type (or the collection the shopper came from), vendor, and SKU. Type and vendor sit on the left, SKU on the right.

SettingTypeDefaultWhat it does
Show product typeCheckboxOnShows product.type — “Shell”, “Pack”, “Headwear”
Show vendorCheckboxOffAppends the vendor after an em dash
Show SKUCheckboxOnShows the selected variant’s SKU

The first slot falls back to the collection the shopper arrived through whenever it can’t show a type — either because show_type is off, or because the product has no type set. So the line still says something (“Outerwear”, “Spring drop”) rather than going blank, and a shopper who came from a collection keeps that context on the page.

If the shopper arrived from search, an ad or a direct link there’s no collection in scope, and the slot is simply empty.

The <h1>. No settings — it renders product.title in the display face and nothing else.

It’s a block so you can move it, not so you can configure it. Putting the price or the kicker above it is a legitimate layout choice; so is deleting it on a page that leads with a lookbook plate and names the piece further down.

Current price, a struck-through compare-at price when the product is on sale, unit price where Shopify has one, and an optional tax note.

SettingTypeDefaultWhat it does
Tax noteText(empty)A small dim line under the price — “Tax included. Shipping calculated at checkout.” Hidden when empty

Three behaviours worth knowing:

  • It re-prices on variant change. The section’s script rewrites the price in place when the shopper picks a different size or colour, using the real variant data rather than a page reload.
  • It re-prices on subscription change too. When a plan is selected the figure shown comes from that variant’s selling plan allocation, so the price on screen is the price checkout charges. See Subscriptions.
  • The compare-at price is always rendered, hidden when there is nothing to strike through. A subscription discount needs something to strike through as well, and that’s only decided after the block renders — so the element has to already exist.

Unit price appears automatically for products Shopify tracks by measurement (per 100 ml, per kg) — there’s no setting, because there’s nothing to decide.

The product description, either as a short lede for the buy column or in full.

SettingTypeDefaultWhat it does
LengthSelectledelede (short) truncates to plain text; full renders the complete rich-text description
Word limitRange 10–80, step 228Word limit for the short version. Only shown when length is lede

The short version strips all HTML and truncates, so bold, lists and links are discarded — it’s a teaser, not a formatted excerpt. The full version keeps the formatting.

The block renders nothing when the product has no description.

Star rating and review count, read from the standard reviews metafields that Shopify’s own reviews app and most third-party review apps write to: reviews.rating and reviews.rating_count.

SettingTypeDefaultWhat it does
Reviews linkText#reviewsWhere the stars link to — usually an anchor to a reviews app block further down the page

Two things it deliberately does not do:

  • No invented ratings. If no rating has been written, or the count is zero, the block renders nothing at all. An empty five stars or “0 reviews” reads worse than no rating on a product that genuinely has none yet.
  • No rounding. The filled star layer is clipped to the exact percentage, so 4.3 looks like 4.3 rather than snapping to 4 or 5. It also respects the metafield’s own scale_min and scale_max, so a review app using a 1–10 scale renders ten stars filled proportionally.

How many are left in the run, as a number and a measure bar — the drop-theme detail. Only rendered when Shopify is actually tracking inventory for the selected variant and the quantity is above zero.

SettingTypeDefaultWhat it does
Run sizeRange 10–1000, step 10400The run size the bar is measured against. A quantity of 200 against a run of 400 fills the bar halfway
Stock wordTextleftThe word after the number — “left”, “remaining”, “in stock”
Stock noteTextin this runThe trailing phrase after the bar

The bar is clamped between 2% and 100%, so a single remaining unit still shows a visible sliver rather than nothing.

The counter is per variant, not per product, and the section’s script swaps the number and the bar width when the selection changes. A variant with inventory tracking switched off, or one that’s sold out, hides the block entirely rather than showing a misleading figure.