---
title: "Academy Article"
canonical_url: "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr"
locale: en
meta:
  "og:title": "Academy Article"
---

[Go to home](https://academy.laioutr.com/en)

- [Hosting and operations](https://academy.laioutr.com/en/bereiche/hosting-and-operations)

- [Performance](https://academy.laioutr.com/en/leitfaeden/performance)

- [Performance: caching and Orchestr](https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr)

# Performance: caching and Orchestr

Laioutr speeds up storefronts with three cache layers: the Orchestr entity cache on the server, the HTTP cache at the edge and a store in the browser. Together they keep repeated requests from putting load on backends.

## Before you start

<dl>

<dt>Duration</dt>
<dd>6 min</dd></dl>

Last reviewed on October 15, 2026

**Orchestr** is Laioutr's data layer with a unified data model across all backends. On their way to the visitor, data pass through three cache layers:

- **Orchestr entity cache** on the server: stores query and component results per product or category. Product names can stay valid for a day, prices for 15 minutes. Two pages showing the same product share the data.
- **HTTP and CDN cache** at the edge: stores complete HTML and API responses according to rules per route. Static files and media from the Laioutr CDN stay cached for a long time.
- **Browser store**: data from a product listing are available on the detail page immediately.

When a product changes in the backend, Orchestr marks the affected entries as stale and reloads them in the background, without visitors waiting. Unpublished content from the preview is never cached.

Developers decide which data are cached and for how long, per data source and route. Laioutr storefronts reach a median LCP of 1.2 s; the targets are LCP under 1.2 s, INP under 80 ms and CLS under 0.02.

## Step by step

1. 1 ### Step 1: Set caching per data source In apps and custom connectors, set a cache strategy with a lifetime for queries and components, for example shorter for prices than for product names.
2. 2 ### Step 2: Enable HTML caching per route Use route rules to set short cache times for HTML and exclude cart, checkout and login from caching.
3. 3 ### Step 3: Load personal content in the browser Load the cart count, wishlist or greeting in the browser only, so the cached HTML stays the same for everyone.

## Frequently asked questions

Do customers see outdated prices?

Only as long as the chosen lifetime allows. A short lifetime is recommended for prices. When the backend reports a change, Orchestr reloads the entry in the background.

Is unpublished content cached?

No. Content preview requests bypass every cache layer; unpublished content never reaches a visitor.

How quickly does a change in the shop take effect?

For backends with change events, after a short time, because each instance keeps entries in memory for up to 30 seconds. Where a backend sends no events, the chosen lifetime applies.

## Related

- [Orchestr: entities, queries, actions and resolvers](https://academy.laioutr.com/en/artikel/orchestr-entities-queries-actions-and-resolvers)8 min

  Orchestr is Laioutr's data layer and runs server-side in the Nuxt server. Queries return entity IDs, component resolvers load the data for them, actions perform changes, and tokens form the contract between frontend, Orchestr and apps.
- [Performance and technical SEO in code](https://academy.laioutr.com/en/artikel/performance-and-technical-seo-in-code)10 min

  Laioutr frontends render on the server, cache data in Orchestr and deliver media through the Laioutr CDN with transformations at the edge. Canonical, hreflang and Schema.org data are generated automatically; developers control HTTP caching via routeRules and how the entry script loads.
- [Deliver images through the Laioutr CDN](https://academy.laioutr.com/en/artikel/deliver-images-through-the-laioutr-cdn)4 min

  The Laioutr CDN stores a project's images in a dedicated store and delivers them from the project's own hostname. Size and format are adapted at the edge on request, and delivered images stay cached for a long time.
- [Hosting and edge delivery](https://academy.laioutr.com/en/artikel/hosting-and-edge-delivery)4 min

  Laioutr Cloud is the built-in hosting for storefronts made with Laioutr and delivers them through a global edge network with more than 100 locations. Alternatively, a storefront runs through hyperscaler adapters, native hosting partners or on a self-managed server.

## Learn it in a lesson

- [Performance and technical SEO](https://academy.laioutr.com/en/lektionen/developer-performance-and-technical-seo)12 min
- [Orchestr: entities, queries, actions](https://academy.laioutr.com/en/lektionen/developer-orchestr-and-data-queries)14 min

## [Performance](https://academy.laioutr.com/en/leitfaeden/performance)

Search this guide

1. [Performance: caching and Orchestr](https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr)6 min

## Structured Data

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@id": "https://academy.laioutr.com/#website",
      "@type": "WebSite",
      "inLanguage": "en",
      "name": "Default",
      "url": "https://academy.laioutr.com/",
      "translationOfWork": {
        "@id": "https://academy.laioutr.com/#website"
      }
    },
    {
      "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#webpage",
      "name": "Academy Article",
      "url": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr",
      "@type": [
        "WebPage",
        "FAQPage"
      ],
      "breadcrumb": {
        "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#breadcrumb"
      },
      "isPartOf": {
        "@id": "https://academy.laioutr.com/#website"
      },
      "mainEntity": [
        {
          "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#/schema/question/1"
        },
        {
          "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#/schema/question/2"
        },
        {
          "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#/schema/question/3"
        }
      ],
      "potentialAction": [
        {
          "@type": "ReadAction",
          "target": [
            "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr"
          ]
        }
      ]
    },
    {
      "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#breadcrumb",
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "name": "Home",
          "item": "https://academy.laioutr.com/en",
          "position": 1
        },
        {
          "@type": "ListItem",
          "name": "Hosting and operations",
          "item": "https://academy.laioutr.com/en/bereiche/hosting-and-operations",
          "position": 2
        },
        {
          "@type": "ListItem",
          "name": "Performance",
          "item": "https://academy.laioutr.com/en/leitfaeden/performance",
          "position": 3
        },
        {
          "@type": "ListItem",
          "name": "Performance: caching and Orchestr",
          "item": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr",
          "position": 4
        }
      ]
    },
    {
      "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#/schema/question/1",
      "@type": "Question",
      "inLanguage": "en",
      "name": "Do customers see outdated prices?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "<p>Only as long as the chosen lifetime allows. A short lifetime is recommended for prices. When the backend reports a change, Orchestr reloads the entry in the background.</p>"
      }
    },
    {
      "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#/schema/question/2",
      "@type": "Question",
      "inLanguage": "en",
      "name": "Is unpublished content cached?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "<p>No. Content preview requests bypass every cache layer; unpublished content never reaches a visitor.</p>"
      }
    },
    {
      "@id": "https://academy.laioutr.com/en/artikel/performance-caching-and-orchestr#/schema/question/3",
      "@type": "Question",
      "inLanguage": "en",
      "name": "How quickly does a change in the shop take effect?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "<p>For backends with change events, after a short time, because each instance keeps entries in memory for up to 30 seconds. Where a backend sends no events, the chosen lifetime applies.</p>"
      }
    }
  ]
}
```
