CINXE.COM
Release Notes | PageSpeed Insights | Google for Developers
<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Google for Developers"> <meta property="og:type" content="website"><meta name="theme-color" content="#1a73e8"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/developers/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/css/app.css"> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/touchicon-180-new.png"><link rel="canonical" href="https://developers.google.com/speed/docs/insights/release_notes"><link rel="search" type="application/opensearchdescription+xml" title="Google for Developers" href="https://developers.google.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://developers.google.com/speed/docs/insights/release_notes" /><link rel="alternate" hreflang="x-default" href="https://developers.google.com/speed/docs/insights/release_notes" /><link rel="alternate" hreflang="ar" href="https://developers.google.com/speed/docs/insights/release_notes?hl=ar" /><link rel="alternate" hreflang="bn" href="https://developers.google.com/speed/docs/insights/release_notes?hl=bn" /><link rel="alternate" hreflang="zh-Hans" href="https://developers.google.com/speed/docs/insights/release_notes?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://developers.google.com/speed/docs/insights/release_notes?hl=zh-tw" /><link rel="alternate" hreflang="fa" href="https://developers.google.com/speed/docs/insights/release_notes?hl=fa" /><link rel="alternate" hreflang="fr" href="https://developers.google.com/speed/docs/insights/release_notes?hl=fr" /><link rel="alternate" hreflang="de" href="https://developers.google.com/speed/docs/insights/release_notes?hl=de" /><link rel="alternate" hreflang="he" href="https://developers.google.com/speed/docs/insights/release_notes?hl=he" /><link rel="alternate" hreflang="hi" href="https://developers.google.com/speed/docs/insights/release_notes?hl=hi" /><link rel="alternate" hreflang="id" href="https://developers.google.com/speed/docs/insights/release_notes?hl=id" /><link rel="alternate" hreflang="it" href="https://developers.google.com/speed/docs/insights/release_notes?hl=it" /><link rel="alternate" hreflang="ja" href="https://developers.google.com/speed/docs/insights/release_notes?hl=ja" /><link rel="alternate" hreflang="ko" href="https://developers.google.com/speed/docs/insights/release_notes?hl=ko" /><link rel="alternate" hreflang="pl" href="https://developers.google.com/speed/docs/insights/release_notes?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://developers.google.com/speed/docs/insights/release_notes?hl=pt-br" /><link rel="alternate" hreflang="ru" href="https://developers.google.com/speed/docs/insights/release_notes?hl=ru" /><link rel="alternate" hreflang="es" href="https://developers.google.com/speed/docs/insights/release_notes?hl=es" /><link rel="alternate" hreflang="es-419" href="https://developers.google.com/speed/docs/insights/release_notes?hl=es-419" /><link rel="alternate" hreflang="th" href="https://developers.google.com/speed/docs/insights/release_notes?hl=th" /><link rel="alternate" hreflang="tr" href="https://developers.google.com/speed/docs/insights/release_notes?hl=tr" /><link rel="alternate" hreflang="vi" href="https://developers.google.com/speed/docs/insights/release_notes?hl=vi" /><title>Release Notes | PageSpeed Insights | Google for Developers</title> <meta property="og:title" content="Release Notes | PageSpeed Insights | Google for Developers"><meta property="og:url" content="https://developers.google.com/speed/docs/insights/release_notes"><meta property="og:image" content="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/opengraph/google-blue.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="675"><meta property="og:locale" content="en"><meta name="twitter:card" content="summary_large_image"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Release Notes" } </script><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Insights", "item": "https://developers.google.com/speed/pagespeed/insights" },{ "@type": "ListItem", "position": 2, "name": "Release Notes", "item": "https://developers.google.com/speed/docs/insights/release_notes" }] } </script> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="page" theme="google-blue" type="article" layout="docs" concierge='closed' display-toc pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner"> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <a href="https://developers.google.com/speed/pagespeed/insights"> <div class="devsite-product-logo-container" size="medium" > <picture> <img class="devsite-product-logo" alt="PageSpeed Insights" src="https://www.gstatic.com/images/icons/material/product/2x/pagespeed_64dp.png" srcset=" https://www.gstatic.com/images/icons/material/product/2x/pagespeed_64dp.png" sizes="64px" loading="lazy" > </picture> </div> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/speed/pagespeed/insights" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="PageSpeed Insights" > PageSpeed Insights </a> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab > <a href="https://developers.google.com/speed/pagespeed/insights" track-metadata-eventdetail="https://developers.google.com/speed/pagespeed/insights" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - home" track-metadata-module="primary nav" data-category="home" data-label="navTopMenu" track-name="home" data-action="tabClick" > HOME </a> </tab> <tab class="devsite-active"> <a href="https://developers.google.com/speed/docs/insights/v5/about" track-metadata-eventdetail="https://developers.google.com/speed/docs/insights/v5/about" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - docs" track-metadata-module="primary nav" aria-label="DOCS, selected" data-category="guide" data-label="navTopMenu" track-name="docs" data-action="tabClick" > DOCS </a> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="PageSpeed Insights" tenant-name="Google for Developers" project-scope="/speed/pagespeed/insights" url-scoped="https://developers.google.com/s/results/speed/pagespeed/insights" > <form class="devsite-search-form" action="https://developers.google.com/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> <devsite-user enable-profiles fp-auth id="devsite-user"> <span class="button devsite-top-button" aria-hidden="true" visually-hidden>Sign in</span> </devsite-user> </div> </div> </div> <div class="devsite-collapsible-section devsite-header-no-lower-tabs "> <div class="devsite-header-background"> <div class="devsite-product-id-row" > <div class="devsite-product-description-row"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/speed/docs/insights/v5/about" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="" > Make your web pages fast on all devices </a> </li> </ul> </div> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars > <div class="devsite-book-nav-filter" > <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <a href="https://developers.google.com/speed/pagespeed/insights"> <div class="devsite-product-logo-container" size="medium" > <picture> <img class="devsite-product-logo" alt="PageSpeed Insights" src="https://www.gstatic.com/images/icons/material/product/2x/pagespeed_64dp.png" srcset=" https://www.gstatic.com/images/icons/material/product/2x/pagespeed_64dp.png" sizes="64px" loading="lazy" > </picture> </div> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/speed/pagespeed/insights" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="PageSpeed Insights" > PageSpeed Insights </a> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="https://developers.google.com/speed/pagespeed/insights" class="devsite-nav-title gc-analytics-event " data-category="home" data-label="navTopMenu" track-name="home" data-action="tabClick" data-category="Site-Wide Custom Events" data-label="Responsive Tab: HOME" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > HOME </span> </a> </li> <li class="devsite-nav-item"> <a href="/speed/docs/insights/v5/about" class="devsite-nav-title gc-analytics-event devsite-nav-has-children devsite-nav-active" data-category="guide" data-label="navTopMenu" track-name="docs" data-action="tabClick" data-category="Site-Wide Custom Events" data-label="Responsive Tab: DOCS" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > DOCS </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="_book"> <li class="devsite-nav-item"><a href="/speed/docs/insights/v5/about" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /speed/docs/insights/v5/about" track-type="bookNav" track-name="click" track-metadata-eventdetail="/speed/docs/insights/v5/about" ><span class="devsite-nav-text" tooltip>About PageSpeed Insights</span></a></li> <li class="devsite-nav-item"><a href="/speed/docs/insights/languages" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /speed/docs/insights/languages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/speed/docs/insights/languages" ><span class="devsite-nav-text" tooltip>Languages</span></a></li> <li class="devsite-nav-item"><a href="/speed/docs/insights/release_notes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /speed/docs/insights/release_notes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/speed/docs/insights/release_notes" ><span class="devsite-nav-text" tooltip>Release Notes</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>PageSpeed API</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/speed/docs/insights/v5/get-started" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /speed/docs/insights/v5/get-started" track-type="bookNav" track-name="click" track-metadata-eventdetail="/speed/docs/insights/v5/get-started" ><span class="devsite-nav-text" tooltip>Get Started</span></a></li><li class="devsite-nav-item"><a href="/speed/docs/insights/rest/v5/pagespeedapi/runpagespeed" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /speed/docs/insights/rest/v5/pagespeedapi/runpagespeed" track-type="bookNav" track-name="click" track-metadata-eventdetail="/speed/docs/insights/rest/v5/pagespeedapi/runpagespeed" ><span class="devsite-nav-text" tooltip>API Reference</span></a></li><li class="devsite-nav-item"><a href="/speed/docs/insights/libraries" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /speed/docs/insights/libraries" track-type="bookNav" track-name="click" track-metadata-eventdetail="/speed/docs/insights/libraries" ><span class="devsite-nav-text" tooltip>Client Libraries</span></a></li></ul></li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content" has-book-nav > <devsite-content> <article class="devsite-article"> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="" > Home </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/products" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="" > Products </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/speed" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="Make the Web Faster" > Make the Web Faster </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/speed/pagespeed/insights" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="4" track-type="globalNav" track-name="breadcrumb" track-metadata-position="4" track-metadata-eventdetail="PageSpeed Insights" > Insights </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/speed/docs/insights/v5/about" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="5" track-type="globalNav" track-name="breadcrumb" track-metadata-position="5" track-metadata-eventdetail="" > DOCS </a> </li> </ul> <devsite-thumb-rating position="header"> </devsite-thumb-rating> </div> <h1 class="devsite-page-title" tabindex="-1"> Release Notes </h1> <devsite-feature-tooltip ack-key="AckCollectionsBookmarkTooltipDismiss" analytics-category="Site-Wide Custom Events" analytics-action-show="Callout Profile displayed" analytics-action-close="Callout Profile dismissed" analytics-label="Create Collection Callout" class="devsite-page-bookmark-tooltip nocontent" dismiss-button="true" id="devsite-collections-dropdown" dismiss-button-text="Dismiss" close-button-text="Got it"> <devsite-bookmark></devsite-bookmark> <span slot="popout-heading"> Stay organized with collections </span> <span slot="popout-contents"> Save and categorize content based on your preferences. </span> </devsite-feature-tooltip> <div class="devsite-page-title-meta"><devsite-view-release-notes></devsite-view-release-notes></div> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded > </devsite-toc> <div class="devsite-article-body clearfix "> <h2 id="release-notes-for-pagespeed-insights-api-and-pagespeed-insights-ui" data-text="Release notes for PageSpeed Insights API and PageSpeed Insights UI" tabindex="-1">Release notes for PageSpeed Insights API and PageSpeed Insights UI</h2> <p>Note: The API is versioned as v5, however the Lighthouse version is independent and updated regularly.</p> <h3 id="may-10,-2024" data-text="May 10, 2024" tabindex="-1">May 10, 2024</h3> <p> As of May 10, 2024, PageSpeed Insights and the API have been updated to <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v12.0.0">Lighthouse 12.0</a>. Please be aware that there are some breaking changes in the API response, including the removal of the PWA category. </p> <h3 id="aug-28,-2023" data-text="Aug 28, 2023" tabindex="-1">Aug 28, 2023</h3> <p> As of Aug 9, 2023, PageSpeed Insights and the API have been updated to <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v11.0.0">Lighthouse 11.0</a>. Please be aware that there are some <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v11.0.0#:~:text=%F0%9F%92%A5-,Breaking%20changes">breaking changes in the API response</a>. </p> <p> The <a href="https://developer.chrome.com/blog/lighthouse-11-0/">Lighthouse 11 blog post<a> describes the notable changes, including updates to the Accessibility category and existing audits. </p> <h3 id="aug-8,-2023" data-text="Aug 8, 2023" tabindex="-1">Aug 8, 2023</h3> <p> As referenced in the <a href="#may-10,-2023">previous release note</a>, <code translate="no" dir="ltr">EXPERIMENTAL_INTERACTION_TO_NEXT_PAINT</code> is no longer in the API response. <code translate="no" dir="ltr">INTERACTION_TO_NEXT_PAINT</code> has the same data, and should be used for the page's field INP. </p> <h3 id="may-10,-2023" data-text="May 10, 2023" tabindex="-1">May 10, 2023</h3> <p> Interaction to Next Paint (INP) is no longer an experimental metric, and is now a <a href="https://web.dev/inp-cwv/">pending Core Web Vital</a>. This change is reflected in UI and API. </p> <p> For the API specifically, the response now has metric <code translate="no" dir="ltr">INTERACTION_TO_NEXT_PAINT</code>, which contains the same data as <code translate="no" dir="ltr">EXPERIMENTAL_INTERACTION_TO_NEXT_PAINT</code>. <code translate="no" dir="ltr">EXPERIMENTAL_INTERACTION_TO_NEXT_PAINT</code> will be removed from the response in 90 days (August 8, 2023). </p> <h3 id="march-16,-2023" data-text="March 16, 2023" tabindex="-1">March 16, 2023</h3> <p> Announcing a new feature in the UI: shareable links! Now, analyzing a URL will take you to a new <code translate="no" dir="ltr">/analysis</code> path, with a unique identifier in the link. </p> <figure> <img src="/static/speed/docs/insights/images/v5/shareable_link.png" alt="Screenshot of shareable links in PageSpeed Insights UI." class="screenshot" style="display: block; margin: 0 auto;" width="1000" height="496"> </figure> <p> This page contains a shareable snapshot of the report, with a timestamp at the top that denotes the time of analysis. Clicking the "Copy Link" button copies the link to your clipboard, which is shareable for 30 days after creation. Note that the previous <code translate="no" dir="ltr">/report</code> path will redirect to the analogous <code translate="no" dir="ltr">/analysis</code> path. </p> <h3 id="march-14,-2023" data-text="March 14, 2023" tabindex="-1">March 14, 2023</h3> <p> PageSpeed Insights and the API have been updated from Lighthouse 9.6.x to <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v10.0.0">Lighthouse 10.0.x</a>. There are some <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v10.0.0#:~:text=%F0%9F%92%A5-,Breaking%20changes">breaking changes in the API response</a>, including a new location for <code translate="no" dir="ltr">full-page-screenshot</code> and updated <code translate="no" dir="ltr">Url</code> properties. </p> <p>The <a href="https://developer.chrome.com/blog/lighthouse-10-0/">Lighthouse 10 blog post<a> describes the notable changes, including scoring.</p> <h3 id="oct-27,-2022" data-text="Oct 27, 2022" tabindex="-1">Oct 27, 2022</h3> <p> The UI now has more Lighthouse categories in the lab data section, in addition to Performance. The added categories are Accessibility, Best Practices, and SEO. See <a href="https://developer.chrome.com/docs/lighthouse/overview/">Lighthouse documentation<a> for details about these categories and their respective audits. </p> <h3 id="may-10,-2022" data-text="May 10, 2022" tabindex="-1">May 10, 2022</h3> <p> Introducing two new experimental field metrics to both the API and UI: <a href="https://web.dev/inp/">Interaction to Next Paint (INP)</a> and <a href="https://web.dev/ttfb/">Time to First Byte (TTFB)</a>. These field metrics are currently experimental, but are now available for users to try out. Experimental metrics may change or disappear. </p> <p> The UI has a new loading experience as well. Changes include: </p> <ul> <li> Field and lab data load in parallel, so you’ll see results sooner. </li> <li> PSI will attempt to resolve HTTP redirects before analysis. Before, PSI would send the URL directly to Lighthouse and Lighthouse would handle redirects. Now, PSI will attempt to follow 3XX redirects before handing off that URL to Lighthouse. It is still possible to opt to run with the "original" URL, but this is not usually advised. </li> <li> The Core Web Vitals (CWV) metrics (LCP, FID, CLS) appear directly underneath the CWV assessment. </li> <li> We tightened the design, reducing verbosity and vertical space. </li> </ul> <h3 id="feb-17,-2022" data-text="Feb 17, 2022" tabindex="-1">Feb 17, 2022</h3> <p> PageSpeed Insights is now using Lighthouse 9.3.0. See the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v9.3.0">complete 9.3.0 release notes</a>. </p> <h3 id="nov-15,-2021" data-text="Nov 15, 2021" tabindex="-1">Nov 15, 2021</h3> <p> PageSpeed Insights UI has a new look and <a href="https://pagespeed.web.dev/">home</a>. Check it out! See the <a href="https://web.dev/whats-new-pagespeed-insights">associated blog post</a> for more information. </p> <p> Also, as of Nov 13, 2021, PageSpeed Insights is now using Lighthouse 9.0.0. See the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v9.0.0">complete 9.0.0 release notes</a> and read through the notable changes. </p> <h3 id="sept-22,-2021" data-text="Sept 22, 2021" tabindex="-1">Sept 22, 2021</h3> <p> PageSpeed Insights is now using Lighthouse 8.4.0. See the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v8.4.0">complete 8.4.0 release notes</a>. </p> <h3 id="aug-31,-2021" data-text="Aug 31, 2021" tabindex="-1">Aug 31, 2021</h3> <p> PageSpeed Insights is now using Lighthouse 8.3.0. See the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v8.3.0">complete 8.3.0 release notes</a>, along with the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v8.2.0">8.2.0</a> and <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v8.1.0">8.1.0</a> release notes. </p> <h3 id="june-10,-2021" data-text="June 10, 2021" tabindex="-1">June 10, 2021</h3> <p> PageSpeed Insights field data is now provided for pages and origins that might have insufficient data for a metric, but sufficient data for other metrics. Previously, field data was only surfaced if all metrics for a page or origin met a threshold of data. Now, any metric that meets the data threshold will be provided. This is reflected in the <code translate="no" dir="ltr">loadingExperience</code> and <code translate="no" dir="ltr">originLoadingExperience</code> objects in the API, and also in the frontend. See the <a href="https://developers.google.com/speed/docs/insights/v5/about#field-data-label">docs</a> for how this relates to the Core Web Vitals assessment. </p> <h3 id="june-1,-2021" data-text="June 1, 2021" tabindex="-1">June 1, 2021</h3> <p> PageSpeed Insights is using Lighthouse 8.0.0. See the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v8.0.0">complete 8.0.0 release notes</a> and read through the Notable changes. If you use the API, consider the Breaking changes for programmatic users. </p> <p> The CrUX API (which underpins PSI's field data section) has been updated, see their <a href="/web/tools/chrome-user-experience-report/bigquery/changelog#202105">release notes</a>. </p> <h3 id="may-24,-2021" data-text="May 24, 2021" tabindex="-1">May 24, 2021</h3> <p> Pagespeed's underlying Chrome instance was upgraded from Chrome 88 to Chrome 90. This wouldn't be very observable, except for possible impact of <a href="https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/speed/metrics_changelog/cls.md">a few improvements to CLS</a> that were part of 89 and 90. </p> <h3 id="april-1,-2021" data-text="April 1, 2021" tabindex="-1">April 1, 2021</h3> <p>Lighthouse 7.3.0 was deployed to PageSpeed Insights on April 1, 2021. See the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v7.3.0">complete 7.3.0 release notes</a>.</p> <h3 id="march-3,-2021" data-text="March 3, 2021" tabindex="-1">March 3, 2021</h3> <p>As of March 3, 2021, PageSpeed Insights uses http/2 to make network requests, if the server supports it. Previously, all requests were made with http/1.1 due to constraints in connectivity infrastructure. With this improvement, you can expect more similarity between Lighthouse results from PSI and from Lighthouse CLI and DevTools (which have always made requests with h2). However, it's important to keep in mind that different environments (hardware & connectivity) will <a href="https://github.com/GoogleChrome/lighthouse/blob/master/docs/variability.md">influence</a> measurement, so cross-environment consistency is near impossible.</p> <p>With this change, network connections are often established quicker. Given your requests are served in h2, you can likely expect metrics and the performance score to improve. <b>In general, performance scores across all PageSpeed Insights runs went up by a few points.</b></p> <p>If your page does not support h2, the report will now show <a href="https://web.dev/uses-http2/">an audit</a> that estimates the performance improvement if the page were to support h2.</p> <h3 id="march-2,-2021" data-text="March 2, 2021" tabindex="-1">March 2, 2021</h3> <p>As of March 2, 2021, the max timeout of the PSI API was raised from 60s to 120s. Complex and heavy web pages can take longer to analyze, and many would time out. We've relaxed our timeouts to give these heavyweight pages a better chance of getting results.</p> <h3 id="february-19,-2021" data-text="February 19, 2021" tabindex="-1">February 19, 2021</h3> <p>As of February 19, 2021, PageSpeed Insights is using Lighthouse 7.1.0. See the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v7.0.0">complete 7.0.0 release notes</a> and read through the <i>Notable changes</i>. If you use the API, consider the <a href="https://github.com/GoogleChrome/lighthouse/releases/tag/v7.0.0#:~:text=programmatic%20users">Breaking changes for programmatic users</a>. As this is an upgrade since 6.3.0, it includes the major v7 release, along with 6.4.0, 6.5.0 and 7.1.0 <a href="https://github.com/GoogleChrome/lighthouse/releases">releases</a>. You may see runs taking slightly longer for heavy pages. You shouldn't expect significantly different performance scores, though small metric adjustments are due to bug fixes in the analysis and metric implementations.</p> <h3 id="december-3,-2020" data-text="December 3, 2020" tabindex="-1">December 3, 2020</h3> <p>As of December 3, 2020, PageSpeed Insights is using the <a href="https://web.dev/chrome-ux-report-api/">Chrome User Experience Report (CrUX) API</a> to get field data. In the API, this affects the <code translate="no" dir="ltr">loadingExperience</code> and <code translate="no" dir="ltr">originLoadingExperience</code> objects. More information on the change can be found <a href="https://groups.google.com/g/pagespeed-insights-discuss/c/by9-TbqdlBM/m/Ovgg_o22AAAJ">here</a>.</p> <h3 id="sept-8,-2020" data-text="Sept 8, 2020" tabindex="-1">Sept 8, 2020</h3> <p>Lighthouse 6.3.0 was deployed to PageSpeed Insights on Sept 8, 2020.</p> <h3 id="may-27,-2020" data-text="May 27, 2020" tabindex="-1">May 27, 2020</h3> <p>Lighthouse 6.0.0 was deployed to PageSpeed Insights on May 27, 2020.</p> <h3 id="may-2020" data-text="May 2020" tabindex="-1">May 2020</h3> <p>v1, v2, v3beta1, and v4 of the PageSpeed Insights API were removed in May 2020. Here are some <a href="https://developers.google.com/search/blog/2018/11/pagespeed-insights-now-powered-by">deprecated</a> in Nov 2018. See here for <a href="https://groups.google.com/g/pagespeed-insights-discuss/c/OaQfiN1oX4g/m/JVqOy6XeAQAJ">migration suggestions</a>.</p> <h3 id="may-7,-2019" data-text="May 7, 2019" tabindex="-1">May 7, 2019</h3> <p>Lighthouse released 5.0 on May 7, 2019. Information on changes can be found here: <a href="https://bit.ly/lhpsi5">Lighthouse 5.0 + PSI Release Notes</a></p> <h3 id="january-31,-2019" data-text="January 31, 2019" tabindex="-1">January 31, 2019</h3> <p>Lighthouse (which powers PageSpeed Insights) released v4.1 on January 31, 2019. Information on changes can be found here: <a href="https://bit.ly/2MSS55O">Lighthouse 4.1 Release Notes</a></p> <h3 id="november-2018" data-text="November 2018" tabindex="-1">November 2018</h3> <p>v5 of the PageSpeed Insights API was released in November 2018. It now uses <a href="/web/tools/lighthouse">Lighthouse</a> as its analysis engine and also incorporates field data provided by the <a href="/web/tools/chrome-user-experience-report">Chrome User Experience Report</a> (CrUX). v5 of the API will now provide CrUX data and all of the Lighthouse audits. Previous versions of the PSI API will be deprecated in six months.</p> <h2 id="historical-api-versions" data-text="Historical API Versions" tabindex="-1">Historical API Versions</h2> <h3 id="version-4" data-text="Version 4" tabindex="-1">Version 4</h3> <p>v4 of the PageSpeed Insights API was released in January 2018. It adds a speed score based on <a href="/web/tools/chrome-user-experience-report">Chrome User Experience Report</a> and refines the original PSI score as a new optimization score which mainly focuses on the relative headroom to improve.</p> <h3 id="version-2" data-text="Version 2" tabindex="-1">Version 2</h3> <p>v2 of the PageSpeed Insights API was released in January 2015. It adds support for rule groups, such as 'SPEED' or 'USABILITY'.</p> <p>Updates after release:</p> <ul> <li>Result category was added on May 12th, 2017.</li> <li>Render engine was switched from Webkit to Blink on February 2nd, 2017.</li> <li>Image optimization library was switched to use the one in <a href="https://github.com/pagespeed/mod_pagespeed/blob/master/README.md">mod_pagespeed</a> on December 12th, 2016.</li> <li>The app-install interstitial rule was removed from score computation in both API versions on August 23th, 2016. The rule was removed completely on November 1st, 2016.</li> </ul> <p><i>Deprecated. Will close on Jun 2018.</i></p> <h3 id="version-1" data-text="Version 1" tabindex="-1">Version 1</h3> <p>The initial version of the API. This release includes support for localization in 40 languages.</p> <p>On October 29, 2013, the <code translate="no" dir="ltr">ruleScore</code> field, which has been deprecated in PageSpeed Insights for over a year, was removed from the API. We recommend that clients use the <code translate="no" dir="ltr">ruleImpact</code> field instead.</p> <p><i>Closed.</i></p> <section id="try-it"> <div class="devsite-apix"> <div class='apis-explorer' data-discovery-rest-url='https://pagespeedonline.googleapis.com/$discovery/rest?version=v5' data-method-id='pagespeedonline.pagespeedapi.runpagespeed' data-params=''></div> </div> </section> </div> <devsite-recommendations display="in-page" hidden yield> </devsite-recommendations> <devsite-thumb-rating position="footer"> </devsite-thumb-rating> <devsite-recommendations id="recommendations-link" yield></devsite-recommendations> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-content-footer class="nocontent"> <p>Except as otherwise noted, the content of this page is licensed under the <a href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 License</a>, and code samples are licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache 2.0 License</a>. For details, see the <a href="https://developers.google.com/site-policies">Google Developers Site Policies</a>. Java is a registered trademark of Oracle and/or its affiliates.</p> <p>Last updated 2024-10-17 UTC.</p> </devsite-content-footer> <devsite-notification > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-content-data-template"> [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-10-17 UTC."],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> <ul class="devsite-footer-linkboxes-list"> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Product Info</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/terms" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Terms of Service </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/speed/docs/insights/release_notes" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Release Notes </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Client Libraries</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/speed/docs/insights/libraries" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Libraries and Samples </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Developer consoles</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//console.developers.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Google API Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//console.cloud.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Google Cloud Platform Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//play.google.com/apps/publish" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Google Play Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//console.firebase.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Firebase Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//console.actions.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Actions on Google Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//cast.google.com/publish" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > Cast SDK Developer Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//chrome.google.com/webstore/developer/dashboard" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 7)" > Chrome Web Store Dashboard </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//console.home.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 8)" > Google Home Developer Console </a> </li> </ul> </li> </ul> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-sites" aria-label="Other Google Developers websites"> <a href="https://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <picture> <img class="devsite-footer-sites-logo" src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/lockup-google-for-developers.svg" loading="lazy" alt="Google Developers"> </picture> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//developer.android.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Android Link" > Android </a> </li> <li class="devsite-footer-sites-item"> <a href="//developer.chrome.com/home" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Chrome Link" > Chrome </a> </li> <li class="devsite-footer-sites-item"> <a href="//firebase.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Firebase Link" > Firebase </a> </li> <li class="devsite-footer-sites-item"> <a href="//cloud.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Cloud Platform Link" > Google Cloud Platform </a> </li> <li class="devsite-footer-sites-item"> <a href="//ai.google.dev/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google AI Link" > Google AI </a> </li> <li class="devsite-footer-sites-item"> <a href="/products" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer All products Link" > All products </a> </li> </ul> </nav> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/terms/site-terms" data-category="Site-Wide Custom Events" data-label="Footer Terms link" > Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Sign up for the Google for Developers newsletter</span> <a class="devsite-footer-utility-link gc-analytics-event" href="/newsletter/subscribe" data-category="Site-Wide Custom Events" data-label="Footer Subscribe link" > Subscribe </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> </nav> </div> </devsite-footer-utility> <devsite-panel></devsite-panel> <devsite-concierge data-info-panel data-ai-panel data-api-explorer-panel > </devsite-concierge> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[{"dimensions": {"dimension11": false, "dimension6": "en", "dimension1": "Signed out", "dimension4": "PageSpeed Insights", "dimension3": false, "dimension5": "en"}, "gaid": "UA-24532603-1", "metrics": {"ratings_count": "metric2", "ratings_value": "metric1"}, "purpose": 1}, {"dimensions": {"dimension11": false, "dimension6": "en", "dimension1": "Signed out", "dimension4": "PageSpeed Insights", "dimension3": false, "dimension5": "en"}, "gaid": "UA-22137612-2", "metrics": {"ratings_count": "metric2", "ratings_value": "metric1"}, "purpose": 0}]</script> <script type="application/json" tag-management>{"at": "True", "ga4": [{"id": "G-272J68FCRF", "purpose": 1}], "ga4p": [{"id": "G-272J68FCRF", "purpose": 1}], "gtm": [], "parameters": {"internalUser": "False", "language": {"machineTranslated": "False", "requested": "en", "served": "en"}, "pageType": "article", "projectName": "PageSpeed Insights", "signedIn": "False", "tenant": "developers", "recommendations": {"sourcePage": "", "sourceType": 0, "sourceRank": 0, "sourceIdenticalDescriptions": 0, "sourceTitleWords": 0, "sourceDescriptionWords": 0, "experiment": ""}, "experiment": {"ids": ""}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="wr2CzGf764iyAJR6YJQmKVCdlvi9XB"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/js/app_loader.js', '[1,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers","https://developers-dot-devsite-v2-prod.appspot.com",null,null,["/_pwa/developers/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png","https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,116,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","developers.google.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["Cloud__enable_free_trial_server_call","MiscFeatureFlags__enable_view_transitions","Concierge__enable_concierge_restricted","Search__enable_ai_search_summaries_restricted","Cloud__enable_cloud_shell_fte_user_flow","Cloud__enable_cloudx_experiment_ids","Cloud__enable_legacy_calculator_redirect","CloudShell__cloud_shell_button","Search__enable_ai_eligibility_checks","Search__enable_dynamic_content_confidential_banner","Search__enable_suggestions_from_borg","Profiles__enable_public_developer_profiles","MiscFeatureFlags__enable_variable_operator","Cloud__enable_cloud_shell","CloudShell__cloud_code_overflow_menu","Search__enable_page_map","BookNav__enable_tenant_cache_key","Profiles__enable_developer_profiles_callout","Profiles__enable_complete_playlist_endpoint","TpcFeatures__enable_required_headers","MiscFeatureFlags__developers_footer_dark_image","Profiles__enable_completecodelab_endpoint","DevPro__enable_developer_subscriptions","Analytics__enable_clearcut_logging","MiscFeatureFlags__enable_firebase_utm","Profiles__enable_profile_collections","Profiles__enable_recognition_badges","Cloud__enable_cloudx_ping","DevPro__enable_cloud_innovators_plus","Concierge__enable_concierge","Cloud__enable_cloud_dlp_service","MiscFeatureFlags__enable_project_variables","MiscFeatureFlags__enable_explain_this_code","EngEduTelemetry__enable_engedu_telemetry","Concierge__enable_pushui","Profiles__enable_dashboard_curated_recommendations","TpcFeatures__enable_mirror_tenant_redirects","Profiles__enable_awarding_url","Profiles__require_profile_eligibility_for_signin","MiscFeatureFlags__emergency_css","Search__enable_ai_search_summaries","Experiments__reqs_query_experiments","Cloud__enable_llm_concierge_chat","Profiles__enable_release_notes_notifications","Profiles__enable_page_saving","MiscFeatureFlags__developers_footer_image","Cloud__enable_cloud_facet_chat","Significatio__enable_by_tenant"],null,null,"AIzaSyBLEMok-5suZ67qRPzx0qUtbnLmyT_kCVE","https://developerscontentserving-pa.clients6.google.com","AIzaSyCM4QpTRSqP5qI4Dvjt4OAScIN8sOUlO-k","https://developerscontentsearch-pa.clients6.google.com",1,4,null,"https://developerprofiles-pa.clients6.google.com",[1,"developers","Google for Developers","developers.google.com",null,"developers-dot-devsite-v2-prod.appspot.com",null,null,[1,1,[1],null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],[1,null,null,[1,20],"/recommendations/information"],null,null,null,[1,1,1],[1,1,null,1,1]],null,[null,null,null,null,null,null,"/images/lockup-new.svg","/images/touchicon-180-new.png",null,null,null,null,1,null,null,null,null,null,null,null,null,1,null,null,null,"/images/lockup-dark-theme-new.svg",[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[6,1,14,15,20,22,23,29,32,36],null,[[null,null,null,[3,7,10,2,39,17,4,32,24,11,12,13,34,15,25],null,null,[1,[["docType","Choose a content type",[["Tutorial",null,null,null,null,null,null,null,null,"Tutorial"],["Guide",null,null,null,null,null,null,null,null,"Guide"],["Sample",null,null,null,null,null,null,null,null,"Sample"]]],["product","Choose a product",[["Android",null,null,null,null,null,null,null,null,"Android"],["ARCore",null,null,null,null,null,null,null,null,"ARCore"],["ChromeOS",null,null,null,null,null,null,null,null,"ChromeOS"],["Firebase",null,null,null,null,null,null,null,null,"Firebase"],["Flutter",null,null,null,null,null,null,null,null,"Flutter"],["Assistant",null,null,null,null,null,null,null,null,"Google Assistant"],["GoogleCloud",null,null,null,null,null,null,null,null,"Google Cloud"],["GoogleMapsPlatform",null,null,null,null,null,null,null,null,"Google Maps Platform"],["GooglePay",null,null,null,null,null,null,null,null,"Google Pay & Google Wallet"],["GooglePlay",null,null,null,null,null,null,null,null,"Google Play"],["Tensorflow",null,null,null,null,null,null,null,null,"TensorFlow"]]],["category","Choose a topic",[["AiAndMachineLearning",null,null,null,null,null,null,null,null,"AI and Machine Learning"],["Data",null,null,null,null,null,null,null,null,"Data"],["Enterprise",null,null,null,null,null,null,null,null,"Enterprise"],["Gaming",null,null,null,null,null,null,null,null,"Gaming"],["Mobile",null,null,null,null,null,null,null,null,"Mobile"],["Web",null,null,null,null,null,null,null,null,"Web"]]]]]],[1,1],null,1],[[["UA-24532603-1"],["UA-22084204-5"],null,null,["UA-24532603-5"],null,null,[["G-272J68FCRF"],null,null,[["G-272J68FCRF",2]]],[["UA-24532603-1",2]],null,[["UA-24532603-5",2]],null,1],[[13,10],[12,9],[11,8],[3,2],[16,13],[4,3],[6,5],[15,12],[5,4],[14,11],[1,1]],[[1,1],[2,2]]],null,4,null,null,null,null,null,null,null,null,null,null,null,null,null,"developers.devsite.google"],null,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m"]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>