Tested 2024-12-10 02:30:53 using Chrome 116.0.5845.140 (runtime settings).
Metric | Value |
---|---|
Page metrics | |
Performance score | 88 |
Total page size | 1.7 MB |
Requests | 51 |
Timing metrics | |
TTFB | 223 ms |
First Paint | 394 ms |
Fully Loaded | 614 ms |
Google Web Vitals | |
TTFB | 223 ms |
First Contentful Paint (FCP) | 394 ms |
Largest Contentful Paint (LCP) | 538 ms |
Cumulative Layout Shift (CLS) | 0.08 |
Total Blocking Time | 5 ms |
Max Potential FID | 55 ms |
CPU metrics | |
CPU long tasks | 2 |
CPU last long task happens at | 450 ms |
Visual Metrics | |
First Visual Change | 400 ms |
Speed Index | 428 ms |
Visual Complete 85% | 534 ms |
Visual Complete 99% | 567 ms |
Last Visual Change | 567 ms |
Use--filmstrip.showAll
to show all filmstrips.
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. Tested using Coach-core version 8.0.2.
Title | Advice | Score | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Avoid slowing down the critical rendering path (avoidRenderBlocking) | The page has 3 blocking requests and 1 in body parser blocking (1 JavaScript and 3 CSS). There are 1 potentially render blocking requests. You need to verify if it is render blocking: https://www.googletagmanager.com/gtag/js?id=G-YP51KSLLWR | 89 | |||||||||
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: | |||||||||||
Avoid using Google Tag Manager. (googleTagManager) | The page is using Google Tag Manager, this is a performance risk since non-tech users can add JavaScript to your page. | 0 | |||||||||
Description: Google Tag Manager makes it possible for non tech users to add scripts to your page that will downgrade performance. | |||||||||||
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 fetchPriority="high" to the image to increase the load priority in Chrome. The image is lazy loaded using the lazy attribute, you should avoid that on the LCP image. | 75 | |||||||||
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 2 CPU long tasks with the total of 127 ms. The total blocking time is 5 ms and 1 long task before first contentful paint with total time of 72 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. | 60 | |||||||||
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: | |||||||||||
Avoid extra requests by setting cache headers (cacheHeaders) | The page has 1 request that are missing a cache time. Configure a cache time so the browser doesn't need to download them every time. It will save 1.2 kB the next access. | 90 | |||||||||
Description: The easiest way to make your page fast is to avoid doing requests to the server. Setting a cache header on your server response will tell the browser that it doesn't need to download the asset again during the configured cache time! Always try to set a cache time if the content doesn't change for every request. | |||||||||||
Offenders: | |||||||||||
Long cache headers is good (cacheHeadersLong) | The page has 38 requests that have a shorter cache time than 30 days (but still a cache time). | 62 | |||||||||
Description: Setting a cache header is good. Setting a long cache header (at least 30 days) is even better beacause then it will stay long in the browser cache. But what do you do if that asset change? Rename it and the browser will pick up the new version. | |||||||||||
Offenders: | |||||||||||
Avoid too many fonts (fewFonts) | The page has 10 font requests. Do you really need them? What value does the fonts give the user? | 0 | |||||||||
Description: How many fonts do you need on a page for the user to get the message? Fonts can slow down the rendering of content, try to avoid loading too many of them because worst case it can make the text invisible until they are loaded (FOIT—flash of invisible text), best case they will flicker the text content when they arrive. | |||||||||||
Offenders: | |||||||||||
Total JavaScript size shouldn't be too big (javascriptSize) | The total JavaScript transfer size is 135.9 kB and the uncompressed size is 394.2 kB. This is quite large. | 50 | |||||||||
Description: A lot of JavaScript often means you are downloading more than you need. How complex is the page and what can the user do on the page? Do you use multiple JavaScript frameworks? | |||||||||||
Offenders:
| |||||||||||
Make each CSS response small (optimalCssSize) | https://www.proantic.com/css/A.sweetalert2-v1-2.css+carrousel-09.css+fontawesome.min.css+regular.min.css+thin.min.css+sharp-solid.min.css+light.min.css,Mcc.oKPVERJshr.css.pagespeed.cf.pOHLdeuq91.css size is 39.6 kB (39568) and that is bigger than the limit of 14.5 kB. Try to make the CSS files fit into 14.5 KB. | 90 | |||||||||
Description: Make CSS responses small to fit into the magic number TCP window size of 14.5 KB. The browser can then download the CSS faster and that will make the page start rendering earlier. | |||||||||||
Offenders:
| |||||||||||
Don't use private headers on static content (privateAssets) | The page has 1 request with private headers. Make sure that the assets really should be private and only used by one user. Otherwise, make it cacheable for everyone. | 90 | |||||||||
Description: If you set private headers on content, that means that the content are specific for that user. Static content should be able to be cached and used by everyone. Avoid setting the cache header to private. | |||||||||||
Offenders: |
Title | Advice | Score |
---|---|---|
Use a good Content-Security-Policy header to make sure you you avoid Cross Site Scripting (XSS) attacks. (contentSecurityPolicyHeader) | Set a Content-Security-Policy header to make sure you are not open for Cross Site Scripting (XSS) attacks. You can start with setting a Content-Security-Policy-Report-Only header, that will only report the violation, not stop the download. | 0 |
Description: Content Security Policy is delivered via a HTTP response header, and defines approved sources of content that the browser may load. It can be an effective countermeasure to Cross Site Scripting (XSS) attacks and is also widely supported and usually easily deployed. https://scotthelme.co.uk/content-security-policy-an-introduction/. | ||
Offenders: | ||
Set a referrer-policy header to make sure you do not leak user information. (referrerPolicyHeader) | Set a referrer-policy header to make sure you do not leak user information. | 0 |
Description: Referrer Policy is a new header that allows a site to control how much information the browser includes with navigations away from a document and should be set by all sites. https://scotthelme.co.uk/a-new-security-header-referrer-policy/. | ||
Offenders: | ||
Do not share user data with third parties. (thirdPartyPrivacy) | The page has 6% requests that are 3rd party (3 requests with a size of 137.1 kB). The page also have request to companies that harvest data from users and do not respect users privacy (see https://en.wikipedia.org/wiki/Surveillance_capitalism). The page do 2 survelliance requests and uses 2 survelliance tools. The page do 1 tag-manager request and uses 1 tag-manager tool. The page do 1 marketing request and uses 1 marketing tool. | 0 |
Description: Using third party requests shares user information with that third party. Please avoid that! The project https://github.com/patrickhulce/third-party-web is used to categorize first/third party requests. | ||
Offenders: |
Page info | |
---|---|
Title | Proantic: Achetez des antiquités et objets d'art présentés par des ant |
Width | 1350 |
Height | 8557 |
DOM elements | 753 |
Avg DOM depth | 8 |
Max DOM depth | 13 |
Iframes | 0 |
Script tags | 7 |
Local storage | 0 b |
Session storage | 0 b |
Network Information API | 4g |
Resource Hints |
---|
dns-prefetch |
https://cdn-images.mailchimp.com/ |
preconnect |
https://cdn-images.mailchimp.com/ |
Data collected using Wappalyzerversion 6.10.66.
Use --browsertime.firefox.includeResponseBodies html
or --browsertime.chrome.includeResponseBodies html
to help Wappalyser find more information about technologies used.
Technology | Confidence | Category |
---|---|---|
Nginx | 100 | Web servers Reverse proxies |
Amazon Web Services | 100 | PaaS |
HSTS | 100 | Security |
Google PageSpeed 1.13.35.2 | 100 | Caching Web server extensions Performance |
Amazon CloudFront | 100 | CDN |
HTTP/3 | 100 | Miscellaneous |
Data collected using Third Party Web 0.24.0
Cdn |
---|
Google CDN |
Survelliance |
Google CDN |
Google Tag Manager |
Tag-manager |
Google Tag Manager |
Marketing |
Mailchimp |
Visual Metrics | |
---|---|
First Visual Change | 400 ms |
Speed Index | 428 ms |
Largest Image | 534 ms |
Heading | 567 ms |
LargestContentfulPaint | 534 ms |
Last Meaningful Paint | 567 ms |
Largest Contentful Paint | 534 ms |
Visual Complete 85% | 534 ms |
Visual Complete 95% | 534 ms |
Visual Complete 99% | 567 ms |
Last Visual Change | 567 ms |
Visual Readiness | 167 ms |
Navigation Timing | |
---|---|
backEndTime | 223 ms |
domContentLoadedTime | 554 ms |
domInteractiveTime | 554 ms |
domainLookupTime | 147 ms |
frontEndTime | 340 ms |
pageDownloadTime | 3 ms |
pageLoadTime | 566 ms |
redirectionTime | 0 ms |
serverConnectionTime | 17 ms |
serverResponseTime | 57 ms |
Google Web Vitals | |
---|---|
Time to first byte (TTFB) | 223 ms |
First Contentful Paint (FCP) | 394 ms |
Largest Contentful Paint (LCP) | 538 ms |
Cumulative Layout Shift (CLS) | 0.08 |
Total Blocking Time (TBT) | 5 ms |
First Contentful Paint info | |
---|---|
Elements that needed recalculate style before FCP | 725 |
Time spent in recalculate style before FCP | 22.549 ms |
Extra timings | |
---|---|
TTFB | 223 ms |
First Paint | 394 ms |
Load Event End | 566 ms |
Fully loaded | 614 ms |
When in time the page main content is rendered (collected using the Largest Contentful Paint API). Read more about Largest Contentful Paint.
Element type | IMG |
Element/tag | <img loading="lazy" src="https://www.proantic.com/galerie/decorhome/img/small/1262916-main-65b2052e485e5.jpg" alt="Paire De Candélabres En Bronzes Dorés Jeunes Bacchus Et Bacchante Aprs Clodion Style Louis XVI " class="img-selection"> |
Render time | 538 ms |
Elements that needed recalculate style before LCP | 751 |
Time spent in recalculate style before LCP | 24.596 ms |
Load time | 450 ms |
URL | https://www.proantic...65b2052e485e5.jpg |
Size (width*height) | 58960 |
DOM path | |
div#section-selection > div:eq(1) > div > div:eq(0) > div:eq(0) > div > a > img> div#section-selection > div:eq(1) > div > div:eq(0) > div:eq(0) > div > a > img> |
0.08139 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.
Score | HTML Element |
---|---|
0.07965 | <div class="overlay-selection nouveautes accueil"></div>,<div class="overlay-selection nouveautes accueil"></div>,<div class="overlay-selection nouveautes accueil"></div>,<div class="w-col w-col-4 columns-nouveautes"></div>,<div class="w-col w-col-4 columns-nouveautes"></div> |
body > div#section-selection > div:eq(1) > div > div:eq(0) > div:eq(0) > div > div,body > div#section-selection > div:eq(1) > div > div:eq(0) > div:eq(1) > div > div,body > div#section-selection > div:eq(1) > div > div:eq(0) > div:eq(2) > div > div,body > div#section-selection > div:eq(1) > div > div:eq(0) > div:eq(3),body > div#section-selection > div:eq(1) > div > div:eq(0) > div:eq(5) | |
0.00131 | <div class="w-dropdown-nav nav-menu-hover nav-menu-hover-meta" onclick=""></div>,,<div class="w-dropdown-nav nav-menu-hover nav-menu-hover-meta" data-menu="antiquaire"></div>,<div class="w-dropdown-nav nav-menu-hover nav-menu-hover-meta" onclick=""></div>,<div class="w-dropdown-nav magazine nav-menu-hover nav-menu-hover-meta"></div> |
body > div#totop > div > div#new-menu-top > nav > div:eq(6),body > div#section-selection > div:eq(0) > div > h1 > #text,body > div#totop > div > div#new-menu-top > nav > div:eq(7),body > div#totop > div > div#new-menu-top > nav > div:eq(3),body > div#totop > div > div#new-menu-top > nav > div:eq(8) | |
0.00044 | |
body > div#section-selection > div:eq(0) > div > h2 > #text |
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.
There are no Server Timings.
There are no custom configured scripts.
There are no custom extra metrics from scripting.
name | value |
---|---|
AudioHandlers | 0 |
AudioWorkletProcessors | 0 |
Documents | 5 |
Frames | 1 |
JSEventListeners | 30 |
LayoutObjects | 1226 |
MediaKeySessions | 0 |
MediaKeys | 0 |
Nodes | 2528 |
Resources | 138 |
ContextLifecycleStateObservers | 6 |
V8PerContextDatas | 3 |
WorkerGlobalScopes | 0 |
UACSSResources | 0 |
RTCPeerConnections | 0 |
ResourceFetchers | 5 |
AdSubframes | 0 |
DetachedScriptStates | 2 |
ArrayBufferContents | 0 |
LayoutCount | 17 |
RecalcStyleCount | 16 |
LayoutDuration | 66 |
RecalcStyleDuration | 29 |
DevToolsCommandDuration | 24 |
ScriptDuration | 107 |
V8CompileDuration | 1 |
TaskDuration | 428 |
TaskOtherDuration | 201 |
ThreadTime | 0 |
ProcessTime | 1 |
JSHeapUsedSize | 5747556 |
JSHeapTotalSize | 9842688 |
FirstMeaningfulPaint | 394 |
Name | Display Time | X | Y | Width | Height |
---|---|---|---|---|---|
LargestImage (1262916-main-65b2052e485e5.jpg) | 534 ms | 76 | 410 | 268 | 268 |
<img loading="lazy" src="https://www.proantic.com/galerie/decorhome/img/small/1262916-main-65b2052e485e5.jpg" alt="Paire De Candélabres En Bronzes Dorés Jeunes Bacchus Et Bacchante Aprs Clodion Style Louis XVI " class="img-selection"> | |||||
Heading | 567 ms | 75 | 180 | 1200 | 20 |
<h1 class="soustitre-center h5-style " style=""></h1> | |||||
LargestContentfulPaint (1262916-main-65b2052e485e5.jpg) | 534 ms | 76 | 410 | 268 | 268 |
<img loading="lazy" src="https://www.proantic.com/galerie/decorhome/img/small/1262916-main-65b2052e485e5.jpg" alt="Paire De Candélabres En Bronzes Dorés Jeunes Bacchus Et Bacchante Aprs Clodion Style Louis XVI " class="img-selection"> |
How the page is built.
Summary | |
---|---|
HTTP version | HTTP/2.0 |
Total requests | 51 |
Total domains | 4 |
Total transfer size | 1.7 MB |
Total content size | 2.3 MB |
Responses missing compression | 8 |
Number of cookies | 0 |
Third party cookies | 0 |
Requests per response code | |
---|---|
200 | 51 |
Content | Header Size | Transfer Size | Content Size | Requests |
---|---|---|---|---|
html | 0 b | 20.0 KB | 113.5 KB | 1 |
css | 0 b | 67.3 KB | 335.3 KB | 5 |
javascript | 0 b | 132.7 KB | 385.0 KB | 2 |
image | 0 b | 590.3 KB | 579.4 KB | 33 |
font | 0 b | 910.1 KB | 906.1 KB | 10 |
Total | 0 b | 1.7 MB | 2.3 MB | 51 |
Domain | Total download time | Transfer Size | Content Size | Requests |
---|---|---|---|---|
www.proantic.com | 1.946 s | 1.5 MB | 1.9 MB | 48 |
ajax.googleapis.com | 30 ms | 30.9 KB | 87.4 KB | 1 |
www.googletagmanager.com | 40 ms | 101.8 KB | 297.6 KB | 1 |
cdn-images.mailchimp.com | 10 ms | 1.2 KB | 2.0 KB | 1 |
type | min | median | max |
---|---|---|---|
Expires | 0 seconds | 1 week | 1 year |
Last modified | 3 days | 4 weeks | 15 years |
Included requests done after load event end.
Content | Transfer Size | Requests |
---|---|---|
html | 0 b | 0 |
css | 0 b | 0 |
javascript | 0 b | 0 |
image | 88.5 KB | 1 |
font | 0 b | 0 |
Total | 88.5 KB | 1 |
Includes requests done after DOM content loaded.
Content | Transfer Size | Requests |
---|---|---|
html | 0 b | 0 |
css | 0 b | 0 |
javascript | 0 b | 0 |
image | 88.5 KB | 1 |
font | 0 b | 0 |
Total | 88.5 KB | 1 |
Render blocking information directly from Chrome.
Blocking | In body parser blocking | Potentially blocking |
---|---|---|
3 | 1 | 1 |
URL | Type |
---|---|
https://www.proantic...fa-thin-100.woff2 | non_blocking |
https://www.proantic...2-latin-100.woff2 | non_blocking |
https://www.googleta...nager.com/gtag/js | potentially_blocking |
https://www.proantic...cf.pOHLdeuq91.css | blocking |
https://ajax.googlea...6.0/jquery.min.js | in_body_parser_blocking |
https://www.proantic...tin-regular.woff2 | non_blocking |
https://www.proantic...4-latin-300.woff2 | non_blocking |
https://www.proantic...n-300italic.woff2 | non_blocking |
https://www.proantic...0-latin-300.woff2 | non_blocking |
https://www.proantic...tin-regular.woff2 | non_blocking |
https://www.proantic...0-latin-600.woff2 | non_blocking |
https://www.proantic...0-latin-700.woff2 | non_blocking |
https://www.proantic...tin-regular.woff2 | non_blocking |
https://www.proantic...cf.zbYy8QeQV5.css | blocking |
https://www.proantic...cf.argL22mL8H.css | blocking |
https://www.proantic...1_10_3-minify.css | dynamically_injected_non_blocking |
https://cdn-images.m...tal-slim-10_7.css | dynamically_injected_non_blocking |
Download the Chrome trace log and drag and drop it into Developer Tools / Performance in Chrome.
Collected using the Long Task API. A long task is a task that take 50 milliseconds or more.
Type | Quantity | Total duration (ms) |
---|---|---|
Total Blocking Time | 5 | |
Max Potential First Input Delay | 55 | |
Long Tasks before First Paint | 1 | 72 |
Long Tasks before First Contentful Paint | 1 | 72 |
Long Tasks before Largest Contentful Paint | 2 | 127 |
Long Tasks after Load Event End | 0 | 0 |
Total Long Tasks | 2 | 127 |
CPU last long task happened at 450 ms
name | startTime | duration | containerId | containerName | containerSrc | containerType |
---|---|---|---|---|---|---|
self | 299 | 72 | window | |||
self | 450 | 55 | window |
Calculated using Tracium.
Categories (ms) | |
---|---|
parseHTML | 30 |
styleLayout | 94 |
paintCompositeRender | 9 |
scriptParseCompile | 1 |
scriptEvaluation | 101 |
garbageCollection | 4 |
other | 185 |
Events (ms) | |
---|---|
RunTask | 134 |
Layout | 65 |
v8.run | 60 |
UpdateLayoutTree | 29 |
FunctionCall | 27 |
Commit | 25 |
ParseHTML | 21 |
PrePaint | 10 |
URL | CPU time (ms) |
---|---|
https://www.googletagmanager.com/gtag/js?id=G-YP51KSLLWR | 83 |
https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js | 23 |
Tool/domain | Time (ms) |
---|---|
Google Tag Manager | 83.2 |
Google CDN | 23.0 |
Third party requests categorised by Third party web version 0.24.0.
Category | Requests |
---|---|
cdn | 1 |
survelliance | 2 |
tag-manager | 1 |
marketing | 1 |
Category | Number of tools |
---|---|
cdn | 1 |
survelliance | 2 |
tag-manager | 1 |
marketing | 1 |
cdn (1 requests) |
Google CDN |
survelliance (2 requests) |
Google CDN |
Google Tag Manager |
|
tag-manager (1 requests) |
Google Tag Manager |
|
marketing (1 requests) |
Mailchimp |
Calculated using .*proantic.* (use --firstParty
to configure).
Content | Header Size | Transfer Size | Content Size | Requests |
---|---|---|---|---|
html | 0 b | 20.0 KB | 113.5 KB | 1 |
css | 0 b | 66.1 KB | 333.3 KB | 4 |
javascript | 0 b | 0 b | 0 b | 0 |
image | 0 b | 590.3 KB | 579.4 KB | 33 |
font | 0 b | 910.1 KB | 906.1 KB | 10 |
Total | N/A | 1.5 MB | 1.9 MB | 48 |
Content | Header Size | Transfer Size | Content Size | Requests |
---|---|---|---|---|
html | 0 b | 0 b | 0 b | 0 |
css | 0 b | 1.2 KB | 2.0 KB | 1 |
javascript | 0 b | 132.7 KB | 385.0 KB | 2 |
image | 0 b | 0 b | 0 b | 0 |
font | 0 b | 0 b | 0 b | 0 |
Total | N/A | 133.9 KB | 386.9 KB | 3 |
afterPageCompleteCheck.png
layoutShift.png
largestContentfulPaint.png
Axe is an accessibility testing engine for websites and other HTML-based user interfaces. Tested using axe-core version 4.7.2. Read more about axe-core .
serious | |
---|---|
Elements must meet minimum color contrast ratio thresholds (cat.color,wcag2aa,wcag143,ACT,TTv5,TT13.c) - color-contrast | Ensures the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds |
Fix any of the following:
Element has insufficient color contrast of 2.68 (foreground color: #bc9956, background color: #ffffff, font size: 24.0pt (32px), font weight: normal). Expected contrast ratio of 3:1
| |
moderate | |
Document should have one main landmark (cat.semantics,best-practice) - landmark-one-main | Ensures the document has a main landmark |
Fix all of the following:
Document does not have a main landmark
| |
All page content should be contained by landmarks (cat.keyboard,best-practice) - region | Ensures all page content is contained by landmarks |
Fix any of the following:
Some page content is not contained by landmarks
|