Appearance
Speed, SEO, Accessibility and Privacy
Speed
Lynx is built to load quickly and to feel quick once loaded:
- A single-page app. After the first page, following a link loads only what changes, with no full page reload. No API required: it runs inside Magento, so there is no GraphQL layer or separate headless frontend to build and host.
- No legacy scripts, only what a page needs. KnockoutJS, RequireJS, jQuery and the LESS stylesheets of Magento's standard theme are not loaded at all. Each page loads one script and one stylesheet, plus the code of the components it shows.
- Images when needed. Images further down the page load as they scroll into view.
- Third-party scripts later. Google Analytics can wait for the first interaction, so it does not slow down the first view.
- Full page cache. Pages are served from Magento's full page cache.
How content loads
Not everything on a page has to arrive at the same moment. Lynx loads each component's data in one of three ways, so the first view appears as fast as possible:
| Way | What happens | Used for |
|---|---|---|
| With the page | The data is part of the page itself. Shoppers and search engines see it straight away. | Most components: banners, product carousels, the product page, the cart |
| Right after the page | The page appears first, with a light placeholder where the content goes. Lynx fetches the content in a second, quick request and fills it in. | Search results and advanced search results, where the product search is the slowest part of the page |
| When it is needed | The content is not loaded until it is about to be seen, for example when a tab is opened or a checkout step is reached. | Product description, specifications and reviews with Load when shown on; the shipping methods and payment methods of the checkout steps |
Loading later keeps the first view fast, because the server only prepares what is visible at once. The trade-off is for search engines: content loaded after the page is not part of the page they read first, and it is not included in server-side rendering. That is why, by default, only content search engines do not need loads later: search results and the checkout steps. The product page tabs load with the page unless you turn on Load when shown.
You choose for the product page tabs with the Load when shown setting of each component. See Load when shown.
Faster on the server
Lynx also lightens the work Magento does to build each page, so pages that are not yet in the full page cache come back sooner:
- A minimal page layout. Lynx pages skip the many layout blocks and containers of Magento's standard theme and build only what the page shows.
- Data only for what is on the page. Each component asks Magento for its own data, so nothing is prepared for parts the page does not use.
- Configuration compiled ahead of time. Magento's configuration files are prepared once at deployment instead of being read and merged again after every cache flush.
- Fewer lookups per request. Lynx skips checks and database lookups that the Lynx storefront does not need, such as stored inline translations and widget layout updates.
Lighthouse scores
Google Lighthouse rates a page from 0 to 100 on performance, accessibility, best practices and SEO. These are the scores of the home page of a test store with Magento's sample data, with server-side rendering on, measured with PageSpeed Insights:

| Category | Mobile score |
|---|---|
| Performance | 99 |
| Accessibility | 100 |
| Best Practices | 100 |
| SEO | 100 |
| Agentic Browsing | 2/2 |
| Metric | Mobile |
|---|---|
| First Contentful Paint | 1.4 s |
| Largest Contentful Paint | 1.7 s |
| Total Blocking Time | 50 ms |
| Cumulative Layout Shift | 0 |
| Speed Index | 2.3 s |
PageSpeed Insights tests in mobile mode, which simulates a mid-range phone on a slow 4G connection. Scores vary with your hosting, your catalog, your images and the extensions you install, so measure your own store the same way.
SEO
Lynx keeps everything Magento already does for search engines, and takes care of what a single-page app needs on top:
| What you get | |
|---|---|
| Real pages | Every page has its own address and arrives as a complete web page, not an empty shell filled in later. Moving between pages inside the store updates the address and the page title too. |
| Magento's SEO settings | Meta titles, descriptions and keywords, robots settings, URL keys and URL rewrites of products, categories and CMS pages work as usual. Canonical links appear when you turn them on in Stores › Configuration › Catalog › Catalog › Search Engine Optimization. |
| Sitemap and robots.txt | Magento's XML sitemap and robots.txt work unchanged. |
| Link previews | Product pages carry Open Graph tags with the name, image, description and price, so a product link shared on social networks or in chat apps shows a preview. |
| Only pages worth finding | The cart, checkout, account and order pages and search results are marked so that search engines do not index them. The data Lynx loads when a shopper moves between pages is marked the same way, so it never shows up in search results in place of the page. |
| Server-side rendering | Google runs JavaScript, so it indexes Lynx pages even without SSR. SSR is still recommended: search engines and link previews then receive each page with its content already in place, which helps the search engines and apps that do not run JavaScript, and can get new pages indexed sooner. See Server-side Rendering. |
Content that loads after the page, such as product tabs with Load when shown on, is not part of the page search engines read first. See How content loads.
Accessibility
The storefront is built to WCAG 2.2 level AA, the standard the European Accessibility Act points to, so shoppers who use a keyboard, a screen reader or zoom can browse and buy:
- Keyboard: a Skip to content link opens every page, and after moving to another page the keyboard starts at its content. A focused element is never hidden under the sticky header or the cookie notice.
- Menus and drawers: the mobile menu, the mini cart, search and the filters open as dialogs. The page behind them cannot be reached until they close, Esc closes them, and the keyboard returns to the button that opened them.
- Forms: each error is announced with its field, and submitting a form with errors moves to the first one. Password fields accept pasting, and fields offer the browser's autofill.
- Sliders: autoplay stops while the pointer or the keyboard is on the slider, a Pause button stops it for good, and it starts paused for shoppers who asked their device for less motion. Every swipe has a button that does the same.
- Touch targets: buttons and links are at least 24 × 24 pixels.
What stays with you: pick design colors with enough contrast, write Alt Text for your images and product photos, and publish your own accessibility statement as a CMS page.
Analytics
The Google Analytics 4 component sends page views and ecommerce events: product lists, product views, add to cart, cart views, checkout steps and purchases. Each event can be switched off. Setup is described in Site-wide components.
Cookie consent
The Cookie Consent component shows a notice with accept and decline buttons. Analytics can be set to load only after a shopper accepts. See Site-wide components.
reCAPTCHA
Lynx forms follow Magento's Google reCAPTCHA settings in Stores › Configuration › Security › Google reCAPTCHA Storefront. Choose the reCAPTCHA type for each form there, such as sign in, create account, forgot password and contact, and Lynx shows it on the matching form. The reCAPTCHA script loads only when a shopper starts filling in a protected form.