Complete Guide to Core Web Vitals Optimization for 1C-Bitrix Sites

A site on 1C-Bitrix takes 4–8 seconds to load? LCP >4s, CLS >0.2, INP >200ms — a typical picture for stores on this CMS. Google factors Core Web Vitals into rankings, and users leave after a delay of more than 3 seconds. We conduct an end-to-end audit and optimization: from diagnostics to final test

Our competencies:

Frequently Asked Questions

A site on 1C-Bitrix takes 4–8 seconds to load? LCP >4s, CLS >0.2, INP >200ms — a typical picture for stores on this CMS. Google factors Core Web Vitals into rankings, and users leave after a delay of more than 3 seconds. We conduct an end-to-end audit and optimization: from diagnostics to final testing with a guaranteed PageSpeed Insights pass. Our experience covers 5+ years and over 50 projects. In one project, we worked with an auto parts store on Bitrix: LCP was 6.2s, CLS 0.3, INP 250ms. After optimization — LCP 1.8s, CLS 0.05, INP 120ms. Conversion rose by 22%, bounce rate dropped by 25%. Investment in optimization pays for itself in 3–6 months through higher conversion and lower abandonment. Typical optimization cost for an e-commerce Bitrix site ranges from $1,500 to $3,000, providing an estimated monthly revenue increase of $2,000–$5,000 for stores with 10,000+ visitors.

Why Core Web Vitals are critical for a Bitrix site

Google uses these metrics to evaluate user experience. Poor Core Web Vitals reduce conversion by 20–40% and hurt rankings. For Bitrix sites, the main sources of issues:

  • LCP: slow TTFB + large images in the main banner
  • CLS: images without width/height, fonts without font-display, dynamic blocks (cart, banners)
  • INP: heavy JavaScript, blocking scripts in the head, excessive event listeners

In practice, every second store on Bitrix fails Google's assessment. We solve these problems with a guaranteed result.

According to Google's recommendations, LCP should be under 2.5 seconds, CLS under 0.1, and INP under 200 milliseconds.

What the Core Web Vitals optimization includes

Diagnostics

We use Chrome DevTools Lighthouse for synthetic testing and PageSpeed Insights for real user data (CrUX). We evaluate TTFB, JS/CSS size, images, and cache settings. The result is a detailed priority report.

LCP: critical rendering path

The LCP element in a Bitrix store is usually the main banner or first image. The problem: the image is loaded via JavaScript after rendering. The solution — preload with fetchpriority="high":

<link rel="preload" as="image" href="/upload/banners/main.webp" imagesizes="100vw" fetchpriority="high"> 

Add this in <head> via AddHeadString() of the component. Sliders are the main enemy: Swiper.js adds 100–300 KB of JS. Optimization: first slide in static HTML, JS initialization via defer or requestIdleCallback.

CLS: layout shifts

Non-zero CLS in Bitrix is caused by:

  • Images without dimensions. Standard components often output <img> without width/height. We add sizes:
// In template.php of catalog.element component $width = $arItem['PREVIEW_PICTURE']['WIDTH'] ?? 300; $height = $arItem['PREVIEW_PICTURE']['HEIGHT'] ?? 300; echo '<img src="' . $arItem['PREVIEW_PICTURE']['SRC'] . '" ' . 'width="' . $width . '" height="' . $height . '" ' . 'loading="lazy" decoding="async" alt="' . htmlspecialchars($arItem['NAME']) . '">'; 
  • Cart and counters. Reserve space via CSS: min-width: 40px; min-height: 40px.

  • Fonts. Use font-display: swap.

JavaScript: render blocking and INP

In Bitrix, the <head> often includes 10–20 JS files via CJSCore::Init(). We switch to defer:

<script src="/bitrix/js/main/core.js" defer></script> 

In the module settings “Performance”, we enable moving scripts to the end of the page. We diagnose INP via DevTools Performance, analyzing long tasks and event handler latency.

Images: WebP and lazy loading

We configure the resize_image module in /bitrix/.settings.php:

'resize_image' => [ 'value' => [ 'webp' => true, 'webp_quality' => 80, ], ], 

Lazy loading for offscreen images: loading="lazy" decoding="async". LCP image — no lazy. WebP compresses images 30-50% better than JPEG without quality loss, speeding up load time.

CSS: critical path

We inline critical CSS in <style> in <head>, load the rest asynchronously with <link rel="preload" as="style" onload="this.rel='stylesheet'">. Use PurgeCSS to remove unused styles.

How to optimize LCP step by step

  1. Identify the LCP element via Chrome DevTools.
  2. Ensure this image is preloaded with fetchpriority="high".
  3. Optimize the image: WebP at quality 80%, size not exceeding 200 KB.
  4. Configure TTFB caching: use Bitrix tagged caching.
  5. Move blocking scripts to footer or use defer.

How tagged caching affects TTFB

Tagged caching in Bitrix allows clearing cache only for changed blocks instead of a full reset. This reduces TTFB to 50ms vs 200-400ms without cache. Configuration is done via /bitrix/.settings.php and components with caching support.

Typical optimization mistakes

  • Neglecting TTFB: without server and cache tuning, LCP won't improve.
  • Using loading="lazy" on the LCP image — this worsens LCP.
  • Not reserving space for dynamic blocks (cart, sliders) — CLS remains high.
Example cost savings calculation

With an average order of 2,000 rubles and a conversion of 3%, a 25% bounce reduction yields an additional 30 orders per month from 10,000 visitors. That's an extra 60,000 rubles in monthly revenue.

What you get after optimization

Metric Before After Improvement
LCP 4–8 s <2.5 s 2–3x
CLS 0.2–0.5 <0.1 2–5x
INP >200 ms <200 ms >30%

Comparison of image optimization methods

Method Compression Quality Support
WebP 30-50% high all modern browsers
JPEG 10-20% medium universal
PNG lossless high universal

Why choose us

  • 5+ years of experience with Bitrix
  • 50+ completed projects
  • Certified specialists
  • Guaranteed PageSpeed Insights pass

Order an audit and get a detailed report with recommendations. Contact us for a consultation — we will assess your site and propose a Core Web Vitals optimization plan.

More about metrics: official page. Additional information on cache configuration: 1C-Bitrix documentation.