In this article, we'll explore how Render Delay might be affecting a page's Largest Contentful Paint score.
Learn Web Performance
Optimize Core Web Vitals
All articles
Google's New CrUX Vis Tool: Explore Core Web Vitals Data
Google launched a new Core Web Vitals tool called CrUX Vis today!
While Google has provided historical CrUX data via an API for over a year, CrUX Vis provides an easy-to-access tool to access this historical Core Web Vitals data.
Cloudflare Speed Brain: What You Need to Know
Cloudflare has introduced a new performance feature: Speed Brain. This reduces page load latency by anticipating user behavior and prefetching content before it's needed.
This post explores the technology behind Speed Brain, its impact on web performance, and how you can use it on your website.
How to Defer Offscreen Images and Background Images
Deferring offscreen images is a web performance optimization technique that can help you improve user experience and Core Web Vitals on your site. Also known as lazy loading, it downloads out-of-view images only when they're about to appear in the user's viewport. Deferring offscreen images is especially important on image-heavy websites.
In the past, lazy loading was a complicated process that involved either the manual setup of JavaScript event listeners together with viewport calculations, or the integration of a third-party library. However with the introduction of the loading HTML attribute and the IntersectionObserver browser API, the situation has improved a lot.
What Is JavaScript Hydration For Single Page Applications?
JavaScript hydration is a web development technique that's often used when building single page applications.
This article explains what JavaScript hydration is, why it's necessary, and how it can impact website performance.
Largest Contentful Paint Differences In Lab And Field Data
Data for the Largest Contentful Paint metric often varies significantly between lab-based synthetic tests and real user data.
In this article we'll take a look at what causes these discrepancies and how to interpret them.
How To Optimize Largest Contentful Paint For Video Elements
Videos present a special challenge for achieving a good Largest Contentful Paint score, as they take longer to download compared to other types of content. In this article, we'll cover everything you need to know to optimize an LCP video element.
HTTP/1.1 vs HTTP/2: What Does It Mean For Page Speed?
The protocol used to transfer data between a browser and a server plays a significant role in page speed. HTTP/1.1 was the standard for years, but HTTP/2 has improved data delivery. In this article, we'll explore the differences between both protocols. We'll show practical examples of the advantages of HTTP/2, leading to faster and more efficient websites.
What’s The Difference Between CrUX And RUM Data?
CrUX and RUM data are two types of page speed measurements that are both collected from real website visitors.
However, there are some important differences between them and you’ll often see that they show slightly different values for the same website.
We’ll take a deeper look at the differences between the two metrics, how each data type is collected, and what their respective advantages are.
The Ultimate Guide to Font Performance Optimization
Font performance optimization is a set of web development techniques that make fonts load faster and render more smoothly. They involve practices such as thoughtful font selection, the use of performant font formats, self-hosting, optimized @font-face
declarations, font display strategies, and more.
Optimizing the fonts displayed on your website comes with many web performance advantages, including faster page load times, improved user experience, and better results for Core Web Vitals and other performance metrics.
On the other hand, improving font performance often comes at the expense of aesthetics and creativity (i.e. you’ll need to be careful about using custom typography), which can make it harder to establish a distinguishable brand identity.
Monitor Core Web Vitals with the web-vitals.js Library
Checking your Core Web Vitals as a one-off is not enough, you need to monitor them continuously to ensure your site is performing well for all users. This guide teaches you how to use the web-vitals.js library to monitor Core Web Vitals for your real users.
How To Reduce Unused JavaScript
'Reduce unused JavaScript' is a warning you'll encounter in Lighthouse-based web performance auditing tools, such as the local Lighthouse tool in Chrome DevTools, PageSpeed Insights, and DebugBear.
Unused JavaScript harms web performance because it slows down your page without providing any tangible benefits. It's like taking a bunch of clothes you won't need for a trip but still having to carry them around and paying a higher baggage fee on the plane.
To optimize your site for web performance and improve Core Web Vitals, you need to find a way to reduce unused JavaScript on your site. In this tutorial, we'll look into some hands-on techniques you can use to achieve this goal.
Brand New Performance Features in Chrome DevTools
This guide covers some modern web performance features of Chrome DevTools, with a focus on the new Performance Panel features which helps you optimize Core Web Vitals and improve your general web performance.
Minify JavaScript And CSS Code For A Faster Website
Code minification is a fundamental technique for improving website performance. In this article we'll explain how code minification works, how it's different from text compression, and how you can set it up for your website.
PageSpeed Insights API: Discover Web Performance Insights with Code
Web performance is important for user experience and SEO. While manually running a PageSpeed Insights test is useful, integrating performance data into your workflows can help your optimization efforts. Enter the PageSpeed Insights API.
In this guide, you'll learn how to use the PageSpeed Insights API to automate performance analysis of your websites or web pages.
Are Re-renders Hurting Your Largest Contentful Paint Score?
Unnecessary content re-renders can negatively impact your Largest Contentful Paint (LCP) metric, even if the user experience is unaffected.
In this article, we’ll examine how LCP element re-rendering during the initial page load can impact your metrics, how to detect if that’s happening, and what you can do to avoid it.
Debunking 5 Myths About Interaction to Next Paint (INP)
Interaction to Next Paint (INP) is a Core Web Vital metric that impacts Google search rankings. As web developers and website owners work to optimize their sites, some misconceptions about INP emerge.
This post addresses such misconceptions, and provides clear guidance on how INP works.
What Elements Contribute to Interaction to Next Paint?
Interaction to Next Paint (INP), a Core Web Vitals metric, is key for measuring how quickly websites respond to user interactions.
This post explores what interactions are considered for INP - it's not always what you might expect!
Chrome Extension Statistics: Data From 2024
Google’s Chrome Web Store provides a distribution channel for software that extends browser functionality and adds new features to popular websites.
In this post we’ll take a look at how many Chrome extensions there are, which ones are the most and least popular, and how different extensions are rated.
How To Fix Missing INP Attribution Data With The LoAF API
Google’s Interaction to Next Paint (INP) metric became one of the three Core Web Vitals in March 2024.
To improve INP, developers need to know what scripts are running during the page interaction and causing a delay. The new Long Animation Frames (LoAF) API provides this information.
However, sometimes the source URL will simply be reported as an empty string. This article explains why that happens and what you can do about it.
Synthetic Monitoring vs. Real User Monitoring
In the context of web performance, understanding how your website performs is important for your users, and your business.
This post explores some differences between synthetic monitoring and real user monitoring (RUM), helping you make an informed decision about your web performance strategy.
A Guide to Website Monitoring
Website performance and reliability help businesses to succeed. Continuous website monitoring lets you catch issues before they impact your users. This post explores different types of website monitoring and what they are used for.
Avoid An Excessive DOM Size For Better Web Performance
An excessively large Document Object Model (DOM) can significantly impact website performance. This article explains the importance of DOM size optimization and suggests strategies to resolve issues related to large DOMs.
Avoid Overusing fetchpriority="high"
The Fetch Priority API is a web technology that lets developers indicate the importance of a particular resource on a webpage. This functionality can be used to optimize the loading speed of a website.
However, when used incorrectly, fetchpriority
can also have undesired effects that slow down your website.
This article explains how overusing fetch priority among resources can cause problems and how to instead use fetch priority correctly.
Blazing Fast Websites with Speculation Rules
This post introduces speculation rules, a new web platform feature that allows developers to deliver instant page navigations after the initial page load.
Fixing Layout Shifts Caused by Web Fonts
This post explores how web fonts can cause layout shifts, negatively impacting your Core Web Vitals scores and user experience.
Visualize Your Website's Render-Blocking Scripts
A lot goes into web page performance. One key factor is the resources that a page loads, such as scripts and stylesheets. Having too many resources, or having resources that are slow to download, can make for a poor user experience.
This post explains the effects that render-blocking scripts have on your web page, and how to detect such render-blocking scripts using DevTools and DebugBear - a website performance monitoring tool.
How Do Chrome Extensions Impact Website Performance In 2024?
Chrome extensions can add useful functionality to the browser, but they can also slow down your browsing experience. We’ve tested the page speed impact of 5,000 Chrome extensions as part of our 2024 report on Chrome extension performance.
Find out what popular extensions increase CPU processing, how some extensions delay page load times, and what difference ad blockers can make.
Getting Started With scheduler.yield - A Beginner's Guide
This post introduces the scheduler.yield
API and explains how you can use it to optimise the performance of your web applications. If you want to follow along with the code snippets or interactive demos, be sure to read the browser support section to ensure that your browser supports this feature.
How Fast Do Websites Load In 2024?
How fast is the average website, and how much does website speed vary? Are websites getting faster? And where in the world do pages load faster or slower?
This report looks into these questions based on the Google CrUX dataset which collects page speed data for millions of websites from real Chrome users.
How Does The Loading Stage Of A Website Impact INP?
Google's Interaction to Next Paint (INP) metric measures how quickly a website responds to user input. In this article we'll discuss at how INP can vary depending on the loading progress of the website.
10 Best Practices To Make Your Website Faster
Making your website faster can improve user experience, reduce the bounce rate, boost organic search engine rankings, and increase conversions. In this article, we have collected 10 best practices that can help you diagnose page speed issues and make your website faster.
What Does The Page Load Event Measure?
The load event was never built to measure page load time, but it was there when developers needed it and saw widespread adoption to measure page speed. Today more modern metric like the Largest Contentful Paint are available and should usually be preferred over the Load event timing.
This article looks at when the load event fires and how useful it is as a metric today.
What Different Navigation Types Mean For Page Speed
Page navigations in the browser can be categorized into different types, for example an initial navigation or a reload of an already open page.
This article looks at how different navigation types result in page load time differences and how you can detect the type of navigation in the browser.
How To Improve INP With Chrome DevTools
Interaction to Next Paint (INP) is a performance metric that will become one of the three Google Core Web Vitals in March 2024.
INP tends to be harder to improve than other page speed metrics as it requires a page interaction to be measured and optimizing it often involves debugging complex JavaScript logic.
This article will explain how you can use Chrome DevTools to analyze page interactions and make your site respond to them more quickly.
How To Improve Page Speed With 103 Early Hints
Early Hints are a browser feature that allows you to start loading critical page resources as early as possible. In contrast to normal resource hints this can happen even before the server starts responding with the contents of the HTML document.
Learn how this works and how you can use it to optimize your page load time.
How to Set Up Soft Navigation Reporting in a React App
Soft navigation reporting is an experimental feature of Google’s Web Vitals initiative. It allows you to measure Core Web Vitals and other metrics for dynamic URLs in single page applications.
In this tutorial, we’ll look into how you can report Core Web Vitals from a React application to the console.
How To Fix A Failed Core Web Vitals Assessment
Google's Core Web Vitals assessment tells you how well your website does on several user experience and page speed metrics. Passing the assessment delivers a better experience for visitors on your website and can help you rank higher in Google.
This article explains how to run a Core Web Vitals assessment, what it means if your site fails the assessment, and what you can do about it.
2023 In Review: What’s New In Web Performance?
A lot has been going on in the web performance space, especially since the introduction of Google's Core Web Vitals.
This article looks at changes to how we measure page speed and how new web platform features can help you keep your website fast.
The Complete Guide To React Suspense
Suspense in React has been in development for several years. With the release of React 18, it's now mature enough to be used in production for data fetching and building server-side rendered applications. In this guide, you'll learn about Suspense and how you can take advantage of it to make your React applications more efficient.
A Guide To Soft Navigations And Core Web Vitals Reporting
Currently, there is no standardized way to measure Core Web Vitals and other web performance metrics inside single page applications (SPA) because they rely on soft navigations to respond to user actions, which are not as obvious to detect as hard navigations.
As of now, web performance monitoring tools can’t easily report web performance metrics for soft navigations. Instead, most metrics focus on the initial page load.
The main reason for this measurement gap is that we don’t yet have an agreed definition of what user actions qualify as soft navigations, which would allow developers of web performance tools and browser vendors to coherently detect and measure Web Vitals in single page applications.
However, there’s already some progress in the development of soft navigation reporting.
The Chrome developer team have started work on defining the heuristics and creating the APIs for reporting web performance metrics for soft navigations. The development is currently at an experimental stage, and the proposals are still not set in stone.
Improve React App Performance With Webpack Bundle Analyzer
Webpack Bundle Analyzer is a tool to visualize and analyze the size of JavaScript application bundles. You can use it to identify any large and redundant modules contributing to the overall bundle size.
As your app grows in complexity and accumulates more packages, your bundle can quickly become too large. This impacts your app's overall performance, especially during the initial load when the bundles need to be downloaded and parsed.
The bundle analyzer provides a detailed breakdown of your application's bundle size and composition, including the size of individual modules and their dependencies.
In this guide, we'll create a simple React application that has some performance issues. We'll then use Webpack Bundle Analyzer to analyze the application bundle and identify the areas that require optimization.
Measure LCP Sub-Parts To Improve Largest Contentful Paint
The Largest Contentful Paint is the Core Web Vitals metric that websites most often fail.
To make optimizing LCP easier Google has started recommending looking at a breakdown of the metric called LCP sub-parts. By breaking LCP down into separate components you can more easily identify suitable optimizations.
Measuring Long Animation Frames (LoAFs) In The Browser
Web performance browser APIs help developers understand what causes slow experiences for real users on their website. The proposed Long Animation Frames (LoAF) API surfaces debug data about long CPU tasks and unresponsive page interactions.
LoAF would be especially useful to debug Google new Core Web Vitals metric, Interaction to Next Paint.
Learn About Page Speed: 12 Example Request Waterfalls
Network request waterfalls show what resources are loaded when opening a website. This helps developers and website owners understand why different content elements show up at different times and how it can be optimized.
Recently I made a wall calendar with 12 request waterfalls for a conference, highlighting different web performance issues. This article goes through these waterfalls one by one and explains what they show. You can also test your own website to see what you can optimize.
Remote Debugging Mobile Websites With Chrome DevTools On Android
The developer tools that ship with Chrome or other browsers are very helpful when developing and testing your websites. However, when you encounter mobile-specific issues that you can’t replicate on your desktop or laptop, these developer tools become less helpful. That's where remote debugging comes in.
Remote debugging allows you to run your website natively on a mobile device while still using your main computer for testing and debugging. This way you can find and fix bugs that only occur on real mobile devices. Remote debugging is also useful for seeing how your site performs on mobile data networks and on devices that might not be as powerful as your development machine.
This article explains how to integrate remote debugging into your development workflow to investigate mobile issues on your site.
How To Watch Your Website Load Step By Step And Pause Loading
When you open your website it probably just takes a couple of seconds for all the content to appear. To fast to really understand what's going on and how to optimize it.
Find out how you can use Chrome DevTools to load your website step by step and pause loading to inspect the page at each stage.
Why We Don’t Report Website Carbon Emissions
We regularly get requests to include carbon emissions in our website speed test results. However, we don’t display this data as it cannot be meaningfully calculated for a particular website just based on the URL.
This article explains how the internet contributes to carbon emissions, how CO2 calculators work, and why the numbers they report should not be used for decision-making.
Improve Page Speed With GZIP Or Brotli Compression
When opening a website your browser downloads a bunch of text files, for example the HTMl document, CSS stylesheets, or JavaScript application code. The larger these files are the longer it will take load them and visitors will have to wait longer for your page content to appear.
This article takes at HTTP text compression, a simple but effective way to reduce your page weight and improve page load time. We'll also compare the two most common text compression algorithms, GZIP and Brotli.
Packet Level Throttling: Collecting Reliable Page Speed Data
Synthetic website performance tests measure page load time in a controlled lab environment with a specified network speed.
Since these tests are often run on a computer with a fast network connection, the network needs to be throttled to achieve a consistent result that reflects how visitors with a slower connection would experience the page.
However, there are different ways to throttle the network. This article explains why packet-level throttling is the most reliable option and how it’s different from network throttling in Chrome DevTools or the default settings in Google Lighthouse.
Why Optimizing CSS Stylesheets Matters For Page Speed
CSS stylesheets are one of the core technologies powering the web. This article explains why optimizing is important for page speed and what you can do to reduce CSS size. We'll also introduce the free CSS Size Analyzer.
Improve Your Lighthouse SEO Score
Google Lighthouse is a great tool to automatically test the quality of your website and find ways to improve.
Lighthouse provides scores from 0 to 100 across four categories: Performance, Accessibility, Best Practices, and SEO. This article will focus on the Lighthouse SEO score and how to improve it.
How To Test Page Speed With Google Lighthouse
Lighthouse is a free tool developed by Google that analyzes your website and generates a report on your page speed, accessibility, and SEO.
All you need to do is provide your website URL and Lighthouse automatically runs through a large number of individual checks (called audits). You can see how well you do on each audit and what you can do to improve.
This article looks at the different options you have for running Lighthouse what the differences are between them.
How To Use A CDN To Improve Web Performance
A Content Delivery Network (CDN) can help you make your website load quickly anywhere in the world. CDNs provide local infrastructure across the world, so your visitors can fetch data quickly from a nearby data center instead of from a different continent.
This article first takes a closer look at the concept of CDNs. What they are exactly, what type of content you can serve on them, and when do they deliver the most value? Then we go through how exactly to use a CDN like Cloudflare to improve your web performance.
What Are Google Page Experience Signals?
Bits of information that search engines use to decide what pages should appear in search results are called ranking signals. There are several groups of ranking signals, for example looking at content relevance, quality, and user experience on the destination web page.
This article explains what Google's page experience signals are and how you can optimize them.
The Ultimate Guide To Responsive Images On The Web
'Responsive images' is an umbrella term for a number of image optimization techniques that allow web designers and frontend developers to reduce page weight, improve site speed, and enhance user experience.
As image weight impacts your Largest Contentful Paint score, one of Google's Core Web Vitals metrics included in its search algorithm, you can also improve your SEO rankings by using responsive images.
Since images are a key aspect of web performance, in this article, we'll look into responsive images in detail, including their pros and cons, a handful of code examples, a couple of recommendations, and a bit of theory related to the subject.
Server Cache vs. Browser Cache: What Front-end Developers Need To Know
Downloading or regenerating parts of a website can be slow, so caching is used to save resources for reuse later on. This can be done on the server backend or in the browser.
With server caching frequently requested data like fragments of HTML or database query results are saved. When a website visitor then requests these resources they can be served quickly. Server-side caching also reduces CPU load on the server.
Browser caching means storing downloaded resources locally on the user's device. For example, this can be done for images or CSS stylesheets. When a page is visited again the browser can reuse these resources instead of having to download them again. That way page content appears much more quickly.
Understanding Lighthouse Accessibility Audit Reports
When developing a website optimizing web accessibility ensures that you don't limit the number of people who can use your site. An accessible website not only helps users with a visual or hearing impairment but also means your website can be used with the keyboard and on a wide range of devices.
Improve Page Speed With Async And Defer
The async
and defer
attributes exist to help you make your website load faster. This article explains what these attributes do and when you should use them.
Cumulative Layout Shift Differences In Lab And Field Data
The Cumulative Layout Shift (CLS) metric measures how much content moves around on a web page after rendering.
However, sometimes real users experience layout shifts that can’t easily be replicated in lab-based test results. This article looks at why this happens and what you can do to identify and fix these layout shifts.
Optimize Request Priorities To Speed Up Your Website
Browsers load a website by requesting resources from a server. Each request has a different priority that determines when network resources are used to load the file and how quickly the resource is loaded.
This article looks at why resource priorities matter and how optimizing them can make your website faster.
Is Reducing Page Weight Important For Website Speed?
Page weight is one of many metrics used to measure the performance of a website. It looks at how much data needs to be downloaded after opening a page.
This article looks at what factors contribute to high page weight, how you can optimize it, and what it means for SEO and page speed.
Getting Started with React DevTools in Chrome
React Developer Tools is a powerful Chrome extension that helps debug your React app. It analyzes your app's component tree structure along with the state and props of your components and provides a detailed analysis of each component's performance and rendering times.
Developed by Meta, the company behind the React library itself, this extension is a practical addition to your React workflow in a variety of scenarios:
- Debugging your React app and verifying that a component is receiving the correct props and holding the correct state
- Identifying the root cause of performance issues when some components are rendering slowly
- Inspecting the context values passed to each of your components and checking that the global state is being correctly shared between them
If you're curious about how you can start using React DevTools to debug your app and improve its performance, this guide is for you. The article first looks at React DevTools in a little more detail and then demonstrates its utility through an example app.
View Site Speed Trends With Node And The CrUX History API
Earlier this month Google released the CrUX History API. CrUX is the Chrome User Experience Report which provides real-user page speed metrics for millions of websites. The History API allows us to see how the speed of a website has changed over time.
This article explains how you can use the API to look up page speed data for a website.
Is Google PageSpeed Insights Reliable?
PageSpeed Insights is a free tool that Google offers to website operators. It automatically analyses your website, focusing on page load time.
This article will look at how reliable PageSpeed Insights data is and what role it plays for SEO.
How HTTP Server Connections Work On The Web
The web works by clients requesting resources from servers using the HTTP protocol. Server connections are needed so that data is transferred reliably and securely.
This article will look at how browsers create connections to servers on the web, the network round trips that are needed to create a connection, and how all of this impacts page speed.
How Do Websites Work: A Technical Introduction
What happens when you open a web page in your browser? How is content loaded from the internet and displayed to the user?
This article takes a look at how resources are loaded using the HTTP protocol and how they come together to form a web page. We’ll also take a look at what this means for how long it takes to load a website.
2022 In Review: What’s New In Web Performance?
The way we measure and optimize website speed is always changing. New web standards are introduced (and eventually widely supported), new tools are developed, and new metrics suggested.
This article takes a look at some of the ways that the web performance landscape changed in 2022.
Modern Image Formats For The Web
Choosing the right image format is the first and most important step when it comes to image performance. We want our websites to load fast, but we also want our images to look good. Balancing these two concerns is the core of image performance.
Image formats are file types for digital graphics that have evolved over time to make use of new software and hardware technologies and faster networks. These days we have plenty of options to choose from, including file types for raster images, animations, vector graphics, and next-generation images.
In this article, we’ll look into the most important image formats for the web and help you decide when to use which image file type.
Chrome Local Overrides: Run Core Web Vitals Experiments
Many site speed testing tools provide recommendations to make your website faster. But it can be hard to tell whether these recommendations will work and how big the impact will be.
To estimate how much an optimization will help you need to try it out on your website. But deploying a new change to a staging server can be slow.
The local overrides feature in Chrome DevTools offers a solution. It allows you to make changes to your website locally and then measure how they impact performance.
What Is CSS @import And Why Can It Slow Down Websites?
The CSS @import
rule can be a convenient way to load additional stylesheets. But it can also make resources on your website render more slowly, causing your website to take longer to render.
What Does The Back/Forward Cache Mean For Site Speed?
Loading a new web page takes time, but about 20% of mobile navigations are actually initiated by the browser Back and Forward buttons.
The back/forward cache speeds up these navigation by restoring previously loaded page content.
View Core Web Vitals Data in Google Search Console
Google Search Console (GSC) is a free service Google provides to website owners. It provides them with insight on how much Google search traffic they get, what pages are showing up in Google, and what they can do to optimize their website.
Since the Page Experience Update in 2021, Google has used the Core Web Vitals metrics as a ranking factor. This article will take a closer look at the Web Vitals data that's available in Google Search Console.
A Comprehensive Guide To HTTP/3 And QUIC
The HTTP protocol lets browsers and other applications request resources from a server on the internet, for example, to load a web page. HTTP/3 is the latest version of this protocol, which was published by the Internet Engineering Task Force (IETF) as a proposed standard under RFC 9114 in June 2022.
It aims to make the web faster and more secure by providing an application layer over QUIC, a next-generation transport protocol running on top of the lightweight User Datagram Protocol (UDP). We’ll discuss the different network layers in depth further down in this article.
How To Optimize Resource Loading With The FetchPriority Attribute
To make your website load quickly you need the browser to prioritize loading the most important resources first. The new fetchpriority
attribute for img
, iframe
, script
, and link
tags can help achieve this by marking the most important resources in the HTML.
Network Throttling in Chrome DevTools
The web is best experienced with a fast network connection. Still, a large number of people will visit your site using slower speeds. They might visit your page while on the road or in a remote place.
Faster loading times can help you keep more visitors and positively influence your website SEO.
The Chrome DevTools network throttling feature lets you imitate degraded network conditions. In this article you will learn how to use it and how exactly it works.
How To Eliminate Render Blocking Resources
Render blocking websites can slow down your website and increase Core Web Vitals metrics like the Largest Contentful Paint.
This article explains the performance impact of render blocking resources and what you can do to solve these issues.
Lighthouse Simulated Throttling
This article explains what Lighthouse simulated throttling is and how it can lead to inaccurate site speed metrics. We'll also look at alternative ways to test your site speed.
Why Does Page Speed Matter?
A slow website can not only negatively impact the experience for visitors, but also make it harder for new users to find the website.
Page speed measures how long it takes for a website to load. After navigating to a page, it often takes several seconds for the page content to appear.
This article looks at some of the reasons why site speed matters to your users. We’ll also look at case studies showing the results that different companies have seen from optimizing site performance.
What Cloud Provider Has The Fastest Console Page Speed? Data from GCP, AWS, And Azure
I've always been annoyed by the slow speed of the Google Cloud Console web app. In 2020 I wrote about how a single page loads 16 MB of JavaScript. That same page now loads 21 MB.
But are other cloud providers better? I looked at real-user data from the Chrome User Experience Report and also ran my own tests.
This article looks at Google Cloud Platform (GCP), Amazon Web Services (AWS), and Microsoft Azure.
What Is Google's Chrome User Experience Report?
Google’s Chrome User Experience Report (CrUX) is a dataset of real user metrics that assess the overall performance and user-friendliness of a website. In addition to other key indicators, it includes the three Core Web Vitals that Google uses in its search ranking algorithm.
Understanding the Chrome User Experience Report can help you improve your SEO rankings and page load times. You can also use it to compare your website to those of your competitors.
How To Select A Device Configuration For Site Speed Tests
Real-user metrics are aggregated across many different website visitors using different devices. In contrast, to run a lab test you need to select a single test device. That's the case both when testing locally in Chrome DevTools and when using a dedicated performance tool.
Discrepancies between lab and field data are incredibly common. This can be confusing: what data should you believe, and what are the best device and network settings to use when running tests?
The device configuration you should use depends on what your goals are. This guide explores different options and explains their pros and cons.
What Is Server-side Rendering And How Does It Improve Site Speed?
Server-side rendering (SSR) addresses the performance and search engine optimization issues of single-page JavaScript applications. In contrast to client-side rendering, it generates static content on the server before sending it over to the user’s browser.
Server-side rendering improves site speed and results in better Core Web Vitals scores. However, sometimes it can be difficult to implement and might also increase Interaction to Next Paint (INP).
In this article, we’ll look into server-side rendering in detail. We’ll see how it works, what problems it solves, how it compares to client-side rendering, and what pros and cons it comes with.
How CSS Opacity Animations Can Delay The Largest Contentful Paint
Fade-in animations make a website look more polished, but can also cause a slower Largest Contentful Paint. That's because of how elements with an opacity of 0 are counted when measuring LCP.
This article explains why fade-in animations can delay LCP and what you can do about it.
How Anti-Flicker Snippets From A/B Testing Tools Impact Site Speed
This article looks at how the anti-flicker snippets used by A/B testing tools like Optimizely and Adobe Target can negatively impact web performance.
How DebugBear Uses DebugBear To Run DebugBear
Peter Suhm recently wrote about how his form builder Reform uses Reform for their own business.
In the same spirit, this post takes a look at how we use DebugBear to monitor site speed internally.
5 Site Speed Tools for Technical SEOs
Web performance has become a more important topic for Technical SEOs since Google has started using the Core Web Vitals metrics as part of its search result rankings.
This article looks at some of the tools you can use to measure performance and explains the advantages each tool brings.
Working With Web Performance Budgets
Performance budgets help your business stay on top of web performance, ensure a good user experience, and optimize SEO.
This article explains how performance budgets work and how you can implement them in practice.
Core Web Vitals: Which Metric Is The Hardest To Pass?
In June 2021, Google started using Core Web Vitals as a search result ranking factor. The Core Web Vitals are a set of three user experience metrics: Largest Contentful Paint, Interaction to Next Paint and Cumulative Layout Shift.
For each of these metrics, Google defined thresholds that websites have to meet in order to get SEO benefits. A website that doesn't pass the Core Web Vitals can drop in search rankings.
This article looks into which of these metrics is hardest to pass and causes the most problems for websites.
Measuring User Flow Performance With Lighthouse
Lighthouse tests usually perform a non-interactive cold load. However, real users interact with the page, and load pages again with some resources already cached. User flow support in Lighthouse lets you test sites beyond the initial page load.
Recording A User Flow In Chrome DevTools
Chrome is adding a new Recorder tab to the DevTools, letting users record and replay user journeys.
Optimizing Core Web Vitals Without Improving Site Performance
The Core Web Vitals are a set of user experience metrics that Google uses as part of it's search result rankings. But how easy is it to game them?
Blowing Up HTML Size With Responsive Images
I was recently looked at the speed of the Waitrose homepage and was surprised by its massive uncompressed HTML document size: 3.5 MB.
This article takes a look at how images make the document so big and asks if this reduces site speed.
Why Does Lighthouse Lab Data Not Match Field Data?
Lab-based performance tests often give different results from data that's collected from real users. This article explains the differences between these two ways to measure site speed and how they lead to different test results.
We'll focus on Lighthouse and the Chrome User Experience report, but note that there are many other ways to collect lab or field data.
CSP Error Noise Caused by Chrome Extensions
A Content Security Policy (CSP) lets developers improve security by putting restrictions on what resources can be loaded on a page. For example, a CSP can only allow requests from certain domains, or block inline script tags.
How Do Chrome Extensions Impact Browser Performance?
This report investigates how 1000 of the most popular Chrome extensions impact browser performance and end-user experience.
What's New In Lighthouse 8.0?
Google released Lighthouse version 8 this week. This article looks at how the Performance score and Lighthouse report have changed compared to version 7.
Optimize Page Performance By Lazy Loading Images
I recently made some performance improvements to the DebugBear homepage. This article explains how to use the loading="lazy"
HTML attribute to make your website render more quickly.
Profile Site Speed With The DevTools Performance Tab
The Chrome DevTools Performance tab is packed full of features that let you audit page performance in depth. You can use it to test both the initial load of your website as well as how quickly it responds to user input, as measured by Google's Interaction to Next Paint metric.
This article explains how to use the Performance tab to profile your site and interpret the results.
Web Vitals FAQ
Google will start using Core Web Vitals as part of their rankings in May 2021. This page goes through common questions about Core Web Vitals and how they affect rankings.
Common Problems With rel="preload"
Preload <link>
tags are a type of browser resource hint. They tell the browser to start downloading a file before they would have been discovered otherwise.
You can use preload tags to make your site load faster, but when used incorrectly they can also slow it down. This article highlights common mistakes when using preload hints, and explains how to avoid them.
Optimizing React Performance By Preventing Unnecessary Re-renders
Re-rendering React components unnecessarily can slow down your app and make the UI feel unresponsive. This makes the user experience worse and causes a higher Interaction to Next Paint metric.
This article explains how to update components only when necessary, and how to avoid common causes of unintentional re-renders.
The Chrome DevTools Network Tab: Debug Page Speed
Chrome's developer tools provide a lot of information on what's slowing down your site and how to make it faster. This article explains how to use the DevTools Network tab to debug performance issues.
Why Is The Google Cloud UI So Slow?
Opening a page in the Google Cloud Console always takes a long time.
Here are some metrics I collected on a high-end 2018 MacBook Pro on a UK-based Gigabit internet connection.
Website Builder Performance Review
Site builders let you create your own website without writing any code, but the websites they generate aren't always fast. Slow page load times not only affect the experience of your visitors, but can also hurt SEO.
I built a similar website using 14 different website builders and tested their site speed. This post first presents the overall results and then looks at each website maker in detail.
Creating A Web Performance Team
Creating a web performance team is essential for many online businesses. Improving web performance for the long term requires a culture that understands the value of performance and treats it as a priority.
Setting up a team comes with a variety of challenges, many of them depending on your company and its culture. This post guides you through some of these difficulties.
Reducing Variability In Web Performance Metrics
Web performance metrics always vary somewhat between tests. This variability will be lower for simple static sites, and higher for complex dynamic content that changes every time the page is loaded.
One way to reduce variability in recorded metrics is to run each test several times and only save the average result.
This article will look at three different websites and investigate how much running tests 1, 3, 5, or 7 times reduces variability.
Building Custom Lighthouse Audits
Lighthouse automatically evaluates the performance, accessibility, and technical SEO of your website. But did you know that you can add your own custom tests as well?
Debugging JavaScript Memory Leaks
Memory leaks can hurt the performance of your website and even crash your page, especially on mobile devices.
In this article we'll explain how to debug JavaScript memory issues and look at some common problems.
Optimizing Front-end JavaScript Performance
Nearly every website uses JavaScript, so JavaScript performance is a growing topic in modern front-end development. In this post we'll introduce common performance pitfalls and discuss how to detect and avoid them.
We'll focus on JavaScript execution and other CPU processing that results from it. Check out our guide to Performant front-end architecture to learn more about structuring your app and prioritizing different types of resources.
JavaScript performance is important for the Interaction to Next Paint.
Is The Web Getting Slower?
A story on Hacker News recently argued that webpage speeds haven't improved, even as internet speeds have gone up.
This article explains why that conclusion can't be drawn from the original data.
GPT-3 On Web Performance
I interviewed OpenAI's GPT-3 on how to measure and improve website performance.
This article contains the interview, additional performance tips from GPT-3, and a guide to using GPT-3 on AIDungeon. I added notes to the interview when I thought GPT-3 got something wrong.
Counting Chrome Extensions – Chrome Web Store Statistics
For my report on extension performance I first needed a list of Chrome extensions. This post takes a deeper look at the full list, looking at the most popular extensions, extension ratings, paid extensions, and top extension authors.
2020 Chrome Extension Performance Report
Update: read the 2021 Chrome Extension Performance Report
I tested how the 1000 most popular Chrome extensions affect browser performance.
The main metrics I'll consider are CPU consumption, memory consumption, and whether the extension makes pages render more slowly.
How Many Websites Support The Save-Data Header?
Browsers can set the Save-Data: on
header to indicate that a user is on a connection that's slow or has high data costs. Websites can then adjust their responses to take that into account.
How many websites have added support for this header? We tested the homepages of 1092 sites and found 4 where the Save Data header had a noticeable impact (~0.4%).
Performant Front-end Architecture
This post describes some techniques to make front-end apps load faster and provide a good user experience.
We'll look at the overall architecture of the front-end. How can you load essential resources first, and maximize the probability that the resources are already in the cache?
What's Causing Intermittent gzip Compression?
Sometimes DebugBear customers notice that a file isn't always served compressed. What's the cause of that, and is there anything that can be done?
How Does Browser Support Impact JavaScript Bundle Size?
Older browsers don’t support many of the modern features that have been added to JavaScript, such as the array spread operator and the Object.entries
method. To support older browsers while still taking advantage of these modern features, you need a compilation step that transforms the cutting edge JavaScript in your codebase to production code that works in all browsers.
Babel is the most popular tool used to do this transformation. The env preset allows you to transpile JavaScript to be compatible with a list of browsers you wish to support. This article will discuss the effects on compiled JavaScript file size when changing which browsers you support in Babel.
Web Performance Metrics: Lab Data vs Field Data
This article compares two approaches to monitoring website performance: lab-based monitoring and collecting field data from real users.
Lazy Loading Angular Components Without A Router
Splitting your Angular app into several smaller bundles can make your site faster by reducing download and execution times. Instead of loading all code upfront it's fetched lazily when needed.
Most guides to lazy loading Angular modules use Angular's RouterModule
and the loadChildren
property to load code when the user first navigates to a certain page. But that means you can't lazy load code if whether the code is needed doesn't depend on a route change.
This article will explain how to lazy load Angular feature modules independently of the router.
Why Are Lighthouse And PageSpeed Insights Scores Different?
When running page speed tests using different tools you'll often find that the metrics they report don't match up exactly, or may even show significant discrepancies.
This article explains why you might see score and metric differences between PageSpeed Insights, Lighthouse, and other tools.
How Do Different Chat Widgets Impact Site Performance?
Live chat widgets are a quick and easy way to contact support. However, adding live chat to your website will impact its performance, as the browser needs to download and run the code to display the widget.
I tested 21 different chat widgets to see how they impact page performance.
Measuring React App Performance
React has gained significant popularity as a library for building UIs on the web. One of the main attractors to the library is its impressive browser performance, thanks to its implementation of a virtual DOM.
When working on small projects, you shouldn’t run into many issues. However, larger projects will typically have complex UI components, process more data, and generally have more moving parts. All of these factors can impact the performance of your app.
This article will help you understand what tools you have at your disposal to measure React performance. This can help you optimize Core Web Vitals metrics like Interaction to Next Paint.
Browser Resource Hints: preload, prefetch, and preconnect
Resource Hints can improve page performance by giving the browser extra information that it can't infer from the document HTML. For example, you can tell the browser to preload certain network resources that the page will need to render later on.
Measuring When Images Are Displayed With The Element Timing API
The Element Timing API lets you track when images appear on the screen.
While this could be done with JavaScript, the Element Timing API is more accurate and doesn't require blocking JavaScript execution.
The User Timing API: Custom Front-end Performance Metrics
Page speed testing tools collect a range of general-purpose performance metrics when loading a website. For example, they collect data on Core Web Vitals metrics like the Largest Contentful Paint or on the download size of the web page.
However, these metrics aren't tailored to the needs of your users. If you build a chat app the most important thing might be that messages are rendered quickly, even if the user can't send messages yet. For a game you might want to wait until all graphical assets are loaded, but not worry too much about the soundtrack being ready.
Network Throttling Methods: DevTools vs. Lighthouse vs. Netem
Network throttling can simulate how users on a slow connection would experience loading a website. There are different ways to simulate a slower connection, and you'll see different results depending on which one you use.
Bundle Splitting Components With Webpack and React
Bundle splitting allows you to delay loading resources until they are actually needed. And Webpack and React make it surprisingly easy!
In this article we'll take a React component that's not needed on every page and move it from the main bundle into a separate bundle that can be lazy loaded.
Measuring The Performance Impact Of Chrome Extensions
I tested 26 Chrome extensions to measure their impact on CPU consumption, page download size, and user experience.
Optimizing JavaScript Bundle Size
It's easy to keep adding new packages and lose track of the size of your Webpack, Parcel, or Rollup bundle. But large JavaScript files slow down your page not just because they take longer to download, but also because more time is spent parsing, compiling, and executing JavaScript code.
This article outlines some tips and strategies to avoid these performance problems by reducing the size of your JavaScript bundles. Reducing your bundle size can help your website load slower and improve Core Web Vitals metrics like Interaction to Next Paint.