Mobile Excellence / HTML5 Responsive Template
Dec 18, 2018, 12:00

HTML5 Responsive Template

by Website Builder from Netherlands
  • 0
    Friendliness
  • 0
    Performance
  • 0
    Usability
  • 0
    PWA
  • 0
    Total
Find out more about the Evaluation
In collaboration with

Mobile Friendliness 80/100

Configures the viewport

This rule triggers when detecting that your page does not specify a viewport, or specifies a viewport that does not adapt to different devices. Source: PageSpeed Insights - Learn more

Content is sized correctly for the viewport

If the width of your app's content doesn't match the width of the viewport, your app might not be optimized for mobile screens. Source: Lighthouse - Learn more

Size tap targets appropriately

This rule triggers when detecting that certain tap targets (e.g. buttons, links, or form fields) may be too small or too close together for a user to easily tap on a touchscreen. Source: PageSpeed Insights - Learn more

Uses legible font sizes

This rule triggers when detecting that text in the page is too small to be legible. Source: PageSpeed Insights - Learn more

Color Contrast is satisfactory

Low-contrast text is difficult or impossible for many users to read. Background and foreground colors should have enough contrast ratio to guarantee readability. Source: Lighthouse - Learn more

Failing Elements

ImpactSnippetTargetFailure Summary
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="designdemo.html">.btn-transparent.btn-secondary-outline[href$="designdemo.html"]Fix any of the following: Element has insufficient color contrast of 2.55 (foreground color: #af938f, background color: #f3f3f3, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="lightingdemo.html">.btn-transparent.btn-secondary-outline[href$="lightingdemo.html"]Fix any of the following: Element has insufficient color contrast of 2.55 (foreground color: #af938f, background color: #f3f3f3, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="architecturaldemo.html">.btn-transparent.btn-secondary-outline[href$="architecturaldemo.html"]Fix any of the following: Element has insufficient color contrast of 2.55 (foreground color: #af938f, background color: #f3f3f3, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="headers.html">.btn-transparent.btn-secondary-outline[href$="headers.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="features.html">.btn-transparent.btn-secondary-outline[href$="features.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="content.html">.btn-transparent.btn-secondary-outline[href$="content.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="pricing.html">.btn-transparent.btn-secondary-outline[href$="pricing.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="team.html">.btn-transparent.btn-secondary-outline[href$="team.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="gallery.html">.btn-transparent.btn-secondary-outline[href$="gallery.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="contacts.html">.btn-transparent.btn-secondary-outline[href$="contacts.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="footers.html">.btn-transparent.btn-secondary-outline[href$="footers.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
...

Performance 74/100

Speed Index

  • Speed Index
    3825.22
    target < 4500 ms

Perceptual Speed Index is a page load performance metric that shows you how quickly the contents of a page are visibly populated. The lower the score, the better. Source: Lighthouse - Learn more

Document complete

  • Time
    10.6
    seconds
  • Resources
    17
    requests
  • Bytes in
    831
    KB

These metrics are collected from the initial request until the browser considers the page loaded (JavaScript onLoad event). This usually happens after all of the image content has loaded but may not include content that is triggered by javascript execution.

Fully load

  • Time
    10.6
    seconds
  • Resources
    19
    requests
  • Bytes in
    838.8
    KB

These metrics are collected from the initial request until 2 seconds of no network activity after Document Complete (JavaScript onLoad event). This will usually include any activity that is triggered by javascript after the main page loads.

Assets by Domain

Requests

  • cdn.ampproject.org

  • mobirise.com

  • fonts.gstatic.com

  • fonts.googleapis.com

  • www.google-analytics.com

Bytes downloaded

  • mobirise.com

  • cdn.ampproject.org

  • fonts.gstatic.com

  • fonts.googleapis.com

  • www.google-analytics.com

Assets by Mime-Type

Requests

  • html

  • js

  • css

  • image

  • font

Bytes downloaded

  • html

  • js

  • css

  • image

  • font

Speed

Load time10588 ms

Also known as the document complete time, it’s the time from the initial request until the browser load event. It can vary based on server location, device, browser, and third-party apps. Source: WebPagetest - Learn more

Page load is fast enough on 3G

A fast page load over a 3G network ensures a good mobile user experience. Source: Lighthouse - Learn more

First byte3489 ms

The time from the initial request to the first byte of the response. Source: WebPagetest - Learn more

First Contentful Paint2489.516 ms

First contentful paint marks the time at which the first text/image is painted. Source: Lighthouse - Learn more

First meaningful paint2489.516 ms

First meaningful paint measures when the primary content of a page is visible. It's essentially the paint after which the biggest above-the-fold layout change has happened, and web fonts have loaded. Source: Lighthouse - Learn more

Estimated Input Latency12 ms (target < 50 ms)

The score above is an estimate of how long your app takes to respond to user input, in milliseconds. There is a 90% probability that a user encounters this amount of latency, or less. 10% of the time a user can expect additional latency. If your score is higher than Lighthouse's target score (< 50ms), users may perceive your app as laggy. Source: Lighthouse - Learn more

Uses persistent connections (keep alive)Score: 100%

Closing connections are a missed opportunity for performance enhancement: additional round-trips between the user and the server to initiate a connection is redundant and time-consuming. Keep-Alive measures the effectiveness of connection reuse. The purpose of this grade is to evaluate the extent to which requests are inefficiently reopening connections. Source: WebPagetest - Learn more

First CPU Idle2489.52 ms

First CPU Idle marks the first time at which the page's main thread is quiet enough to handle input. Source: Lighthouse - Learn more

Time to Interactive2489.52 ms

Interactive marks the time at which the page is fully interactive. Source: Lighthouse - Learn more

Page weight

Uses compression (gzip, zopfli, deflate, brotli)Score: 100%

This rule triggers when detecting that compressible resources were served without gzip compression. Source: WebPagetest - Learn more

Uses a CDN for all static assetsScore: 100%

Each request for a piece of content to the web server has to travel from the user's browser all the way to the server and back. A content delivery network (CDN) is a system for distributing resources to servers geographically closer to users. The main benefit of this is that the round-trip time is faster. The passing grade for using a CDN effectively is to have at least 80% of static resources served from a CDN. Source: WebPagetest - Learn more

Leverage browser caching

Setting an expiry date or a maximum age in the HTTP headers for static resources instructs the browser to load previously downloaded resources from local disk rather than over the network. Source: PageSpeed Insights - Learn more

Leverage browser caching for the following cacheable resources:

URL
https://cdn.ampproject.org/v0.js (50 minutes)
https://mobirise.com/extensions/interioramp/assets/images/111-3.jpg (4 hours)
https://mobirise.com/extensions/interioramp/assets/images/222-4.jpg (4 hours)
https://mobirise.com/extensions/interioramp/assets/images/background2.jpg (4 hours)
https://mobirise.com/extensions/interioramp/assets/images/background3.jpg (4 hours)
https://mobirise.com/extensions/interioramp/assets/images/interioramp.jpg (4 hours)
...

Minify CSS

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Minify HTML

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Minify JavaScript

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Avoids an excessive DOM size399 nodes

Number of elements in the document. Browser engineers recommend pages contain fewer than ~1,500 DOM nodes. The sweet spot is a tree depth < 32 elements and fewer than 60 children/parent element. A large DOM can increase memory usage, cause longer style calculations, and produce costly layout reflows. Source: Lighthouse - Learn more
  • Total DOM Nodes
    399
    target < 1,500 nodes
  • DOM Depth
    13
    target < 32
  • Maximum Children
    25
    target < 60 nodes

Compressed Images

The image compression check just looks at photo images and makes sure the quality isn't set too high. Images can usually be compressed pretty substantially without any noticeable reduction in visual quality. Source: Lighthouse - Learn more

Uses Progressive JPEGsScore: 100 %

A progressive JPEG is image created using the JPEG suite of compression algorithms that will 'fade in' in successive waves of lines until the entire image has completely arrived. They show the entire image right away, looking slightly pixelated until the image data is fully loaded. Source: WebPagetest - Learn more

Properly Sized ImagesPotential savings of 301 KB

Serve images that are appropriately-sized to save cellular data and improve load time. Source: Lighthouse - Learn more

Offscreen images

Consider lazy-loading offscreen images to improve page load speed and time to interactive. Source: Lighthouse - Learn more

First impression

Eliminates render-blocking JavaScript and CSS in above-the-fold content

This rule triggers when detecting that your HTML references a blocking external resource / file in the above-the-fold portion of your page. Source: PageSpeed Insights - Learn more about JS - Learn more about CSS

Your page has 2 blocking CSS resources. This causes a delay in rendering your page.

URL
https://fonts.googleapis.com/css?family=Reem+Kufi
https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,200i,300,300i,400,400i,600,600i,700,700i,900,900i
...

Prioritizes visible content

This rule triggers when detecting that additional network round trips are required to render the above-the-fold content of the page. Source: PageSpeed Insights - Learn more

Improves server response time

This rule triggers when detecting that your server response time is above 200 ms. Server response time measures how long it takes to load the necessary HTML to begin rendering the page from your server, subtracting out the network latency between Google and your server. Source: PageSpeed Insights - Learn more

Avoids landing page redirects

Redirects trigger an additional HTTP request-response cycle and delay page rendering. In the best case, each redirect will add a single round trip (HTTP request-response), and in the worst it may result in multiple additional roundtrips to perform the DNS lookup, TCP handshake, and TLS negotiation in addition to the additional HTTP request-response cycle. As a result, you should minimize use of redirects to improve site performance. Source: PageSpeed Insights - Learn more

Usability 70/100 Industry: Promotional

Brand logo linked to homepage

Fails if doesn't have a logo or clicking it doesn't lead you to homepage.

No ending trailing paths

Fails if doesn't provide at least one of the following: main navigation options on footers, fixed or 'smart' headers/burger-icon, Back to top or close buttons.

Active section is highlighted in navigation menus

Fails if current section or page is not visually highlighted in navigation menus, except for internal section pages where it's accepted not to highlight the parent section.

Listing/overview pages with many items implements deferred loading techniques

Fails if the website doesn't provide at least one of the following: lazy-loading, load more buttons, paginator. Doesn't provide a clear reference about the total amount of items in a portfolio or blog page.

Prevent layout shiftings when loading media. Set width and height attributes on both <img> and <video> tags

Fails if transitioning from placeholders to final images changes the rendered size of the element as media loads. Not using a solid color placeholder occupying the same dimensions as the target image, or techniques such as LQIP or SQIP that hint at the content of a media item before it loads. These changes can be disorienting for users and trigger expensive DOM layout operations that consume system resources and contribute to jank.

Carousels are generally avoided (but they are acceptable if they are well implemented)

Fails if any of the following are seen: carousels auto-rotate, text is not legible, swipe is not supported, next images do not load within 1 second of swipe.

Make it easy to contact you

Fails if the website does not provide all of the following: easy to find contact options, tap to call, mailto on emails, addresses do not link to gMaps, except being embedded.

The most appropriate keyboard for the input type is provided first

Fails if most helpful keyboard not provided, i.e. input types text, tel, email, password, capitalization when appropiate, etc.

The website supports autofill for all form fields and the fields are tagged for the appropriate information from autofill

Fails if fields are not tagged for efficient browser-based autofill, making users enter data that is already known either by the website or the OS. Not filling a standard field or filling fields with the wrong content, i.e. puts house number and street name into the same field when there are separate fields for each.

All mistakes made in forms are clearly highlighted in real time, and instructions for correct completion are provided in real time

Fails if mistakes and guidance for correct completion are not highlighted in real time and/or error messages are ambiguous or unfriendly.

PWA / Best Practices 82/100

Avoids Application Cache

Application Cache is deprecated. Source: Lighthouse - Learn more

Avoids WebSQL DB

Web SQL is deprecated. Consider using IndexedDB instead. Source: Lighthouse - Learn more

Avoids requesting the geolocation permission on page load

Users are mistrustful of or confused by sites that request their location without context. Consider tying the request to user gestures instead. Source: Lighthouse - Learn more

robots.txt is valid

If your robots.txt file is malformed, crawlers may not be able to understand how you want your website to be crawled or indexed. Source: Lighthouse

Avoids requesting the notification permission on page load

Users are mistrustful of or confused by sites that request to send notifications without context. Consider tying the request to user gestures instead. Source: Lighthouse - Learn more

Avoids deprecated APIs

Deprecated APIs will eventually be removed from the browser. Source: Lighthouse - Learn more

Allows to paste into password input fields

The main reason why password pasting improves security is because it helps to reduce password overload. Source: Lighthouse - Learn more

Registers a Service Worker

The service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. Source: Lighthouse - Learn more

Responds with a 200 when offline

If you're building a Progressive Web App, consider using a service worker so that your app can work offline. Source: Lighthouse - Learn more

Uses HTTPS

All sites should be protected with HTTPS, even ones that don't handle sensitive data. HTTPS prevents intruders from tampering with or passively listening in on the communications between your app and your users, and is a prerequisite for HTTP/2 and many new web platform APIs. Source: Lighthouse - Learn more

Redirects HTTP traffic to HTTPS

If you've already set up HTTPS, make sure that you redirect all HTTP traffic to HTTPS. Source: Lighthouse - Learn more

Uses HTTP/2 for its own resources

HTTP/2 offers many benefits over HTTP/1.1, including binary headers, multiplexing, and server push. Source: Lighthouse - Learn more

Uses passive listeners to improve scrolling performance

Mark your touch and wheel event listeners as `passive` to improve your page's scroll performance. Source: Lighthouse - Learn more

Avoid using document.write()

For users on slow connections, external scripts dynamically injected via document.write() can delay page load by tens of seconds. Source: Lighthouse - Learn more

Manifest's short_name won't be truncated when displayed on homescreen

Make your app's short_name fewer than 12 characters to ensure that it's not truncated on homescreens. Source: Lighthouse - Learn more

Configured for a custom splash screen

A default splash screen will be constructed for your app, but satisfying these requirements guarantee a high-quality splash screen that transitions the user from tapping the home screen icon to your app's first paint. Source: Lighthouse - Learn more

User can be prompted to Install the Web App

Browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. Source: Lighthouse - Learn more

Mobile Friendliness 80/100

Configures the viewport

This rule triggers when detecting that your page does not specify a viewport, or specifies a viewport that does not adapt to different devices. Source: PageSpeed Insights - Learn more

Content is sized correctly for the viewport

If the width of your app's content doesn't match the width of the viewport, your app might not be optimized for mobile screens. Source: Lighthouse - Learn more

Size tap targets appropriately

This rule triggers when detecting that certain tap targets (e.g. buttons, links, or form fields) may be too small or too close together for a user to easily tap on a touchscreen. Source: PageSpeed Insights - Learn more

Uses legible font sizes

This rule triggers when detecting that text in the page is too small to be legible. Source: PageSpeed Insights - Learn more

Color Contrast is satisfactory

Low-contrast text is difficult or impossible for many users to read. Background and foreground colors should have enough contrast ratio to guarantee readability. Source: Lighthouse - Learn more

Failing Elements

ImpactSnippetTargetFailure Summary
serious<p class="mbr-text mbr-fonts-style mbr-gray mbr-pt-3 display-7">div:nth-child(1) > .mbr-text.mbr-pt-3Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<p class="mbr-text mbr-fonts-style mbr-gray mbr-pt-3 display-7">div:nth-child(2) > .mbr-text.mbr-pt-3Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<p class="mbr-text mbr-fonts-style mbr-gray mbr-pt-3 display-7">div:nth-child(3) > .mbr-text.mbr-pt-3Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<p class="mbr-text mbr-fonts-style mbr-gray display-7">.title-wrap.align-left.mbr-m-auto > .title-block > .mbr-textFix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7">.btn-secondary-outlineFix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<h4 class="card-subtitle mbr-semibold mbr-fonts-style mbr-pt-1 display-7">Company Director</h4>.mbr-col-lg-3.card.mbr-col-md-6:nth-child(1) > .card-wrapper > .card-box.mbr-pt-3 > .card-subtitle.mbr-pt-1Fix any of the following: Element has insufficient color contrast of 3.58 (foreground color: #9a827d, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<h4 class="card-subtitle mbr-semibold mbr-fonts-style mbr-pt-1 display-7">Architecture Head</h4>.mbr-col-lg-3.card.mbr-col-md-6:nth-child(2) > .card-wrapper > .card-box.mbr-pt-3 > .card-subtitle.mbr-pt-1Fix any of the following: Element has insufficient color contrast of 3.58 (foreground color: #9a827d, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<h4 class="card-subtitle mbr-semibold mbr-fonts-style mbr-pt-1 display-7">Lighting Manager</h4>.mbr-col-lg-3.card.mbr-col-md-6:nth-child(3) > .card-wrapper > .card-box.mbr-pt-3 > .card-subtitle.mbr-pt-1Fix any of the following: Element has insufficient color contrast of 3.58 (foreground color: #9a827d, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<h4 class="card-subtitle mbr-semibold mbr-fonts-style mbr-pt-1 display-7">Manager</h4>.last-child.mbr-col-lg-3.card > .card-wrapper > .card-box.mbr-pt-3 > .card-subtitle.mbr-pt-1Fix any of the following: Element has insufficient color contrast of 3.58 (foreground color: #9a827d, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<h4 class="mbr-section-subtitle mbr-semibold mbr-gray mbr-fonts-style mbr-pt-2 display-5">and we will get back to you.</h4>.title.mbr-pb-4.align-center > .title-block > .mbr-section-subtitleFix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 13.2pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<button type="submit" class="btn btn-md btn-form btn-secondary display-7">SUBMIT NOW</button>.btn-formFix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #ffffff, background color: #af938f, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<p class="mbr-text mbr-gray py-2 links mbr-fonts-style display-7"> Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>.py-2Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h5 class="mbr-fonts-style mbr-gray list1 display-7">Design Project</h5>.list-item.mbr-pt-2.mbr-col-lg-12:nth-child(1) > .list1Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h5 class="mbr-fonts-style mbr-gray list1 display-7">Сalculation of materials</h5>.list-item.mbr-pt-2.mbr-col-lg-12:nth-child(2) > .list1Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h5 class="mbr-fonts-style mbr-gray list1 display-7">Advanced Support</h5>.list-item.mbr-pt-2.mbr-col-lg-12:nth-child(3) > .list1Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h5 class="mbr-fonts-style mbr-gray list1 display-7">Services</h5>.list-item.mbr-pt-2.mbr-col-lg-12:nth-child(4) > .list1Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h5 class="mbr-fonts-style mbr-gray list2 display-7">About Us</h5>.list-item.mbr-pt-2.mbr-col-lg-12:nth-child(1) > .list2Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h5 class="mbr-fonts-style mbr-gray list2 display-7">Help</h5>.list-item.mbr-pt-2.mbr-col-lg-12:nth-child(2) > .list2Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h5 class="mbr-fonts-style mbr-gray list2 display-7">Price Table</h5>.list-item.mbr-pt-2.mbr-col-lg-12:nth-child(3) > .list2Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h5 class="mbr-fonts-style mbr-gray list2 display-7">Get A Quote</h5>.list-item.mbr-pt-2.mbr-col-lg-12:nth-child(4) > .list2Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
...

Performance 81/100

Speed Index

  • Speed Index
    3435.94
    target < 4500 ms

Perceptual Speed Index is a page load performance metric that shows you how quickly the contents of a page are visibly populated. The lower the score, the better. Source: Lighthouse - Learn more

Document complete

  • Time
    8.7
    seconds
  • Resources
    20
    requests
  • Bytes in
    378.5
    KB

These metrics are collected from the initial request until the browser considers the page loaded (JavaScript onLoad event). This usually happens after all of the image content has loaded but may not include content that is triggered by javascript execution.

Fully load

  • Time
    8.7
    seconds
  • Resources
    22
    requests
  • Bytes in
    378.8
    KB

These metrics are collected from the initial request until 2 seconds of no network activity after Document Complete (JavaScript onLoad event). This will usually include any activity that is triggered by javascript after the main page loads.

Assets by Domain

Requests

  • cdn.ampproject.org

  • fonts.gstatic.com

  • mobirise.com

  • fonts.googleapis.com

  • www.google-analytics.com

Bytes downloaded

  • cdn.ampproject.org

  • mobirise.com

  • fonts.gstatic.com

  • fonts.googleapis.com

  • www.google-analytics.com

Assets by Mime-Type

Requests

  • html

  • js

  • css

  • image

  • font

Bytes downloaded

  • html

  • js

  • css

  • image

  • font

Speed

Load time8723 ms

Also known as the document complete time, it’s the time from the initial request until the browser load event. It can vary based on server location, device, browser, and third-party apps. Source: WebPagetest - Learn more

Page load is fast enough on 3G

A fast page load over a 3G network ensures a good mobile user experience. Source: Lighthouse - Learn more

First byte3689 ms

The time from the initial request to the first byte of the response. Source: WebPagetest - Learn more

First Contentful Paint2748.222 ms

First contentful paint marks the time at which the first text/image is painted. Source: Lighthouse - Learn more

First meaningful paint2748.222 ms

First meaningful paint measures when the primary content of a page is visible. It's essentially the paint after which the biggest above-the-fold layout change has happened, and web fonts have loaded. Source: Lighthouse - Learn more

Estimated Input Latency12 ms (target < 50 ms)

The score above is an estimate of how long your app takes to respond to user input, in milliseconds. There is a 90% probability that a user encounters this amount of latency, or less. 10% of the time a user can expect additional latency. If your score is higher than Lighthouse's target score (< 50ms), users may perceive your app as laggy. Source: Lighthouse - Learn more

Uses persistent connections (keep alive)Score: 100%

Closing connections are a missed opportunity for performance enhancement: additional round-trips between the user and the server to initiate a connection is redundant and time-consuming. Keep-Alive measures the effectiveness of connection reuse. The purpose of this grade is to evaluate the extent to which requests are inefficiently reopening connections. Source: WebPagetest - Learn more

First CPU Idle2748.22 ms

First CPU Idle marks the first time at which the page's main thread is quiet enough to handle input. Source: Lighthouse - Learn more

Time to Interactive2748.22 ms

Interactive marks the time at which the page is fully interactive. Source: Lighthouse - Learn more

Page weight

Uses compression (gzip, zopfli, deflate, brotli)Score: 100%

This rule triggers when detecting that compressible resources were served without gzip compression. Source: WebPagetest - Learn more

Uses a CDN for all static assetsScore: 100%

Each request for a piece of content to the web server has to travel from the user's browser all the way to the server and back. A content delivery network (CDN) is a system for distributing resources to servers geographically closer to users. The main benefit of this is that the round-trip time is faster. The passing grade for using a CDN effectively is to have at least 80% of static resources served from a CDN. Source: WebPagetest - Learn more

Leverage browser caching

Setting an expiry date or a maximum age in the HTTP headers for static resources instructs the browser to load previously downloaded resources from local disk rather than over the network. Source: PageSpeed Insights - Learn more

Leverage browser caching for the following cacheable resources:

URL
https://cdn.ampproject.org/v0.js (50 minutes)
https://mobirise.com/extensions/interioramp/assets/images/face5.jpg (4 hours)
https://mobirise.com/extensions/interioramp/assets/images/mbr-5.jpg (4 hours)
...

Minify CSS

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Minify HTML

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Minify JavaScript

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Avoids an excessive DOM size699 nodes

Number of elements in the document. Browser engineers recommend pages contain fewer than ~1,500 DOM nodes. The sweet spot is a tree depth < 32 elements and fewer than 60 children/parent element. A large DOM can increase memory usage, cause longer style calculations, and produce costly layout reflows. Source: Lighthouse - Learn more
  • Total DOM Nodes
    699
    target < 1,500 nodes
  • DOM Depth
    14
    target < 32
  • Maximum Children
    28
    target < 60 nodes

Compressed Images

The image compression check just looks at photo images and makes sure the quality isn't set too high. Images can usually be compressed pretty substantially without any noticeable reduction in visual quality. Source: Lighthouse - Learn more

Uses Progressive JPEGsScore: 100 %

A progressive JPEG is image created using the JPEG suite of compression algorithms that will 'fade in' in successive waves of lines until the entire image has completely arrived. They show the entire image right away, looking slightly pixelated until the image data is fully loaded. Source: WebPagetest - Learn more

Properly Sized ImagesPotential savings of 12 KB

Serve images that are appropriately-sized to save cellular data and improve load time. Source: Lighthouse - Learn more

Offscreen images

Consider lazy-loading offscreen images to improve page load speed and time to interactive. Source: Lighthouse - Learn more

First impression

Eliminates render-blocking JavaScript and CSS in above-the-fold content

This rule triggers when detecting that your HTML references a blocking external resource / file in the above-the-fold portion of your page. Source: PageSpeed Insights - Learn more about JS - Learn more about CSS

Your page has 2 blocking CSS resources. This causes a delay in rendering your page.

URL
https://fonts.googleapis.com/css?family=Reem+Kufi
https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,200i,300,300i,400,400i,600,600i,700,700i,900,900i
...

Prioritizes visible content

This rule triggers when detecting that additional network round trips are required to render the above-the-fold content of the page. Source: PageSpeed Insights - Learn more

Improves server response time

This rule triggers when detecting that your server response time is above 200 ms. Server response time measures how long it takes to load the necessary HTML to begin rendering the page from your server, subtracting out the network latency between Google and your server. Source: PageSpeed Insights - Learn more

Avoids landing page redirects

Redirects trigger an additional HTTP request-response cycle and delay page rendering. In the best case, each redirect will add a single round trip (HTTP request-response), and in the worst it may result in multiple additional roundtrips to perform the DNS lookup, TCP handshake, and TLS negotiation in addition to the additional HTTP request-response cycle. As a result, you should minimize use of redirects to improve site performance. Source: PageSpeed Insights - Learn more

Usability 70/100 Industry: Promotional

Brand logo linked to homepage

Fails if doesn't have a logo or clicking it doesn't lead you to homepage.

No ending trailing paths

Fails if doesn't provide at least one of the following: main navigation options on footers, fixed or 'smart' headers/burger-icon, Back to top or close buttons.

Active section is highlighted in navigation menus

Fails if current section or page is not visually highlighted in navigation menus, except for internal section pages where it's accepted not to highlight the parent section.

Listing/overview pages with many items implements deferred loading techniques

Fails if the website doesn't provide at least one of the following: lazy-loading, load more buttons, paginator. Doesn't provide a clear reference about the total amount of items in a portfolio or blog page.

Prevent layout shiftings when loading media. Set width and height attributes on both <img> and <video> tags

Fails if transitioning from placeholders to final images changes the rendered size of the element as media loads. Not using a solid color placeholder occupying the same dimensions as the target image, or techniques such as LQIP or SQIP that hint at the content of a media item before it loads. These changes can be disorienting for users and trigger expensive DOM layout operations that consume system resources and contribute to jank.

Carousels are generally avoided (but they are acceptable if they are well implemented)

Fails if any of the following are seen: carousels auto-rotate, text is not legible, swipe is not supported, next images do not load within 1 second of swipe.

Make it easy to contact you

Fails if the website does not provide all of the following: easy to find contact options, tap to call, mailto on emails, addresses do not link to gMaps, except being embedded.

The most appropriate keyboard for the input type is provided first

Fails if most helpful keyboard not provided, i.e. input types text, tel, email, password, capitalization when appropiate, etc.

The website supports autofill for all form fields and the fields are tagged for the appropriate information from autofill

Fails if fields are not tagged for efficient browser-based autofill, making users enter data that is already known either by the website or the OS. Not filling a standard field or filling fields with the wrong content, i.e. puts house number and street name into the same field when there are separate fields for each.

All mistakes made in forms are clearly highlighted in real time, and instructions for correct completion are provided in real time

Fails if mistakes and guidance for correct completion are not highlighted in real time and/or error messages are ambiguous or unfriendly.

PWA / Best Practices 82/100

Avoids Application Cache

Application Cache is deprecated. Source: Lighthouse - Learn more

Avoids WebSQL DB

Web SQL is deprecated. Consider using IndexedDB instead. Source: Lighthouse - Learn more

Avoids requesting the geolocation permission on page load

Users are mistrustful of or confused by sites that request their location without context. Consider tying the request to user gestures instead. Source: Lighthouse - Learn more

robots.txt is valid

If your robots.txt file is malformed, crawlers may not be able to understand how you want your website to be crawled or indexed. Source: Lighthouse

Avoids requesting the notification permission on page load

Users are mistrustful of or confused by sites that request to send notifications without context. Consider tying the request to user gestures instead. Source: Lighthouse - Learn more

Avoids deprecated APIs

Deprecated APIs will eventually be removed from the browser. Source: Lighthouse - Learn more

Allows to paste into password input fields

The main reason why password pasting improves security is because it helps to reduce password overload. Source: Lighthouse - Learn more

Registers a Service Worker

The service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. Source: Lighthouse - Learn more

Responds with a 200 when offline

If you're building a Progressive Web App, consider using a service worker so that your app can work offline. Source: Lighthouse - Learn more

Uses HTTPS

All sites should be protected with HTTPS, even ones that don't handle sensitive data. HTTPS prevents intruders from tampering with or passively listening in on the communications between your app and your users, and is a prerequisite for HTTP/2 and many new web platform APIs. Source: Lighthouse - Learn more

Redirects HTTP traffic to HTTPS

If you've already set up HTTPS, make sure that you redirect all HTTP traffic to HTTPS. Source: Lighthouse - Learn more

Uses HTTP/2 for its own resources

HTTP/2 offers many benefits over HTTP/1.1, including binary headers, multiplexing, and server push. Source: Lighthouse - Learn more

Uses passive listeners to improve scrolling performance

Mark your touch and wheel event listeners as `passive` to improve your page's scroll performance. Source: Lighthouse - Learn more

Avoid using document.write()

For users on slow connections, external scripts dynamically injected via document.write() can delay page load by tens of seconds. Source: Lighthouse - Learn more

Manifest's short_name won't be truncated when displayed on homescreen

Make your app's short_name fewer than 12 characters to ensure that it's not truncated on homescreens. Source: Lighthouse - Learn more

Configured for a custom splash screen

A default splash screen will be constructed for your app, but satisfying these requirements guarantee a high-quality splash screen that transitions the user from tapping the home screen icon to your app's first paint. Source: Lighthouse - Learn more

User can be prompted to Install the Web App

Browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. Source: Lighthouse - Learn more

Mobile Friendliness 80/100

Configures the viewport

This rule triggers when detecting that your page does not specify a viewport, or specifies a viewport that does not adapt to different devices. Source: PageSpeed Insights - Learn more

Content is sized correctly for the viewport

If the width of your app's content doesn't match the width of the viewport, your app might not be optimized for mobile screens. Source: Lighthouse - Learn more

Size tap targets appropriately

This rule triggers when detecting that certain tap targets (e.g. buttons, links, or form fields) may be too small or too close together for a user to easily tap on a touchscreen. Source: PageSpeed Insights - Learn more

Uses legible font sizes

This rule triggers when detecting that text in the page is too small to be legible. Source: PageSpeed Insights - Learn more

Color Contrast is satisfactory

Low-contrast text is difficult or impossible for many users to read. Background and foreground colors should have enough contrast ratio to guarantee readability. Source: Lighthouse - Learn more

Failing Elements

ImpactSnippetTargetFailure Summary
serious<p class="mbr-text mbr-gray mbr-fonts-style display-7">.mbr-col-lg-6.card.mbr-col-md-12:nth-child(2) > .mbr-textFix any of the following: Element has insufficient color contrast of 3.03 (foreground color: #8c8c8c, background color: #f3f3f3, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<p class="mbr-text mbr-gray mbr-fonts-style mbr-pt-4 display-7">.mbr-col-lg-12.title-block.mbr-col-md-12 > .mbr-text.mbr-pt-4Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h4 class="mbr-section-subtitle mbr-gray mbr-fonts-style mbr-semibold display-5">Lorem ipsum dolor sit amet</h4>.mbr-pb-4 > .mbr-section-subtitleFix any of the following: Element has insufficient color contrast of 3.03 (foreground color: #8c8c8c, background color: #f3f3f3, font size: 13.2pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<p class="mbr-text mbr-gray mbr-fonts-style display-7">.mbr-col-lg-12.card.mbr-col-md-12:nth-child(2) > .mbr-textFix any of the following: Element has insufficient color contrast of 3.03 (foreground color: #8c8c8c, background color: #f3f3f3, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h2 class="mbr-section-subtitle mbr-gray mbr-semibold mbr-fonts-style display-5">Who we are</h2>.title-wrap.align-left.md-pb > .title-block > h2Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 13.2pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<p class="mbr-text mbr-fonts-style mbr-gray mbr-pt-3 display-7">.mbr-text.mbr-pt-3Fix any of the following: Element has insufficient color contrast of 3.36 (foreground color: #8c8c8c, background color: #ffffff, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<h2 class="mbr-text-subtitle mbr-gray mbr-fonts-style mbr-semibold display-5">Lorem ipsum dolor sit amet</h2>.mbr-text-subtitleFix any of the following: Element has insufficient color contrast of 3.13 (foreground color: #8c8c8c, background color: #f7f7f7, font size: 13.2pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<p class="mbr-text mbr-gray mbr-fonts-style mbr-pt-2 display-7">.md-pb.mbr-col-lg-6.mbr-col-md-12 > .mbr-pt-2.mbr-textFix any of the following: Element has insufficient color contrast of 3.13 (foreground color: #8c8c8c, background color: #f7f7f7, font size: 12.6pt, font weight: normal). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="headers.html">.btn-secondary-outline.btn-transparent[href$="headers.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="features.html">.btn-secondary-outline.btn-transparent[href$="features.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="content.html">.btn-secondary-outline.btn-transparent[href$="content.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="pricing.html">.btn-secondary-outline.btn-transparent[href$="pricing.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="team.html">.btn-secondary-outline.btn-transparent[href$="team.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="gallery.html">.btn-secondary-outline.btn-transparent[href$="gallery.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="contacts.html">.btn-secondary-outline.btn-transparent[href$="contacts.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
serious<a class="btn btn-transparent btn-secondary-outline display-7" href="footers.html">.btn-secondary-outline.btn-transparent[href$="footers.html"]Fix any of the following: Element has insufficient color contrast of 2.84 (foreground color: #af938f, background color: #ffffff, font size: 12.6pt, font weight: bold). Expected contrast ratio of 4.5:1
...

Performance 76/100

Speed Index

  • Speed Index
    3434.99
    target < 4500 ms

Perceptual Speed Index is a page load performance metric that shows you how quickly the contents of a page are visibly populated. The lower the score, the better. Source: Lighthouse - Learn more

Document complete

  • Time
    6.8
    seconds
  • Resources
    18
    requests
  • Bytes in
    868.6
    KB

These metrics are collected from the initial request until the browser considers the page loaded (JavaScript onLoad event). This usually happens after all of the image content has loaded but may not include content that is triggered by javascript execution.

Fully load

  • Time
    6.8
    seconds
  • Resources
    20
    requests
  • Bytes in
    876.4
    KB

These metrics are collected from the initial request until 2 seconds of no network activity after Document Complete (JavaScript onLoad event). This will usually include any activity that is triggered by javascript after the main page loads.

Assets by Domain

Requests

  • cdn.ampproject.org

  • mobirise.com

  • fonts.gstatic.com

  • fonts.googleapis.com

  • www.google-analytics.com

Bytes downloaded

  • mobirise.com

  • cdn.ampproject.org

  • fonts.gstatic.com

  • fonts.googleapis.com

  • www.google-analytics.com

Assets by Mime-Type

Requests

  • html

  • js

  • css

  • image

  • font

Bytes downloaded

  • html

  • js

  • css

  • image

  • font

Speed

Load time6802 ms

Also known as the document complete time, it’s the time from the initial request until the browser load event. It can vary based on server location, device, browser, and third-party apps. Source: WebPagetest - Learn more

Page load is fast enough on 3G

A fast page load over a 3G network ensures a good mobile user experience. Source: Lighthouse - Learn more

First byte1575 ms

The time from the initial request to the first byte of the response. Source: WebPagetest - Learn more

First Contentful Paint2674.658 ms

First contentful paint marks the time at which the first text/image is painted. Source: Lighthouse - Learn more

First meaningful paint2674.658 ms

First meaningful paint measures when the primary content of a page is visible. It's essentially the paint after which the biggest above-the-fold layout change has happened, and web fonts have loaded. Source: Lighthouse - Learn more

Estimated Input Latency12 ms (target < 50 ms)

The score above is an estimate of how long your app takes to respond to user input, in milliseconds. There is a 90% probability that a user encounters this amount of latency, or less. 10% of the time a user can expect additional latency. If your score is higher than Lighthouse's target score (< 50ms), users may perceive your app as laggy. Source: Lighthouse - Learn more

Uses persistent connections (keep alive)Score: 100%

Closing connections are a missed opportunity for performance enhancement: additional round-trips between the user and the server to initiate a connection is redundant and time-consuming. Keep-Alive measures the effectiveness of connection reuse. The purpose of this grade is to evaluate the extent to which requests are inefficiently reopening connections. Source: WebPagetest - Learn more

First CPU Idle2674.66 ms

First CPU Idle marks the first time at which the page's main thread is quiet enough to handle input. Source: Lighthouse - Learn more

Time to Interactive2674.66 ms

Interactive marks the time at which the page is fully interactive. Source: Lighthouse - Learn more

Page weight

Uses compression (gzip, zopfli, deflate, brotli)Score: 100%

This rule triggers when detecting that compressible resources were served without gzip compression. Source: WebPagetest - Learn more

Uses a CDN for all static assetsScore: 100%

Each request for a piece of content to the web server has to travel from the user's browser all the way to the server and back. A content delivery network (CDN) is a system for distributing resources to servers geographically closer to users. The main benefit of this is that the round-trip time is faster. The passing grade for using a CDN effectively is to have at least 80% of static resources served from a CDN. Source: WebPagetest - Learn more

Leverage browser caching

Setting an expiry date or a maximum age in the HTTP headers for static resources instructs the browser to load previously downloaded resources from local disk rather than over the network. Source: PageSpeed Insights - Learn more

Leverage browser caching for the following cacheable resources:

URL
https://cdn.ampproject.org/v0.js (50 minutes)
https://mobirise.com/extensions/interioramp/assets/images/05.jpg (4 hours)
https://mobirise.com/extensions/interioramp/assets/images/background1.jpg (4 hours)
https://mobirise.com/extensions/interioramp/assets/images/background2.jpg (4 hours)
https://mobirise.com/extensions/interioramp/assets/images/background3.jpg (4 hours)
...

Minify CSS

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Minify HTML

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Minify JavaScript

Minification refers to the process of removing unnecessary or redundant data in order to reduce file size without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. Source: PageSpeed Insights - Learn more

Avoids an excessive DOM size619 nodes

Number of elements in the document. Browser engineers recommend pages contain fewer than ~1,500 DOM nodes. The sweet spot is a tree depth < 32 elements and fewer than 60 children/parent element. A large DOM can increase memory usage, cause longer style calculations, and produce costly layout reflows. Source: Lighthouse - Learn more
  • Total DOM Nodes
    619
    target < 1,500 nodes
  • DOM Depth
    15
    target < 32
  • Maximum Children
    22
    target < 60 nodes

Compressed Images

The image compression check just looks at photo images and makes sure the quality isn't set too high. Images can usually be compressed pretty substantially without any noticeable reduction in visual quality. Source: Lighthouse - Learn more

Uses Progressive JPEGsScore: 100 %

A progressive JPEG is image created using the JPEG suite of compression algorithms that will 'fade in' in successive waves of lines until the entire image has completely arrived. They show the entire image right away, looking slightly pixelated until the image data is fully loaded. Source: WebPagetest - Learn more

Properly Sized ImagesPotential savings of 286 KB

Serve images that are appropriately-sized to save cellular data and improve load time. Source: Lighthouse - Learn more

Offscreen images

Consider lazy-loading offscreen images to improve page load speed and time to interactive. Source: Lighthouse - Learn more

First impression

Eliminates render-blocking JavaScript and CSS in above-the-fold content

This rule triggers when detecting that your HTML references a blocking external resource / file in the above-the-fold portion of your page. Source: PageSpeed Insights - Learn more about JS - Learn more about CSS

Your page has 2 blocking CSS resources. This causes a delay in rendering your page.

URL
https://fonts.googleapis.com/css?family=Reem+Kufi
https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,200i,300,300i,400,400i,600,600i,700,700i,900,900i
...

Prioritizes visible content

This rule triggers when detecting that additional network round trips are required to render the above-the-fold content of the page. Source: PageSpeed Insights - Learn more

Improves server response time

This rule triggers when detecting that your server response time is above 200 ms. Server response time measures how long it takes to load the necessary HTML to begin rendering the page from your server, subtracting out the network latency between Google and your server. Source: PageSpeed Insights - Learn more

Avoids landing page redirects

Redirects trigger an additional HTTP request-response cycle and delay page rendering. In the best case, each redirect will add a single round trip (HTTP request-response), and in the worst it may result in multiple additional roundtrips to perform the DNS lookup, TCP handshake, and TLS negotiation in addition to the additional HTTP request-response cycle. As a result, you should minimize use of redirects to improve site performance. Source: PageSpeed Insights - Learn more

Usability 70/100 Industry: Promotional

Brand logo linked to homepage

Fails if doesn't have a logo or clicking it doesn't lead you to homepage.

No ending trailing paths

Fails if doesn't provide at least one of the following: main navigation options on footers, fixed or 'smart' headers/burger-icon, Back to top or close buttons.

Active section is highlighted in navigation menus

Fails if current section or page is not visually highlighted in navigation menus, except for internal section pages where it's accepted not to highlight the parent section.

Listing/overview pages with many items implements deferred loading techniques

Fails if the website doesn't provide at least one of the following: lazy-loading, load more buttons, paginator. Doesn't provide a clear reference about the total amount of items in a portfolio or blog page.

Prevent layout shiftings when loading media. Set width and height attributes on both <img> and <video> tags

Fails if transitioning from placeholders to final images changes the rendered size of the element as media loads. Not using a solid color placeholder occupying the same dimensions as the target image, or techniques such as LQIP or SQIP that hint at the content of a media item before it loads. These changes can be disorienting for users and trigger expensive DOM layout operations that consume system resources and contribute to jank.

Carousels are generally avoided (but they are acceptable if they are well implemented)

Fails if any of the following are seen: carousels auto-rotate, text is not legible, swipe is not supported, next images do not load within 1 second of swipe.

Make it easy to contact you

Fails if the website does not provide all of the following: easy to find contact options, tap to call, mailto on emails, addresses do not link to gMaps, except being embedded.

The most appropriate keyboard for the input type is provided first

Fails if most helpful keyboard not provided, i.e. input types text, tel, email, password, capitalization when appropiate, etc.

The website supports autofill for all form fields and the fields are tagged for the appropriate information from autofill

Fails if fields are not tagged for efficient browser-based autofill, making users enter data that is already known either by the website or the OS. Not filling a standard field or filling fields with the wrong content, i.e. puts house number and street name into the same field when there are separate fields for each.

All mistakes made in forms are clearly highlighted in real time, and instructions for correct completion are provided in real time

Fails if mistakes and guidance for correct completion are not highlighted in real time and/or error messages are ambiguous or unfriendly.

PWA / Best Practices 82/100

Avoids Application Cache

Application Cache is deprecated. Source: Lighthouse - Learn more

Avoids WebSQL DB

Web SQL is deprecated. Consider using IndexedDB instead. Source: Lighthouse - Learn more

Avoids requesting the geolocation permission on page load

Users are mistrustful of or confused by sites that request their location without context. Consider tying the request to user gestures instead. Source: Lighthouse - Learn more

robots.txt is valid

If your robots.txt file is malformed, crawlers may not be able to understand how you want your website to be crawled or indexed. Source: Lighthouse

Avoids requesting the notification permission on page load

Users are mistrustful of or confused by sites that request to send notifications without context. Consider tying the request to user gestures instead. Source: Lighthouse - Learn more

Avoids deprecated APIs

Deprecated APIs will eventually be removed from the browser. Source: Lighthouse - Learn more

Allows to paste into password input fields

The main reason why password pasting improves security is because it helps to reduce password overload. Source: Lighthouse - Learn more

Registers a Service Worker

The service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. Source: Lighthouse - Learn more

Responds with a 200 when offline

If you're building a Progressive Web App, consider using a service worker so that your app can work offline. Source: Lighthouse - Learn more

Uses HTTPS

All sites should be protected with HTTPS, even ones that don't handle sensitive data. HTTPS prevents intruders from tampering with or passively listening in on the communications between your app and your users, and is a prerequisite for HTTP/2 and many new web platform APIs. Source: Lighthouse - Learn more

Redirects HTTP traffic to HTTPS

If you've already set up HTTPS, make sure that you redirect all HTTP traffic to HTTPS. Source: Lighthouse - Learn more

Uses HTTP/2 for its own resources

HTTP/2 offers many benefits over HTTP/1.1, including binary headers, multiplexing, and server push. Source: Lighthouse - Learn more

Uses passive listeners to improve scrolling performance

Mark your touch and wheel event listeners as `passive` to improve your page's scroll performance. Source: Lighthouse - Learn more

Avoid using document.write()

For users on slow connections, external scripts dynamically injected via document.write() can delay page load by tens of seconds. Source: Lighthouse - Learn more

Manifest's short_name won't be truncated when displayed on homescreen

Make your app's short_name fewer than 12 characters to ensure that it's not truncated on homescreens. Source: Lighthouse - Learn more

Configured for a custom splash screen

A default splash screen will be constructed for your app, but satisfying these requirements guarantee a high-quality splash screen that transitions the user from tapping the home screen icon to your app's first paint. Source: Lighthouse - Learn more

User can be prompted to Install the Web App

Browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. Source: Lighthouse - Learn more
Report created on Dec 18, 2018, 12:00 PM GMT+0 in 15 min.

This report was built manually by Awwwards experts taking care personally of every detail using several Google and 3rd-party audit tools and services for metrics, web performance optimization and best practices for mobile design and development.

Loading time vary depending on network, device, server, site design, and implementation.

These are the environments used to create this report:

Webpagetest Test Location Dulles VA USA
Browser MotoG4 Chrome
Connection Mobile 3G (1.6 Mbps / 768 Kbps 300ms RTT)
Number of Runs 1
User Agent Default
Lighthouse User agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36
Device Emulation Emulated Nexus 5X
Network Throttling 150ms TCP RTT, 1,638.4 Kbps throughput (Simulated)
CPU Throttling 4x slowdown (Simulated)
PageSpeed Insights EnvironmentMobile