Marius
Korbmacher
All case studies

Case study / Landig

A review setup built around Landig’s store and workflows.

Starting point

Landig has no review app yet. It needs a complete setup that matches the store’s design and follows its internal rules for review requests.

Optimisation

Display reviews throughout the buying journey, including search and cart. Automate post-purchase requests and exclude certain orders by tag or order value.

Implementation

Custom theme components, embedded review forms, manual approval and Shopify discount codes. The PDP form is available only to logged-in customers who have bought the product.

Technical results

Initial reviews and Product JSON-LD are included directly in the HTML; ratings also work in dynamically loaded content. The average Lighthouse score in the preview test with test reviews remains virtually unchanged: 56.2 without, 56.1 with the integration.

My contribution: Social proof integration as part of a relaunch with Eshop Guide: data integration, configuration, design customisation, placement and theme development.

Landig's Fleischwolf W 50 product page with yellow rating stars and review count next to the price.
Product rating in Landig's design, right next to the price. Captured in the relaunch store with test reviews.

01

Reviews in Landig’s design, right through to the cart

The rating beside the price, product cards and PDP reviews use customisable markup and CSS. The review list includes star distribution, sorting and merchant replies, switching from two columns to one on mobile. Landig can place sections and app blocks in the theme editor and reuse them on other templates. JavaScript adds sorting and loading further reviews.

Landig review list with star distribution, sorting, reviews and a merchant reply, shown with test data.
Custom review list with a merchant reply. The visible reviews are test data.

Ratings also appear in search and the cart drawer

A shared Liquid snippet passes the product ID, average rating and count to a web component in product cards. It displays ratings on collection and search results pages, in featured products and cross-selling, and in the cart and cart drawer. Suggestions loaded while typing and updated cart content also receive ratings without a full page refresh.

Landig predictive search for Fleischwolf, showing rating stars and counts in dynamically loaded product cards.
Predictive search in the relaunch store, with test data.

From order to review in the store

  1. 01

    Check the order

    Order tags and order value exclude specific orders; product tags exclude individual products from the request. Eligible requests are sent after the configured delay following fulfilment.

  2. 02

    Request a review

    An email links to the post-purchase review form, followed by internal approval and a Shopify discount code as an incentive.

  3. 03

    Display in the store

    Approved reviews are stored in Shopify. Ratings and review text are integrated into the different theme areas.

02

Post-purchase requests following Landig’s rules

A delay after fulfilment
Requests follow fulfilment status. The requested 7 to 14 days after fulfilment are configurable; purchase does not trigger immediate sending.
Exclusions by order and product tags
Specified order tags exclude entire orders. Product tags such as “Seminar” exclude individual products from the request.
Order-value exclusions
Alongside tags, a configurable maximum order value can exclude orders, for example above €5,000.
Discount codes and manual approval
Native Shopify discount codes reward submitted reviews. The Landig team manually approves new reviews before publication.
Preview of a Landig review request email with the logo, order number and a button linking to the review form.
Review email preview with an order reference and a direct link to the post-purchase form. Example from the development store.

Review after purchase: by email or directly on the PDP

PDP review form with purchase check
Liquid checks login status and Shopify order history server-side. Only customers who have purchased the product receive the PDP form and can review without an email link.
Post-purchase review form
The email link opens the ordered products in the post-purchase form. Product presentation, copy, fields and buttons are tailored to this workflow.
Landig post-purchase form with three ordered products, star ratings, title and text fields, and a button to submit all reviews.
Embedded in the store with Landig’s header and navigation. Multiple products can be reviewed separately or together. Captured in the development store.

03

Make reviews readable for Google and AI

Liquid reads reviews from Shopify metaobjects and rating figures from product metafields. Product JSON-LD associates the average rating and count (AggregateRating), review text (reviewBody) and star rating (reviewRating) with the product. The structured data and initial visible review list are already in the server response, without JavaScript or an external widget request.

Product reviews · JSON-LD
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Fleischwolf W 50",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "5.0",
    "reviewCount": 3
  },
  "review": [
    {
      "@type": "Review",
      "reviewBody": "Tolles Produkt",
      "reviewRating": {
        "@type": "Rating",
        "ratingValue": 5
      }
    },
    ...
  ]
}
</script>
Shortened JSON-LD excerpt from the Shopify Preview server response, checked on 12 September 2026. Values and reviews are test data. Google on review structured data

04

Performance & Lighthouse

More social proof with comparable loading performance.

The rating beside the price and initial reviews arrive with the product page, without a separate widget request. Customers do not wait for additional review content. Unexpected layout shifts can interrupt reading or cause misclicks; CLS measures this movement. With the integration, the PDP scores a low 0.007 on mobile and 0.070 on desktop. Despite additional ratings in search and cart, the average Lighthouse score remains virtually unchanged in the test: 56.2 without and 56.1 with the integration.

Without integration

56.2

With integration

56.1

Mean performance score across all pages and devices

Google PageSpeed Insights, 11 September 2026. Means from 120 individual measurements: three page types × two devices × two variants × ten runs. Shopify Preview (*.shopifypreview.com, pb=0), not the live store; with CPU throttling for comparable measurements.

Lighthouse scores compared side by side

Performance score from 0 to 100 · Mean values

Without integrationWith integration
Lighthouse scores compared side by sideMean · All test groups: Without integration 56.2, With integration 56.1. Mean · Mobile: Without integration 42.7, With integration 43.3. Mean · Desktop: Without integration 69.6, With integration 68.9. Homepage · Mobile: Without integration 46.0, With integration 49.5. Collection · Mobile: Without integration 43.5, With integration 40.3. Product page · Mobile: Without integration 38.6, With integration 40.2. Homepage · Desktop: Without integration 77.0, With integration 78.2. Collection · Desktop: Without integration 69.2, With integration 66.6. Product page · Desktop: Without integration 62.7, With integration 61.8.
Full measurement comparison

For each metric, the value without the review integration is on the left and the value with it is on the right. The change is shown underneath: green means better, red means worse. Higher performance scores are better; lower values are better for the other metrics. Lighthouse results vary between runs.

Full measurement comparison. For each metric, the value without the review integration is on the left and the value with it is on the right. The change is shown underneath: green means better, red means worse. Higher performance scores are better; lower values are better for the other metrics. Lighthouse results vary between runs.
Page / devicePerformanceFCPLCPTBTCLSSpeed IndexTransfer size
Mean · All test groups56.2 → 56.1(-0.1)2.7 s → 2.7 s(0.0 s)7.6 s → 7.5 s(-0.1 s)575 ms → 673 ms(+98 ms)0.023 → 0.027(+0.004)5.8 s → 5.9 s(+0.1 s)3,846 KiB → 3,846 KiB(0 KiB)
Mean · Mobile42.7 → 43.3(+0.6)4.7 s → 4.6 s(-0.1 s)13.3 s → 13.1 s(-0.2 s)713 ms → 797 ms(+84 ms)0.014 → 0.030(+0.016)9.0 s → 9.0 s(0.0 s)3,613 KiB → 3,615 KiB(+2 KiB)
Mean · Desktop69.6 → 68.9(-0.7)0.7 s → 0.7 s(0.0 s)1.9 s → 2.0 s(+0.1 s)437 ms → 549 ms(+112 ms)0.031 → 0.025(-0.006)2.5 s → 2.7 s(+0.2 s)4,080 KiB → 4,078 KiB(-2 KiB)
Homepage · Mobile46.0 → 49.5(+3.5)5.4 s → 4.8 s(-0.6 s)14.3 s → 13.2 s(-1.1 s)473 ms → 493 ms(+20 ms)0.000 → 0.000(0.000)8.9 s → 8.4 s(-0.5 s)3,593 KiB → 3,618 KiB(+25 KiB)
Collection · Mobile43.5 → 40.3(-3.2)4.2 s → 4.9 s(+0.7 s)12.8 s → 13.8 s(+1.0 s)665 ms → 672 ms(+7 ms)0.033 → 0.082(+0.049)8.2 s → 8.3 s(+0.1 s)3,207 KiB → 3,208 KiB(+1 KiB)
Product page · Mobile38.6 → 40.2(+1.6)4.6 s → 4.2 s(-0.4 s)12.9 s → 12.2 s(-0.7 s)1,002 ms → 1,225 ms(+223 ms)0.010 → 0.007(-0.003)10.0 s → 10.3 s(+0.3 s)4,038 KiB → 4,018 KiB(-20 KiB)
Homepage · Desktop77.0 → 78.2(+1.2)0.8 s → 0.7 s(-0.1 s)1.4 s → 1.3 s(-0.1 s)365 ms → 385 ms(+20 ms)0.005 → 0.003(-0.002)2.4 s → 2.5 s(+0.1 s)4,295 KiB → 4,288 KiB(-7 KiB)
Collection · Desktop69.2 → 66.6(-2.6)0.7 s → 0.7 s(0.0 s)2.7 s → 2.8 s(+0.1 s)300 ms → 398 ms(+98 ms)0.001 → 0.001(0.000)2.2 s → 2.4 s(+0.2 s)3,180 KiB → 3,195 KiB(+15 KiB)
Product page · Desktop62.7 → 61.8(-0.9)0.7 s → 0.7 s(0.0 s)1.5 s → 1.9 s(+0.4 s)647 ms → 865 ms(+218 ms)0.088 → 0.070(-0.018)2.8 s → 3.2 s(+0.4 s)4,764 KiB → 4,750 KiB(-14 KiB)

FCP: First Contentful Paint · LCP: Largest Contentful Paint · TBT: Total Blocking Time · CLS: Cumulative Layout Shift · Speed Index: how quickly page content becomes visible

More information about Google PageSpeed Insights