Run 3 summary

https://www.sitespeed.io/

Tested using Chrome 102.0.5005.61 (runtime settings).

SummaryWaterfall MetricsVideoFilmstrip CoachPageXrayThird partyScreenshots

Summary

MetricValue
Page metrics
Performance score96
Total page size156.3 KB
Requests11
Timing metrics
TTFB83 ms
First Paint172 ms
Fully Loaded354 ms
Google Web Vitals
TTFB83 ms
First Contentful Paint (FCP) 175 ms
Largest Contentful Paint (LCP) 382 ms
Cumulative Layout Shift (CLS) 0.00
Total Blocking Time18 ms
Max Potential FID68 ms
CPU metrics
CPU long tasks1
CPU last long task happens at257 ms
Visual Metrics
First Visual Change200 ms
Speed Index262 ms
Visual Complete 85%400 ms
Visual Complete 99%400 ms
Last Visual Change400 ms
Screenshot
| Waterfall | | Download HAR | 

Waterfall

| Video | Download | 

Video

Download video
| Filmstrip | 

Filmstrip

Use--filmstrip.showAll to show all filmstrips.

0 s
0.2 sFirst Contentful Paint 175 msuserTimingHeader 185 msFirst Visual Change 200 ms
0.3 suserTimingFooter 213 msDOM Content Loaded Time 218 msPage Load Time 222 msCPU Long Task duration 68 msLayout Shift 0.00037 297 ms
0.4 sFully Loaded 354 msLCP <IMG> 382 msLast Visual Change 400 msVisual Complete 85% 400 msVisual Complete 95% 400 msVisual Complete 99% 400 ms
| Performance advice | Best practice advice | Privacy advice | Page info | Technologies | 

Coach

The coach helps you find performance problems on your web page using web performance best practice rules. And gives you advice on privacy and best practices.

I am the coach

Coach score

Performance advice (96)

TitleAdviceScore
Avoid slowing down the critical rendering path (avoidRenderBlocking)The page has 3 blocking requests and 0 in body parser blocking (2 JavaScript and 1 CSS).80
Description: The critical rendering path is what the browser needs to do to start rendering the page. Every file requested inside of the head element will postpone the rendering of the page, because the browser need to do the request. Avoid loading JavaScript synchronously inside of the head (you should not need JavaScript to render the page), request files from the same domain as the main document (to avoid DNS lookups) and inline CSS for really fast rendering and a short rendering path.
Offenders:
  • https://www.sitespeed.io/js/clipboard-2.0.4.min.js
  • https://www.sitespeed.io/js/prism-1.15.js
  • Don't scale images in the browser (avoidScalingImages)The page has 4 images that are scaled more than 100 pixels. It would be better if those images are sent so the browser don't need to scale them.60
    Description: It's easy to scale images in the browser and make sure they look good in different devices, however that is bad for performance! Scaling images in the browser takes extra CPU time and will hurt performance on mobile. And the user will download extra kilobytes (sometimes megabytes) of data that could be avoided. Don't do that, make sure you create multiple version of the same image server-side and serve the appropriate one.
    Offenders:
  • https://www.sitespeed.io/img/sitespeed-logo-2c.png
  • https://www.sitespeed.io/img/pippi.png
  • https://www.sitespeed.io/img/dashboard-front.png
  • https://www.sitespeed.io/img/public.png
  • Inline CSS for faster first render (inlineCss)The page has both inline CSS and CSS requests even though it uses a HTTP/2-ish connection. If you have many users on slow connections, it can be better to only inline the CSS. Run your own tests and check the waterfall graph to see what happens.95
    Description: In the early days of the Internet, inlining CSS was one of the ugliest things you can do. That has changed if you want your page to start rendering fast for your user. Always inline the critical CSS when you use HTTP/1 and HTTP/2 (avoid doing CSS requests that block rendering) and lazy load and cache the rest of the CSS. It is a little more complicated when using HTTP/2. Does your server support HTTP push? Then maybe that can help. Do you have a lot of users on a slow connection and are serving large chunks of HTML? Then it could be better to use the inline technique, becasue some servers always prioritize HTML content over CSS so the user needs to download the HTML first, before the CSS is downloaded.
    Have a fast largest contentful paint (largestContentfulPaint) You can add importance="high" to the image to increase the load priority that is rolling out soon in Chrome.95
    Description: Largest contentful paint is one of Google Web Vitals and reports the render time of the largest image or text block visible within the viewport, relative to when the page first started loading. To be fast according to Google, it needs to render before 2.5 seconds and results over 4 seconds is poor performance.
    Avoid CPU Long Tasks (longTasks)The page has 1 CPU long task with the total of 68 ms. The total blocking time is 18 ms . However the CPU Long Task is depending on the computer/phones actual CPU speed, so you should measure this on the same type of the device that your user is using. Use Geckoprofiler for Firefox or Chromes tracelog to debug your long tasks.80
    Description: Long CPU tasks locks the thread. To the user this is commonly visible as a "locked up" page where the browser is unable to respond to user input; this is a major source of bad user experience on the web today. However the CPU Long Task is depending on the computer/phones actual CPU speed, so you should measure this on the same type of the device that your user is using. To debug you should use the Chrome timeline log and drag/drop it into devtools or use Firefox Geckoprofiler.
    Offenders:
  • self
  • Best practice advice (100)

    Your best practice score is perfect!

    Privacy advice (100)

    Your privacy score is perfect!

    Page info

    Page info
    TitleWelcome to the wonderful world of Web Performance
    Width1350
    Height4022
    DOM elements370
    Avg DOM depth8
    Max DOM depth13
    Iframes0
    Script tags4
    Local storage0 b
    Session storage0 b
    HTML vs AMPPlain good HTML page

    Technologies used to build the page.

    Data collected using Wappalyzer.  Use --browsertime.firefox.includeResponseBodies htmlor --browsertime.chrome.includeResponseBodies htmlto help Wappalyser find more information about technologies used.

    TechnologyConfidenceCategory
    Netlify 100  PaaS CDN
    Clipboard.js 2.0.4100  Miscellaneous
    | Browser metrics | Visual Metrics | Largest Contentful Paint | Cumulative Layout Shift | Element Timings | Metrics from CDP | 

    Visual Metrics

    Browser Metrics

    Google Web Vitals
    Time to first byte (TTFB)83 ms
    First Contentful Paint (FCP)175 ms
    Largest Contentful Paint (LCP)382 ms
    Cumulative Layout Shift (CLS)0.00
    Total Blocking Time (TBT)18 ms
    Extra timings
    TTFB83 ms
    First Paint172 ms
    Load Event End222 ms
    Fully loaded354 ms
    User Timing marks
    userTimingHeader185 ms
    userTimingFooter213 ms
    User Timing measures
    NameStart timeDuration
    exampleMeasurement185 ms28 ms

    Largest Contentful Paint

    When in time the page main content is rendered (collected using the Largest Contentful Paint API). Read more about Largest Contentful Paint.

    Element typeIMG
    Element/tag<img src="/img/team.png" alt="sitespeed.io Logo with My Little Pony style cats" elementtiming="logo">
    Render time 382 ms
    Load time220 ms
    URL https://www.sitespeed.io/img/team1px.png
    Size (width*height)216500
    DOM path
    main > div:eq(0) > div > div:eq(0) > picture > img> main > div:eq(0) > div > div:eq(0) > picture > img>
    LCP

    The largest contentful paint is highlighted in the image. If no element is highlighted the element was removed before the screenshot or the LCP API couldn't find the element.

    The Largest Contentful Paint API highlighted this image as a part of the LCP.

    LCP

    Detected Cumulative Layout Shift

    0.00037 cumulative layout shift collected from the Cumulative Layout Shift API.

    These HTML elements contribute most to the Cumulative Layout Shifts of the page. The higher score, the more layout shift.

    ScoreHTML Element
    0.00037<div class="grid"></div>
    body > nav > div > div
    Layout shift

    The elements that have shifted place is highlighted in the image (that have a higher value than 0.01). If the element shifted outside of the viewport, you will not see it there. It can be hard to understand what content that has shifted, if that's the case, checkout the video or the filmstrip of the run.

    Element timings

    IdURLImageTag Render timeLoad timeNatural widthNatural height
    header-logo https://www.sitespeed.io/img/sitespeed-logo-2c.png LCP IMG 172 ms 157 ms 324 100
    logo https://www.sitespeed.io/img/team1px.png LCP IMG 382 ms 220 ms 500 433

    Server timings

    There are no Server Timings.

    Custom metrics collected through JavaScript

    There are no custom configured scripts.

    Extra metrics collected using scripting

    There are no custom extra metrics from scripting.

    CDP Performance

    namevalue
    AudioHandlers0
    Documents4
    Frames1
    JSEventListeners4
    LayoutObjects647
    MediaKeySessions0
    MediaKeys0
    Nodes699
    Resources10
    ContextLifecycleStateObservers5
    V8PerContextDatas4
    WorkerGlobalScopes0
    UACSSResources0
    RTCPeerConnections0
    ResourceFetchers4
    AdSubframes0
    DetachedScriptStates3
    ArrayBufferContents1
    LayoutCount6
    RecalcStyleCount5
    LayoutDuration53
    RecalcStyleDuration5
    DevToolsCommandDuration23
    ScriptDuration30
    V8CompileDuration1
    TaskDuration279
    TaskOtherDuration166
    ThreadTime0
    ProcessTime0
    JSHeapUsedSize2997508
    JSHeapTotalSize3620864
    FirstMeaningfulPaint382
    | Summary  | Largest responses  | Requests and sizes per content type  | Data per domain | Expires and last modified statistics  | Requests loaded after onLoad event  | Render blocking requests  | 

    PageXray

    How the page is built.

    Summary
    HTTP versionHTTP/2.0
    Total requests11
    Total domains1
    Total transfer size156.3 KB
    Total content size201.0 KB
    Responses missing compression4
    Number of cookies0
    Third party cookies0
    Requests per response code
    20011

    Largest assets on the page (by transfer size)

    Requests and sizes per content type

    ContentHeader SizeTransfer SizeContent SizeRequests
    html0 b9.1 KB35.7 KB1
    css0 b1.4 KB3.5 KB1
    javascript0 b9.8 KB26.7 KB2
    image0 b129.5 KB128.9 KB6
    favicon0 b6.5 KB6.4 KB1
    Total0 b156.3 KB201.0 KB11

    Data per domain

    DomainTotal download timeTransfer SizeContent SizeRequests
    www.sitespeed.io537 ms156.3 KB201.0 KB11

    Expires and last modified statistics

    typeminmedianmax
    Expires0 seconds6 weeks6 weeks

    Requests loaded after onLoad event

    ContentTransfer SizeRequests
    html0 b0
    css0 b0
    javascript0 b0
    image0 b0
    font0 b0
    favicon6.5 KB1
    Total6.5 KB1

    Requests loaded after onContentLoad

    Includes requests done after onLoad.

    ContentTransfer SizeRequests
    html0 b0
    css0 b0
    javascript0 b0
    image0 b0
    font0 b0
    favicon6.5 KB1
    Total6.5 KB1

    Render blocking requests

    Render blocking information directly from Chrome.

    BlockingIn body parser blockingPotentially blocking
    300

    Render information

    | First vs third | 

    Third party

    Third party requests categorised by Third party web.

    First party requests and sizes per content type

    Calculated using .*sitespeed.* (use --firstParty to configure).

    ContentHeader SizeTransfer SizeContent SizeRequests
    html0 b9.1 KB35.7 KB1
    css0 b1.4 KB3.5 KB1
    javascript0 b9.8 KB26.7 KB2
    image0 b129.5 KB128.9 KB6
    font0 b0 b0 b0
    favicon0 b6.5 KB6.4 KB1
    TotalN/A156.3 KB201.0 KB11

    Third party requests and sizes per content type

    ContentHeader SizeTransfer SizeContent SizeRequests
    html0 b0 b0 b0
    css0 b0 b0 b0
    javascript0 b0 b0 b0
    image0 b0 b0 b0
    font0 b0 b0 b0
    TotalN/AN/AN/A
    afterPageCompleteCheck.png | layoutShift.png | largestContentfulPaint.png | 

    Screenshots

    afterPageCompleteCheck.png

    afterPageCompleteCheck.png

    layoutShift.png

    layoutShift.png

    largestContentfulPaint.png

    largestContentfulPaint.png