callumlaing.com

callumlaing.com is SSL secured

Free website and domain report on callumlaing.com

Last Updated: 11th April, 2022 Update Now
Overview

Snoop Summary for callumlaing.com

This is a free and comprehensive report about callumlaing.com. The domain callumlaing.com is currently hosted on a server located in United States with the IP address 148.105.251.16, where USD is the local currency and the local language is English. If callumlaing.com was to be sold it would possibly be worth $335 USD (based on the daily revenue potential of the website over a 24 month period). Callumlaing.com is somewhat popular with an estimated 156 daily unique visitors. This report was last updated 11th April, 2022.

About callumlaing.com

Site Preview: callumlaing.com callumlaing.com
Title: Home - Callum Laing
Description:
Keywords and Tags: business
Related Terms: laing
Fav Icon:
Age: Over 10 years old
Domain Created: 10th January, 2014
Domain Updated: 12th May, 2021
Domain Expires: 10th January, 2024
Review

Snoop Score

1/5

Valuation

$335 USD
Note: All valuation figures are estimates.

Popularity

Low
Note: Popularity is estimated.

Rank, Reach and Authority

Alexa Rank: 7,213,581
Alexa Reach:
SEMrush Rank (US):
SEMrush Authority Score:
Moz Domain Authority: 0
Moz Page Authority: 0

Organic vs Paid (Google Ads)

Traffic

Visitors

Daily Visitors: 156
Monthly Visitors: 4,748
Yearly Visitors: 56,940
Note: All visitors figures are estimates.

Visitors By Country

Revenue

Revenue

Daily Revenue: $0 USD
Monthly Revenue: $14 USD
Yearly Revenue: $162 USD
Note: All revenue figures are estimates.

Revenue By Country

SEO

Backlinks Analysis (SEMrush)

Top New Follow Links

Top Ranking Keywords (US)

Domain Analysis

Value Length
Domain: callumlaing.com 15
Domain Name: callumlaing 11
Extension (TLD): com 3
Expiry Check:

Page Speed Analysis

Average Load Time:
Load Time Comparison:

PageSpeed Insights

Avg. (All Categories) 80
Performance 92
Accessibility 63
Best Practices 83
SEO 82
0–49 (Fail) 50–89 (Average) 90–100 (Pass)
Simulate loading on desktop
92

Performance

Indicates how well the page is performing and highlights opportunities where performance may be improved for callumlaing.com. This includes details about optimizing page load times which can result in a better user experience.

Metrics

Time to Interactive — 1.1 s
The time taken for the page to become fully interactive.
Total Blocking Time — 80 ms
The total blocking time is the sum of all time periods between First Contentful Paint and Time to Interactive (when task length exceeded 50ms).
Largest Contentful Paint — 1.2 s
The timing of the largest text or image that is painted.
Cumulative Layout Shift — 0
Cumulative Layout Shift is the measurement of visible elements collective movement within the viewport.
View Data

Other

Defer offscreen images
Time to Interactive can be slowed down by resources on the page. Callumlaing.com should consider lazy-loading offscreen and hidden images.
Minify CSS
Cascading Style Sheets (CSS) files can contribute to network payload sizes. Callumlaing.com should consider minifying CSS files.
Minify JavaScript
JavaScript (JS) files can contribute to network payload sizes and increase script parse times. Callumlaing.com should consider minifying JS files.
Reduce unused CSS
Dead and/or unused rules in Style Sheets (CSS) can contribute to network payload sizes. Callumlaing.com should consider removing dead rules from style sheets and deferring the loading of CSS not used for above-the-fold content.
Reduce unused JavaScript — Potential savings of 41 KiB
It is advised to remove unused JavaScript in order to reduce bytes consumed by network activity.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
79525
42458
Enable text compression
Text-based resources should be served with compression, such as gzip, deflate or brotli.
Preconnect to required origins
Resource hints, such as 'preconnect' or 'dns-prefetch', may assist in establishing early connections to important third-party origins.
Avoid multiple page redirects — Potential savings of 190 ms
Redirects can cause additional delays before the page can begin loading. Callumlaing.com should avoid multiple or unnecessary page redirects.
URL Time Spent (Ms)
http://callumlaing.com/
190
https://www.callumlaing.com/
0
Preload key requests
Key requests can be preloaded by using '<link rel=preload>'. Callumlaing.com should consider using '<link rel=preload>' to prioritize fetching resources that are currently requested later in page load.
Use video formats for animated content
Large GIFs are inefficient for delivering animated content. It is recommended to use MPEG4/WebM videos for animations and PNG/WebP for static images instead of GIF.
Remove duplicate modules in JavaScript bundles
Ensure that no duplicate JavaScript modules from bundles exist to reduce bytes consumed by network activity.
Avoid serving legacy JavaScript to modern browsers
Polyfills and transforms enable legacy browsers to use new JavaScript features. For bundled JavaScript it is recommended to adopt a modern script deployment strategy using module/nomodule feature detection. This will reduce the amount of code shipped to modern browsers.
Preload Largest Contentful Paint image
It is recommended to preload images used by LCP elements, to improve LCP time.
URL Potential Savings (Ms)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
0
Avoids an excessive DOM size — 238 elements
A large DOM (Document Object Model) will increase memory usage, cause longer system calculations as well as costly layout reflows.
Statistic Element Value
Total DOM Elements
238
Maximum DOM Depth
16
Maximum Child Elements
11
Avoid chaining critical requests — 6 chains found
Below is a list of Critical Request Chains, which shows which resources are loaded with a high priority. Callumlaing.com should consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.
User Timing marks and measures
Make use of the User Timing API to measure an app's real-world performance during key user experiences.
JavaScript execution time — 0.2 s
JavaScript (JS) execution time can be lowered by reducing the time required for parsing, compiling and executing JS. Delivering smaller JS payloads may help with this.
URL Total CPU Time (Ms) Script Evaluation (Ms) Script Parse (Ms)
https://www.callumlaing.com/
264.481
4.32
1.276
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
138.688
117.38
4.43
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/dojo/dojo.js
92.996
82.681
5.027
Unattributable
70.646
2.955
0.181
Minimizes main-thread work — 0.6 s
Main-thread work timing can be lowered by reducing the time required for parsing, compiling and executing JS. Delivering smaller JS payloads may help with this.
Category Time Spent (Ms)
Script Evaluation
211.764
Rendering
163.388
Other
95.738
Style & Layout
81.812
Script Parsing & Compilation
11.726
Parse HTML & CSS
11.316
Keep request counts low and transfer sizes small — 23 requests • 7,405 KiB
It is advised to add a budgets.json file in order to set budgets for the quantity and size of page resources.
Resource Type Requests Transfer Size (Bytes)
Total
23
7582651
Image
10
7312033
Script
5
126695
Font
3
120791
Document
1
9846
Other
2
7854
Stylesheet
2
5432
Media
0
0
Third-party
18
7563373
Minimize third-party usage — Third-party code blocked the main thread for 0 ms
It is advised to either limit, remove or delay the loading of redundant third-party code which may be significantly impacting load performance.
Third-Party Transfer Size (Bytes) Main-Thread Blocking Time (Ms)
122604
0
4028
0
Lazy load third-party resources with facades
Consider replacing third-party embeds with a facade until they are required (use lazy loading).
Largest Contentful Paint element — 1 element found
The element which was identified as the Largest Contentful Paint.
Element
Largest Contentful Paint image was not lazily loaded
Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint.
Element
Avoid large layout shifts
Below is a list of all DOM elements that contribute to the CLS of the page.
Uses passive listeners to improve scrolling performance
Improve the page's scroll performance by marking touch and wheel event listeners as 'passive'.
Avoids `document.write()`
Avoid or limit the use of external scripts that are dynamically injected via 'document.write()' as users on slow connections will be delayed by tens of seconds.
Avoid long main-thread tasks — 3 long tasks found
Below is a list of the longest tasks on the main thread, which is useful when identifying the worst input delay contributors.
URL Start Time (Ms) Duration (Ms)
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
1010
166
https://www.callumlaing.com/
454
83
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/dojo/dojo.js
770
53
Avoid non-composited animations
It is recommended to avoid non-composited animations which are often janky and increase CLS.
Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of callumlaing.com on mobile screens.
Avoids `unload` event listeners
The 'unload' event does not fire reliably, causing issues with browser optimizations such as the Back-Forward Cache. It is recommended that 'pagehide' or 'visibilitychange' events are used instead.

Budgets

Performance budget
It is advised to keep the quantity and size of all network requests under the targets set by the provided performance budget.
Timing budget
It is advised to set a timing budget to monitor the performance of your site.

Audits

Network Requests
Below is a list of network requests that were made during page load.
URL Protocol Start Time (Ms) End Time (Ms) Transfer Size (Bytes) Resource Size (Bytes) Status Code MIME Type Resource Type
http://callumlaing.com/
http/1.1
0
146.26600034535
252
0
301
text/html
https://www.callumlaing.com/
h2
146.54200011864
2120.5600001849
9846
68505
200
text/html
Document
https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700,700i|Playfair+Display:400,400i,700,700i
h2
2133.3410004154
2151.8130004406
1813
16388
200
text/css
Stylesheet
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/css/signup-forms/pages/common.css
h2
2133.4380004555
2457.6600003056
3619
11738
200
text/css
Stylesheet
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
h2
2139.514000155
2300.2760000527
410165
409311
200
image/png
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
h2
2139.677000232
2319.5520001464
507537
506682
200
image/jpeg
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
h2
2139.822000172
2250.5660001189
32170
31312
200
image/png
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
h2
2140.0120002218
2387.6150003634
5191044
5190182
200
image/png
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
h2
2140.3610003181
2304.3360002339
1087281
1086418
200
image/jpeg
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
h2
2140.6240002252
2267.6340001635
69215
68357
200
image/png
Image
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-twitter-96.png
h2
2140.7280000858
2411.108000204
2287
1861
200
image/png
Image
https://chimpstatic.com/mcjs-connected/js/users/d74149d0660cad7ae44f79f89/d6b6c56283ee4de409bd9ae50.js
http/1.1
2140.977000352
2351.6960004345
4028
14838
200
application/javascript
Script
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-pinterest-96.png
h2
2143.0390002206
2395.4160003923
2370
1943
200
image/png
Image
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-linkedin-96.png
h2
2143.8890001737
2218.6610000208
2016
1589
200
image/png
Image
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/dojo/dojo.js
h2
2144.043000415
2243.8100003637
41564
113660
200
application/javascript
Script
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
h2
2145.1490004547
2584.1350001283
79525
262737
200
application/javascript
Script
https://www.callumlaing.com/_/4niQwABvmHWBmSDFYcoFRFtDOUmvOhhPUTvN4O_F1hY/https/mc.us4.list-manage.com/pages/track/open?u=d74149d0660cad7ae44f79f89&id=0300c89ae1f0
h2
2145.3790003434
2200.3150000237
941
0
200
application/json
Script
https://www.callumlaing.com/_/m7aoJbRoRa86FdMScAnzzDENRXMl-KHG9KwwBHxjUxo/https/mc.us4.list-manage.com/pages/track/should-web-engagement-track?u=d74149d0660cad7ae44f79f89&id=0300c89ae1f0
h2
2357.3410003446
2666.6800002567
637
23
200
application/json
Script
https://fonts.gstatic.com/s/opensans/v28/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-mu0SC55I.woff2
h2
2466.6120000184
2471.6490004212
40483
39556
200
font/woff2
Font
https://fonts.gstatic.com/s/opensans/v28/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6FxZCJgg.woff2
h2
2466.8270000257
2471.2650002912
43468
42540
200
font/woff2
Font
https://fonts.gstatic.com/s/playfairdisplay/v28/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgEM86xQ.woff2
h2
2468.450000044
2475.8650003932
36840
35912
200
font/woff2
Font
https://www.callumlaing.com/_/8cCPwugZTuQ76xq5weVkLNGjDZJ9An566MJnxAnUgdE/https/mc.us4.list-manage.com/signup-form/settings?u=d74149d0660cad7ae44f79f89&id=00a7f2e2f0&for_preview=0
h2
2953.1910000369
3272.3170001991
7602
16508
200
application/json
XHR
https://eep.io/mc-cdn-images/template_images/branding_logo_text_dark.svg
h2
2965.157000348
3147.5320002064
7948
17263
200
image/svg+xml
Image
Network Round Trip Times — 0 ms
High Network RTT (Round Trip Times) can have a large impact on performance. Providing servers geographically closer to the user could improve performance.
Server Backend Latencies — 0 ms
High server latencies indicate the server is overloaded or has a poor backend performance.
Tasks
Below is a list of the top-level main thread tasks that executed during page load.
Start Time (Ms) End Time (Ms)
2203.435
7.311
2215.729
6.232
2486.904
10.247
2539.875
55.054
2594.963
53.234
2659.225
166.972
2876.256
165.959
3042.485
16.038
3227.797
5.345
3352.703
13.447
3366.169
5.456
Diagnostics
Below is a collection of useful page vitals.
View Data
Metrics
Below is a collection of metrics.
View Data
Script Treemap Data
Provide as required, for treemap app.

Metrics

First Contentful Paint — 1.0 s
The time taken for the first image or text on the page to be rendered.
Speed Index — 2.1 s
The time taken for the page contents to be visibly populated.

Audits

Max Potential First Input Delay — 170 ms
Users could experience a delay when interacting with the page.
First Meaningful Paint — 1.0 s
The time taken for the primary content of the page to be rendered.

Other

Eliminate render-blocking resources — Potential savings of 550 ms
Resources, such as JavaScript and style sheets, can block the first paint of the page. Callumlaing.com should consider delivering critical JavaScript/style sheets (JS/CSS) inline and deferring all non-critical JS/CSS.
URL Transfer Size (Bytes) Potential Savings (Ms)
https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700,700i|Playfair+Display:400,400i,700,700i
1813
230
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/css/signup-forms/pages/common.css
3619
230
Efficiently encode images — Potential savings of 657 KiB
Unoptimized images can consume more cellular data than what is necessary.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
1086418
673052

Other

Properly size images — Potential savings of 6,421 KiB
Images can slow down the page's load time. Callumlaing.com should consider serving more appropriate-sized images.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
5190182
4953943
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
1086418
1062313
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
506682
480485
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
409311
73029
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
31312
5580
Serve images in next-gen formats — Potential savings of 5,946 KiB
Consider JPEG 2000, JPEG XR or WebP image formats which provide better compression than PNG and JPEG.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
5190182
4479744
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
1086418
928387.7
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
409311
360453.85
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
506682
243679.85
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
68357
57338.3
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
31312
18720.3
Reduce initial server response time — Root document took 1,980 ms
It is advised to keep the server response time short for the main document, because all other requests depend on it.
URL Time Spent (Ms)
https://www.callumlaing.com/
1975.011
Avoid enormous network payloads — Total size was 7,405 KiB
Large network payloads can cost users money and are linked to long load times.
URL Transfer Size (Bytes)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
5191044
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
1087281
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
507537
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
410165
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
79525
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
69215
https://fonts.gstatic.com/s/opensans/v28/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6FxZCJgg.woff2
43468
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/dojo/dojo.js
41564
https://fonts.gstatic.com/s/opensans/v28/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-mu0SC55I.woff2
40483
https://fonts.gstatic.com/s/playfairdisplay/v28/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgEM86xQ.woff2
36840
Serve static assets with an efficient cache policy — 9 resources found
Callumlaing.com can speed up repeat visits by increasing the cache lifetime, which is essentially how long before a cached copy expires.
URL Cache TTL (Ms) Transfer Size (Bytes)
https://www.callumlaing.com/_/4niQwABvmHWBmSDFYcoFRFtDOUmvOhhPUTvN4O_F1hY/https/mc.us4.list-manage.com/pages/track/open?u=d74149d0660cad7ae44f79f89&id=0300c89ae1f0
0
941
https://www.callumlaing.com/_/m7aoJbRoRa86FdMScAnzzDENRXMl-KHG9KwwBHxjUxo/https/mc.us4.list-manage.com/pages/track/should-web-engagement-track?u=d74149d0660cad7ae44f79f89&id=0300c89ae1f0
0
637
https://chimpstatic.com/mcjs-connected/js/users/d74149d0660cad7ae44f79f89/d6b6c56283ee4de409bd9ae50.js
1800000
4028
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
3600000
5191044
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
3600000
1087281
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
3600000
507537
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
3600000
410165
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
3600000
69215
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
3600000
32170
Ensure text remains visible during webfont load
Make use of the font-display CSS feature, which will ensure text is user-visible while webfonts are loading.
URL Potential Savings (Ms)
https://fonts.gstatic.com/s/opensans/v28/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-mu0SC55I.woff2
5.0370004028082
https://fonts.gstatic.com/s/opensans/v28/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6FxZCJgg.woff2
4.4380002655089
https://fonts.gstatic.com/s/playfairdisplay/v28/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgEM86xQ.woff2
7.4150003492832
Image elements do not have explicit `width` and `height`
Reduce layout shifts and improve CLS by setting explicit width and height properties on image elements.
URL
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-twitter-96.png
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-pinterest-96.png
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-linkedin-96.png
https://eep.io/mc-cdn-images/template_images/branding_logo_text_dark.svg
63

Accessibility

Indicates how accessible the page is and highlights opportunities where the page can be made more accessible to users of callumlaing.com. This includes details about various page attributes that can be optimized.

Navigation

`[accesskey]` values are unique
Access keys assist users with focusing on different parts of the page. Each access key should be unique for proper navigation.
The page contains a heading, skip link, or landmark region
It is advised to provide ways to bypass repetitive content, allowing users to navigate the page efficiently.
`[id]` attributes on active, focusable elements are unique
Ensure all focusable elements have a unique id value to allow them to be visible to users of assistive technologies, like a screen reader.
Heading elements appear in a sequentially-descending order
Properly order all headers and do not skip heading levels to better the navigation and readability for users of assistive technologies, like a screen reader.
No element has a `[tabindex]` value greater than 0
Although technically valid, a tabindex value greater than 0 often creates frustrating experiences for users who rely on assistive technologies.

ARIA

`[aria-*]` attributes match their roles
Avoid mismatching 'aria-*' attributes and their 'role' value, as it invalidates the attribute.
`button`, `link`, and `menuitem` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[aria-hidden="true"]` is not present on the document `<body>`
If aria-hidden=true is set on the document body, assistive technologies, like a screen reader will work inconsistently.
`[aria-hidden="true"]` elements do not contain focusable descendents
Interactive elements within an aria-hidden=true element are unavailable to users of assistive technologies, like a screen reader.
ARIA input fields have accessible names
Generic names are announced to users of assistive technologies, like a screen reader, when an input field does not have an accessible name specified.
ARIA `meter` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
ARIA `progressbar` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[role]`s have all required `[aria-*]` attributes
Some ARIA roles have required 'aria-*' attributes, which provide essential information about state and functionality.
Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children.
Some ARIA parent roles cannot perform their intended functions if specific child roles are not used.
`[role]`s are contained by their required parent element
Some ARIA child roles cannot perform their intended functions if specific parent roles are not used.
`[role]` values are valid
All ARIA roles require valid values to perform their intended functions.
ARIA toggle fields have accessible names
Generic names are announced to users of assistive technologies, like a screen reader, when a toggle field does not have an accessible name specified.
ARIA `tooltip` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
ARIA `treeitem` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[aria-*]` attributes have valid values
ARIA attributes cannot be interpreted with invalid values when used by screen readers and other assistive technologies.
`[aria-*]` attributes are valid and not misspelled
ARIA attributes cannot be interpreted with invalid names when used by screen readers and other assistive technologies.
ARIA IDs are unique
Ensure all ARIA ID values are unique to prevent elements from being overlooked by assistive technologies, like a screen reader.

Names and labels

Buttons have an accessible name
Buttons become unusable as they are announced simply as "button" when the button does not have an accessible name, when used by screen readers and other assistive technologies.
Document has a `<title>` element
Search engines, screen reader users and other assistive technology users rely on the title to provide an overview of the page and to help determine if the page is relevant to their search.
No form fields have multiple labels
Having multiple labels for form fields can be confusing to assistive technologies, like a screen reader.
`<frame>` or `<iframe>` elements have a title
Screen reader users and other assistive technology users rely on frame titles to describe the contents of frames.
`<input type="image">` elements have `[alt]` text
Input buttons with alternative text assist screen readers and other assistive technology users to understand its purpose.
Form elements have associated labels
Screen readers and other assistive technologies rely on labels to properly announce form controls.
Links have a discernible name
In order to improve the navigation for screen reader and other assistive technology users, use link text that is unique, focusable and discernible.
`<object>` elements have alternate text
It is advised that alt text is used on '<object>' elements in order to provide meaning to screen reader and other assistive technology users, as these technologies are unable to translate non-text content.

Tables and lists

`<dl>`'s contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements.
Screen readers and other assistive technologies may produce poor and inaccurate output when definition lists are not properly marked up.
Definition list items are wrapped in `<dl>` elements
In order for screen readers and other assistive technologies to properly announce definition list items ('<dt>' and '<dd>'), they must be wrapped in parent a '<dl>' element.
Lists contain only `<li>` elements and script supporting elements (`<script>` and `<template>`).
Use proper list structure to aid screen readers and other assistive technologies.
List items (`<li>`) are contained within `<ul>` or `<ol>` parent elements
In order for screen readers to announce list items, ensure that list items ('<li>') are contained within parent '<ul>' or '<ol>' tags.
Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table.
Screen readers and other assistive technologies have features to make navigating tables easier. Ensure that '<td>' cells using the headers attribute only refer to other cells in the same table, to improve screen reader user experience.
`<th>` elements and elements with `[role="columnheader"/"rowheader"]` have data cells they describe.
Screen readers and other assistive technologies have features to make navigating tables easier. Ensure that table headers refer to some set of cells, to improve screen reader user experience.

Internationalization and localization

`<html>` element has a valid value for its `[lang]` attribute
Specify a valid BCP 47 language in order to help screen readers and other assistive technologies announce text properly.
`[lang]` attributes have a valid value
Specify a valid BCP 47 language on elements in order to help screen readers and other assistive technologies announce text properly.

Best practices

The document does not use `<meta http-equiv="refresh">`
Pages that refresh automatically cause a poor user experience as focus is directed back to the top of the page unexpectedly.

Audio and video

`<video>` elements contain a `<track>` element with `[kind="captions"]`
Callumlaing.com may provide assistance to deaf or hearing-impaired users with captions on videos.

Contrast

Background and foreground colors do not have a sufficient contrast ratio.
Many (if not most) users find low-contrast text difficult or impossible to read.
Failing Elements

Internationalization and localization

`<html>` element does not have a `[lang]` attribute
It is advised to provide a lang attribute so that screen readers and other assistive technologies are guaranteed to announce the page's text correctly. When not provided, the user's default language setting will be used which may cause inaccuracies.
Failing Elements

Names and labels

Image elements do not have `[alt]` attributes
Provide short and descriptive alternative text where possible on informative elements.
Failing Elements

Best practices

`[user-scalable="no"]` is used in the `<meta name="viewport">` element or the `[maximum-scale]` attribute is less than 5.
For users with low vision who rely on screen magnification, ensure that zooming is not disabled.
Failing Elements

Manual Checks

The page has a logical tab order
The visual layout should be logical in its tab order and users cannot focus elements that are offscreen.
Interactive controls are keyboard focusable
Ensure that custom interactive controls are keyboard focusable and that a focus indicator is displayed.
Interactive elements indicate their purpose and state
Ensure that interactive elements (such as links and buttons) are distinguishable from non-interactive elements and that they indicate their state.
The user's focus is directed to new content added to the page
When new content (such as a dialogue) is added to the page, the user's focus should be directed to it.
User focus is not accidentally trapped in a region
Avoid focus being accidentally trapped when a user tabs in and out of controls or regions on page.
Custom controls have associated labels
Ensure that custom interactive controls have associated labels, which are provided by aria-label and aria-labelledby attributes.
Custom controls have ARIA roles
Ensure that all custom interactive controls have appropriate ARIA roles.
Visual order on the page follows DOM order
Ensure that the DOM order matches with the page's visual order, in order to improve navigation for screen readers and other assistive technologies.
Offscreen content is hidden from assistive technology
Ensure that offscreen content is hidden through the use of "display:none" styling or the aria-hidden attribute.
HTML5 landmark elements are used to improve navigation
Elements such as <main> and <nav> are recommended as they are used by screen readers and other assistive technologies to improve keyboard navigation.
83

Best Practices

Indicates the recommended, best practices currently in place on the page and highlights the best practices that callumlaing.com should incorporate. This includes practices such as protecting pages with HTTPS.

Audits

Avoids requesting the geolocation permission on page load
When requesting a user's location, provide context or consider tying the request to a user action to avoid confusion and mistrust from users.
Avoids requesting the notification permission on page load
When requesting permission to send notifications, provide context or consider tying the request to a user action to avoid confusion and mistrust from users.
Ensure CSP is effective against XSS attacks
Significantly reduce the risk of cross-site scripting attacks (XSS) by ensuring you have a strong Content Security Policy (CSP).
Description Directive Severity
No CSP found in enforcement mode
High

Audits

Allows users to paste into password fields
Ensure that password inputs may be pasted into to aid in the user's ability to use password managers and improve security.
Displays images with correct aspect ratio
Ensure that image display dimensions match their natural aspect ratio.
Serves images with appropriate resolution
For maximum image clarity, ensure images have natural dimensions and are proportional to the display size and pixel ratio.
Fonts with `font-display: optional` are preloaded
It is recommended that optional fonts are preloaded.

Audits

Page has the HTML doctype
Ensure a doctype is specified to prevent the browser from switching to quirks-mode.
Properly defines charset
It is advised to declare a character encoding, optionally via a <meta> tag in the first 1024 bytes of the HTML or in the Content-Type HTTP response header.

Audits

Detected JavaScript libraries
Below is a list of all front-end JavaScript libraries that were detected on the page.
Name Version
Dojo
1.1.1eba076926ba3dee14c360d226e969beb47375458 (f4fef70)
Avoids deprecated APIs
Avoid deprecated APIs which will eventually be removed the browser.
No browser errors logged to the console
Below is a list of all errors logged to the console, which indicate unresolved problems on the site.
Page has valid source maps
Consider deploying source maps for added benefits such as the ability to debug while in production.
No issues in the `Issues` panel in Chrome Devtools
There may be unresolved issues logged to Chrome Devtools.

Audits

Does not use HTTPS — 1 insecure request found
Ensure that all pages are protected with HTTPS (including those that do not handle sensitive data) as HTTPS prevents tampering and passive listening on communications between the app and its users. Additionally, HTTPS is a prerequisite for HTTP/2 and many new web platform APIs.
Insecure URL Request Resolution
http://callumlaing.com/
Allowed
Includes front-end JavaScript libraries with known security vulnerabilities — 8 vulnerabilities detected
Ensure that the use of third-party scripts is minimal and that only trusted third-party scripts are used as some may contain known security vulnerabilities which may be exploited by attackers.
Library Version Vulnerability Count Highest Severity
8
High
82

SEO

Indicates how well the page is optimized for ranking in search engines and highlights Search Engine Optimization (SEO) opportunities for callumlaing.com. This includes optimizations such as providing meta data.

Mobile Friendly

Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of callumlaing.com on mobile screens.
Document uses legible font sizes
Font sizes of 12px or less are too small to most mobile users without user gestures and further action. Aim for more than 60% of page text to use font sizes greater than 12px.
Tap targets are sized appropriately
Interactive elements (such as buttons and links) should be appropriately spaced, sized and easy enough to select or tap with regard to their surrounding elements.

Content Best Practices

Document has a `<title>` element
Search engines, screen reader users and other assistive technology users rely on the title to provide an overview of the page and to help determine if the page is relevant to their search.
Links have descriptive text
Make use of descriptive link text to assist search engines in understanding the content.
Document has a valid `hreflang`
Search engines can be instructed to list specific versions of a page for a given language or region through the use of hreflang links.
Document has a valid `rel=canonical`
Search engines can be suggested which URL should be shown in search results through the use of canonical links.
Document avoids plugins
The content of plugins cannot be indexed by search engines and many devices either restrict or do not support them.

Crawling and Indexing

Page has successful HTTP status code
Avoid pages with unsuccessful HTTP status codes as they may not be indexed by search engines.
Links are crawlable
Ensure that the 'href' attribute of anchor elements links to the appropriate destination. This allows for more pages of the site to be discovered by search engines.
Page isn’t blocked from indexing
Pages that cannot be crawled by search engines cannot be indexed or included in their search results. Ensure that search engines have permission to crawl all pages that should be indexed.
robots.txt is valid
Malformed robots.txt files prevent crawlers from understanding how a site wants to be crawled or indexed, which can be devastating to SEO.

Content Best Practices

Document does not have a meta description
Meta descriptions may be used by search engines when displaying a link to the page and should concisely summarize the page's content.
Image elements do not have `[alt]` attributes
Provide short and descriptive alternative text where possible on informative elements.
Failing Elements

Manual Checks

Structured data is valid
Structured data can be validated through the use of the Structured Data Testing Tool and the Structured Data Linter.
Avg. (All Categories) 61
Performance 45
Accessibility 63
Best Practices 83
SEO 85
PWA 30
0–49 (Fail) 50–89 (Average) 90–100 (Pass)
Simulate loading on mobile
45

Performance

Indicates how well the page is performing and highlights opportunities where performance may be improved for callumlaing.com. This includes details about optimizing page load times which can result in a better user experience.

Other

Defer offscreen images
Time to Interactive can be slowed down by resources on the page. Callumlaing.com should consider lazy-loading offscreen and hidden images.
Minify CSS
Cascading Style Sheets (CSS) files can contribute to network payload sizes. Callumlaing.com should consider minifying CSS files.
Minify JavaScript
JavaScript (JS) files can contribute to network payload sizes and increase script parse times. Callumlaing.com should consider minifying JS files.
Reduce unused CSS
Dead and/or unused rules in Style Sheets (CSS) can contribute to network payload sizes. Callumlaing.com should consider removing dead rules from style sheets and deferring the loading of CSS not used for above-the-fold content.
Enable text compression
Text-based resources should be served with compression, such as gzip, deflate or brotli.
Preconnect to required origins
Resource hints, such as 'preconnect' or 'dns-prefetch', may assist in establishing early connections to important third-party origins.
Initial server response time was short — Root document took 470 ms
It is advised to keep the server response time short for the main document, because all other requests depend on it.
URL Time Spent (Ms)
https://www.callumlaing.com/
474.335
Avoid multiple page redirects — Potential savings of 630 ms
Redirects can cause additional delays before the page can begin loading. Callumlaing.com should avoid multiple or unnecessary page redirects.
URL Time Spent (Ms)
http://callumlaing.com/
630
https://www.callumlaing.com/
0
Preload key requests
Key requests can be preloaded by using '<link rel=preload>'. Callumlaing.com should consider using '<link rel=preload>' to prioritize fetching resources that are currently requested later in page load.
Use video formats for animated content
Large GIFs are inefficient for delivering animated content. It is recommended to use MPEG4/WebM videos for animations and PNG/WebP for static images instead of GIF.
Remove duplicate modules in JavaScript bundles
Ensure that no duplicate JavaScript modules from bundles exist to reduce bytes consumed by network activity.
Avoid serving legacy JavaScript to modern browsers
Polyfills and transforms enable legacy browsers to use new JavaScript features. For bundled JavaScript it is recommended to adopt a modern script deployment strategy using module/nomodule feature detection. This will reduce the amount of code shipped to modern browsers.
Preload Largest Contentful Paint image
It is recommended to preload images used by LCP elements, to improve LCP time.
Avoids an excessive DOM size — 238 elements
A large DOM (Document Object Model) will increase memory usage, cause longer system calculations as well as costly layout reflows.
Statistic Element Value
Total DOM Elements
238
Maximum DOM Depth
16
Maximum Child Elements
11
Avoid chaining critical requests — 6 chains found
Below is a list of Critical Request Chains, which shows which resources are loaded with a high priority. Callumlaing.com should consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.
User Timing marks and measures
Make use of the User Timing API to measure an app's real-world performance during key user experiences.
JavaScript execution time — 1.0 s
JavaScript (JS) execution time can be lowered by reducing the time required for parsing, compiling and executing JS. Delivering smaller JS payloads may help with this.
URL Total CPU Time (Ms) Script Evaluation (Ms) Script Parse (Ms)
https://www.callumlaing.com/
2875.052
16.308
7.84
Unattributable
729.752
11.592
0.58
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/dojo/dojo.js
593.304
542.304
31.896
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
436.124
389.804
24.376
Keep request counts low and transfer sizes small — 23 requests • 7,405 KiB
It is advised to add a budgets.json file in order to set budgets for the quantity and size of page resources.
Resource Type Requests Transfer Size (Bytes)
Total
23
7582646
Image
10
7311966
Script
5
126695
Font
3
120790
Document
1
9846
Other
2
7855
Stylesheet
2
5494
Media
0
0
Third-party
18
7563367
Minimize third-party usage — Third-party code blocked the main thread for 0 ms
It is advised to either limit, remove or delay the loading of redundant third-party code which may be significantly impacting load performance.
Third-Party Transfer Size (Bytes) Main-Thread Blocking Time (Ms)
122603
0
4028
0
Lazy load third-party resources with facades
Consider replacing third-party embeds with a facade until they are required (use lazy loading).
Largest Contentful Paint element — 1 element found
The element which was identified as the Largest Contentful Paint.
Element
Largest Contentful Paint image was not lazily loaded
Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint.
Avoid large layout shifts — 3 elements found
Below is a list of all DOM elements that contribute to the CLS of the page.
Element CLS Contribution
0.41751321770725
0.1940784097936
0.1704302001969
Uses passive listeners to improve scrolling performance
Improve the page's scroll performance by marking touch and wheel event listeners as 'passive'.
Avoids `document.write()`
Avoid or limit the use of external scripts that are dynamically injected via 'document.write()' as users on slow connections will be delayed by tens of seconds.
Avoid long main-thread tasks — 9 long tasks found
Below is a list of the longest tasks on the main thread, which is useful when identifying the worst input delay contributors.
URL Start Time (Ms) Duration (Ms)
https://www.callumlaing.com/
1970
1057
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
4440
524
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/dojo/dojo.js
3090
467
https://www.callumlaing.com/
1049
394
https://www.callumlaing.com/
1520
233
Unattributable
630
233
Unattributable
863
186
https://www.callumlaing.com/
1848
122
https://www.callumlaing.com/
1753
95
Avoid non-composited animations
It is recommended to avoid non-composited animations which are often janky and increase CLS.
Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of callumlaing.com on mobile screens.
Avoids `unload` event listeners
The 'unload' event does not fire reliably, causing issues with browser optimizations such as the Back-Forward Cache. It is recommended that 'pagehide' or 'visibilitychange' events are used instead.

Budgets

Performance budget
It is advised to keep the quantity and size of all network requests under the targets set by the provided performance budget.
Timing budget
It is advised to set a timing budget to monitor the performance of your site.

Audits

Network Requests
Below is a list of network requests that were made during page load.
URL Protocol Start Time (Ms) End Time (Ms) Transfer Size (Bytes) Resource Size (Bytes) Status Code MIME Type Resource Type
http://callumlaing.com/
http/1.1
0
180.79399992712
251
0
301
text/html
https://www.callumlaing.com/
h2
181.16399995051
654.50699999928
9846
68505
200
text/html
Document
https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700,700i|Playfair+Display:400,400i,700,700i
h2
676.5749999322
686.16800010204
1813
16388
200
text/css
Stylesheet
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/css/signup-forms/pages/common.css
h2
676.74100003205
755.49099990167
3681
11738
200
text/css
Stylesheet
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
h2
683.88999998569
855.72399990633
410171
409311
200
image/png
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
h2
684.13299997337
784.04300007969
507543
506682
200
image/jpeg
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
h2
684.20200003311
779.14300002158
32170
31312
200
image/png
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
h2
684.27100009285
963.16300006583
5191038
5190182
200
image/png
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
h2
684.34399995022
795.65600003116
1087281
1086418
200
image/jpeg
Image
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
h2
684.4089999795
788.38400007226
69209
68357
200
image/png
Image
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-twitter-96.png
h2
684.50700002722
754.91999997757
2288
1861
200
image/png
Image
https://chimpstatic.com/mcjs-connected/js/users/d74149d0660cad7ae44f79f89/d6b6c56283ee4de409bd9ae50.js
http/1.1
684.57500007935
858.32799994387
4028
14838
200
application/javascript
Script
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-pinterest-96.png
h2
687.22399999388
755.72100002319
2370
1943
200
image/png
Image
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-linkedin-96.png
h2
687.70899996161
758.0860001035
2016
1589
200
image/png
Image
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/dojo/dojo.js
h2
690.89199998416
785.30399990268
41564
113660
200
application/javascript
Script
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
h2
692.39800004289
859.88999996334
79525
262737
200
application/javascript
Script
https://www.callumlaing.com/_/4niQwABvmHWBmSDFYcoFRFtDOUmvOhhPUTvN4O_F1hY/https/mc.us4.list-manage.com/pages/track/open?u=d74149d0660cad7ae44f79f89&id=0300c89ae1f0
h2
692.62899993919
972.28000010364
941
0
200
application/json
Script
https://fonts.gstatic.com/s/opensans/v28/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-mu0SC55I.woff2
h2
769.67799989507
776.02099999785
40484
39556
200
font/woff2
Font
https://fonts.gstatic.com/s/opensans/v28/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6FxZCJgg.woff2
h2
769.85100004822
776.51900006458
43467
42540
200
font/woff2
Font
https://fonts.gstatic.com/s/playfairdisplay/v28/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgEM86xQ.woff2
h2
771.23100007884
778.71600002982
36839
35912
200
font/woff2
Font
https://www.callumlaing.com/_/8cCPwugZTuQ76xq5weVkLNGjDZJ9An566MJnxAnUgdE/https/mc.us4.list-manage.com/signup-form/settings?u=d74149d0660cad7ae44f79f89&id=00a7f2e2f0&for_preview=0
h2
1490.6460000202
1732.6050000265
7604
16508
200
application/json
XHR
https://eep.io/mc-cdn-images/template_images/branding_logo_text_dark.svg
h2
1499.4389999192
1603.1579999253
7880
17263
200
image/svg+xml
Image
https://www.callumlaing.com/_/m7aoJbRoRa86FdMScAnzzDENRXMl-KHG9KwwBHxjUxo/https/mc.us4.list-manage.com/pages/track/should-web-engagement-track?u=d74149d0660cad7ae44f79f89&id=0300c89ae1f0
h2
1569.3469999824
1852.377000032
637
23
200
application/json
Script
Network Round Trip Times — 0 ms
High Network RTT (Round Trip Times) can have a large impact on performance. Providing servers geographically closer to the user could improve performance.
Server Backend Latencies — 0 ms
High server latencies indicate the server is overloaded or has a poor backend performance.
Tasks
Below is a list of the top-level main thread tasks that executed during page load.
Start Time (Ms) End Time (Ms)
761.466
11.896
779.067
7.264
862.961
116.376
979.394
7.042
998.388
58.194
1056.624
47.63
1106.053
46.53
1154.146
116.862
1271.05
197.014
1468.253
131.022
1599.464
60.943
1661.419
10.798
1696.754
264.205
1965.384
11.746
1987.605
6.101
Diagnostics
Below is a collection of useful page vitals.
View Data
Metrics
Below is a collection of metrics.
View Data
Script Treemap Data
Provide as required, for treemap app.

Metrics

Time to Interactive — 4.7 s
The time taken for the page to become fully interactive.
Speed Index — 4.4 s
The time taken for the page contents to be visibly populated.
Total Blocking Time — 250 ms
The total blocking time is the sum of all time periods between First Contentful Paint and Time to Interactive (when task length exceeded 50ms).

Audits

First Meaningful Paint — 3.6 s
The time taken for the primary content of the page to be rendered.

Other

Reduce unused JavaScript — Potential savings of 41 KiB
It is advised to remove unused JavaScript in order to reduce bytes consumed by network activity.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
79525
42444

Metrics

First Contentful Paint — 3.6 s
The time taken for the first image or text on the page to be rendered.
Largest Contentful Paint — 8.6 s
The timing of the largest text or image that is painted.
Cumulative Layout Shift — 0.782
Cumulative Layout Shift is the measurement of visible elements collective movement within the viewport.
View Data

Audits

Max Potential First Input Delay — 520 ms
Users could experience a delay when interacting with the page.

Other

Eliminate render-blocking resources — Potential savings of 1,900 ms
Resources, such as JavaScript and style sheets, can block the first paint of the page. Callumlaing.com should consider delivering critical JavaScript/style sheets (JS/CSS) inline and deferring all non-critical JS/CSS.
URL Transfer Size (Bytes) Potential Savings (Ms)
https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700,700i|Playfair+Display:400,400i,700,700i
1813
780
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/css/signup-forms/pages/common.css
3681
780
Properly size images — Potential savings of 5,339 KiB
Images can slow down the page's load time. Callumlaing.com should consider serving more appropriate-sized images.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
5190182
3841869
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
1086418
948896
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
506682
451252
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
409311
209134
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
31312
16007
Efficiently encode images — Potential savings of 657 KiB
Unoptimized images can consume more cellular data than what is necessary.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
1086418
673052
Serve images in next-gen formats — Potential savings of 5,946 KiB
Consider JPEG 2000, JPEG XR or WebP image formats which provide better compression than PNG and JPEG.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
5190182
4479744
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
1086418
928387.7
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
409311
360453.85
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
506682
243679.85
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
68357
57338.3
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
31312
18720.3
Avoid enormous network payloads — Total size was 7,405 KiB
Large network payloads can cost users money and are linked to long load times.
URL Transfer Size (Bytes)
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
5191038
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
1087281
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
507543
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
410171
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/mojo/mclandingpage.js
79525
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
69209
https://fonts.gstatic.com/s/opensans/v28/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6FxZCJgg.woff2
43467
https://eep.io/mc-release/1.1.1ccfdf4b038987751394b030cbddb3f740effb38b/js-legacy/js/dojo/dojo.js
41564
https://fonts.gstatic.com/s/opensans/v28/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-mu0SC55I.woff2
40484
https://fonts.gstatic.com/s/playfairdisplay/v28/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgEM86xQ.woff2
36839
Serve static assets with an efficient cache policy — 9 resources found
Callumlaing.com can speed up repeat visits by increasing the cache lifetime, which is essentially how long before a cached copy expires.
URL Cache TTL (Ms) Transfer Size (Bytes)
https://www.callumlaing.com/_/4niQwABvmHWBmSDFYcoFRFtDOUmvOhhPUTvN4O_F1hY/https/mc.us4.list-manage.com/pages/track/open?u=d74149d0660cad7ae44f79f89&id=0300c89ae1f0
0
941
https://www.callumlaing.com/_/m7aoJbRoRa86FdMScAnzzDENRXMl-KHG9KwwBHxjUxo/https/mc.us4.list-manage.com/pages/track/should-web-engagement-track?u=d74149d0660cad7ae44f79f89&id=0300c89ae1f0
0
637
https://chimpstatic.com/mcjs-connected/js/users/d74149d0660cad7ae44f79f89/d6b6c56283ee4de409bd9ae50.js
1783000
4028
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
3600000
5191038
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
3600000
1087281
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
3600000
507543
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
3600000
410171
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
3600000
69209
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
3600000
32170
Minimize main-thread work — 4.7 s
Main-thread work timing can be lowered by reducing the time required for parsing, compiling and executing JS. Delivering smaller JS payloads may help with this.
Category Time Spent (Ms)
Rendering
1902.56
Script Evaluation
1001.412
Style & Layout
868.396
Other
807.892
Script Parsing & Compilation
67.232
Parse HTML & CSS
49.856
Ensure text remains visible during webfont load
Make use of the font-display CSS feature, which will ensure text is user-visible while webfonts are loading.
URL Potential Savings (Ms)
https://fonts.gstatic.com/s/opensans/v28/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-mu0SC55I.woff2
6.3430001027882
https://fonts.gstatic.com/s/opensans/v28/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6FxZCJgg.woff2
6.6680000163615
https://fonts.gstatic.com/s/playfairdisplay/v28/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgEM86xQ.woff2
7.4849999509752
Image elements do not have explicit `width` and `height`
Reduce layout shifts and improve CLS by setting explicit width and height properties on image elements.
URL
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/5f38ced8-0f0d-4363-9c4f-3cb03623c5e7.jpg
https://mcusercontent.com/d74149d0660cad7ae44f79f89/_compresseds/e2320061-b49c-4fea-aa01-872edbe3565d.jpg
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/d9648ee6-411d-49e1-8422-4b6dca8fd782.png
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/4830b5fa-666e-43c7-920c-25ef65ddbc58.png
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/8b9ac989-11b0-45ea-8d86-21cecafe99a8.png
https://mcusercontent.com/d74149d0660cad7ae44f79f89/images/825f2914-8343-4c38-8ee3-c9a46b733610.png
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-twitter-96.png
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-pinterest-96.png
https://eep.io/mc-cdn-images/icons/social-block-v2/outline-light-linkedin-96.png
https://eep.io/mc-cdn-images/template_images/branding_logo_text_dark.svg
First Contentful Paint (3G) — 7320 ms
The time taken for the first image or text on the page to be rendered while on a 3G network.
63

Accessibility

Indicates how accessible the page is and highlights opportunities where the page can be made more accessible to users of callumlaing.com. This includes details about various page attributes that can be optimized.

Navigation

`[accesskey]` values are unique
Access keys assist users with focusing on different parts of the page. Each access key should be unique for proper navigation.
The page contains a heading, skip link, or landmark region
It is advised to provide ways to bypass repetitive content, allowing users to navigate the page efficiently.
`[id]` attributes on active, focusable elements are unique
Ensure all focusable elements have a unique id value to allow them to be visible to users of assistive technologies, like a screen reader.
Heading elements appear in a sequentially-descending order
Properly order all headers and do not skip heading levels to better the navigation and readability for users of assistive technologies, like a screen reader.
No element has a `[tabindex]` value greater than 0
Although technically valid, a tabindex value greater than 0 often creates frustrating experiences for users who rely on assistive technologies.

ARIA

`[aria-*]` attributes match their roles
Avoid mismatching 'aria-*' attributes and their 'role' value, as it invalidates the attribute.
`button`, `link`, and `menuitem` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[aria-hidden="true"]` is not present on the document `<body>`
If aria-hidden=true is set on the document body, assistive technologies, like a screen reader will work inconsistently.
`[aria-hidden="true"]` elements do not contain focusable descendents
Interactive elements within an aria-hidden=true element are unavailable to users of assistive technologies, like a screen reader.
ARIA input fields have accessible names
Generic names are announced to users of assistive technologies, like a screen reader, when an input field does not have an accessible name specified.
ARIA `meter` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
ARIA `progressbar` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[role]`s have all required `[aria-*]` attributes
Some ARIA roles have required 'aria-*' attributes, which provide essential information about state and functionality.
Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children.
Some ARIA parent roles cannot perform their intended functions if specific child roles are not used.
`[role]`s are contained by their required parent element
Some ARIA child roles cannot perform their intended functions if specific parent roles are not used.
`[role]` values are valid
All ARIA roles require valid values to perform their intended functions.
ARIA toggle fields have accessible names
Generic names are announced to users of assistive technologies, like a screen reader, when a toggle field does not have an accessible name specified.
ARIA `tooltip` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
ARIA `treeitem` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[aria-*]` attributes have valid values
ARIA attributes cannot be interpreted with invalid values when used by screen readers and other assistive technologies.
`[aria-*]` attributes are valid and not misspelled
ARIA attributes cannot be interpreted with invalid names when used by screen readers and other assistive technologies.
ARIA IDs are unique
Ensure all ARIA ID values are unique to prevent elements from being overlooked by assistive technologies, like a screen reader.

Names and labels

Buttons have an accessible name
Buttons become unusable as they are announced simply as "button" when the button does not have an accessible name, when used by screen readers and other assistive technologies.
Document has a `<title>` element
Search engines, screen reader users and other assistive technology users rely on the title to provide an overview of the page and to help determine if the page is relevant to their search.
No form fields have multiple labels
Having multiple labels for form fields can be confusing to assistive technologies, like a screen reader.
`<frame>` or `<iframe>` elements have a title
Screen reader users and other assistive technology users rely on frame titles to describe the contents of frames.
`<input type="image">` elements have `[alt]` text
Input buttons with alternative text assist screen readers and other assistive technology users to understand its purpose.
Form elements have associated labels
Screen readers and other assistive technologies rely on labels to properly announce form controls.
Links have a discernible name
In order to improve the navigation for screen reader and other assistive technology users, use link text that is unique, focusable and discernible.
`<object>` elements have alternate text
It is advised that alt text is used on '<object>' elements in order to provide meaning to screen reader and other assistive technology users, as these technologies are unable to translate non-text content.

Tables and lists

`<dl>`'s contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements.
Screen readers and other assistive technologies may produce poor and inaccurate output when definition lists are not properly marked up.
Definition list items are wrapped in `<dl>` elements
In order for screen readers and other assistive technologies to properly announce definition list items ('<dt>' and '<dd>'), they must be wrapped in parent a '<dl>' element.
Lists contain only `<li>` elements and script supporting elements (`<script>` and `<template>`).
Use proper list structure to aid screen readers and other assistive technologies.
List items (`<li>`) are contained within `<ul>` or `<ol>` parent elements
In order for screen readers to announce list items, ensure that list items ('<li>') are contained within parent '<ul>' or '<ol>' tags.
Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table.
Screen readers and other assistive technologies have features to make navigating tables easier. Ensure that '<td>' cells using the headers attribute only refer to other cells in the same table, to improve screen reader user experience.
`<th>` elements and elements with `[role="columnheader"/"rowheader"]` have data cells they describe.
Screen readers and other assistive technologies have features to make navigating tables easier. Ensure that table headers refer to some set of cells, to improve screen reader user experience.

Internationalization and localization

`<html>` element has a valid value for its `[lang]` attribute
Specify a valid BCP 47 language in order to help screen readers and other assistive technologies announce text properly.
`[lang]` attributes have a valid value
Specify a valid BCP 47 language on elements in order to help screen readers and other assistive technologies announce text properly.

Best practices

The document does not use `<meta http-equiv="refresh">`
Pages that refresh automatically cause a poor user experience as focus is directed back to the top of the page unexpectedly.

Audio and video

`<video>` elements contain a `<track>` element with `[kind="captions"]`
Callumlaing.com may provide assistance to deaf or hearing-impaired users with captions on videos.

Contrast

Background and foreground colors do not have a sufficient contrast ratio.
Many (if not most) users find low-contrast text difficult or impossible to read.
Failing Elements

Internationalization and localization

`<html>` element does not have a `[lang]` attribute
It is advised to provide a lang attribute so that screen readers and other assistive technologies are guaranteed to announce the page's text correctly. When not provided, the user's default language setting will be used which may cause inaccuracies.
Failing Elements

Names and labels

Image elements do not have `[alt]` attributes
Provide short and descriptive alternative text where possible on informative elements.
Failing Elements

Best practices

`[user-scalable="no"]` is used in the `<meta name="viewport">` element or the `[maximum-scale]` attribute is less than 5.
For users with low vision who rely on screen magnification, ensure that zooming is not disabled.
Failing Elements

Manual Checks

The page has a logical tab order
The visual layout should be logical in its tab order and users cannot focus elements that are offscreen.
Interactive controls are keyboard focusable
Ensure that custom interactive controls are keyboard focusable and that a focus indicator is displayed.
Interactive elements indicate their purpose and state
Ensure that interactive elements (such as links and buttons) are distinguishable from non-interactive elements and that they indicate their state.
The user's focus is directed to new content added to the page
When new content (such as a dialogue) is added to the page, the user's focus should be directed to it.
User focus is not accidentally trapped in a region
Avoid focus being accidentally trapped when a user tabs in and out of controls or regions on page.
Custom controls have associated labels
Ensure that custom interactive controls have associated labels, which are provided by aria-label and aria-labelledby attributes.
Custom controls have ARIA roles
Ensure that all custom interactive controls have appropriate ARIA roles.
Visual order on the page follows DOM order
Ensure that the DOM order matches with the page's visual order, in order to improve navigation for screen readers and other assistive technologies.
Offscreen content is hidden from assistive technology
Ensure that offscreen content is hidden through the use of "display:none" styling or the aria-hidden attribute.
HTML5 landmark elements are used to improve navigation
Elements such as <main> and <nav> are recommended as they are used by screen readers and other assistive technologies to improve keyboard navigation.
83

Best Practices

Indicates the recommended, best practices currently in place on the page and highlights the best practices that callumlaing.com should incorporate. This includes practices such as protecting pages with HTTPS.

Audits

Avoids requesting the geolocation permission on page load
When requesting a user's location, provide context or consider tying the request to a user action to avoid confusion and mistrust from users.
Avoids requesting the notification permission on page load
When requesting permission to send notifications, provide context or consider tying the request to a user action to avoid confusion and mistrust from users.
Ensure CSP is effective against XSS attacks
Significantly reduce the risk of cross-site scripting attacks (XSS) by ensuring you have a strong Content Security Policy (CSP).
Description Directive Severity
No CSP found in enforcement mode
High

Audits

Allows users to paste into password fields
Ensure that password inputs may be pasted into to aid in the user's ability to use password managers and improve security.
Displays images with correct aspect ratio
Ensure that image display dimensions match their natural aspect ratio.
Serves images with appropriate resolution
For maximum image clarity, ensure images have natural dimensions and are proportional to the display size and pixel ratio.
Fonts with `font-display: optional` are preloaded
It is recommended that optional fonts are preloaded.

Audits

Page has the HTML doctype
Ensure a doctype is specified to prevent the browser from switching to quirks-mode.
Properly defines charset
It is advised to declare a character encoding, optionally via a <meta> tag in the first 1024 bytes of the HTML or in the Content-Type HTTP response header.

Audits

Detected JavaScript libraries
Below is a list of all front-end JavaScript libraries that were detected on the page.
Name Version
Dojo
1.1.1eba076926ba3dee14c360d226e969beb47375458 (f4fef70)
Avoids deprecated APIs
Avoid deprecated APIs which will eventually be removed the browser.
No browser errors logged to the console
Below is a list of all errors logged to the console, which indicate unresolved problems on the site.
Page has valid source maps
Consider deploying source maps for added benefits such as the ability to debug while in production.
No issues in the `Issues` panel in Chrome Devtools
There may be unresolved issues logged to Chrome Devtools.

Audits

Does not use HTTPS — 1 insecure request found
Ensure that all pages are protected with HTTPS (including those that do not handle sensitive data) as HTTPS prevents tampering and passive listening on communications between the app and its users. Additionally, HTTPS is a prerequisite for HTTP/2 and many new web platform APIs.
Insecure URL Request Resolution
http://callumlaing.com/
Allowed
Includes front-end JavaScript libraries with known security vulnerabilities — 8 vulnerabilities detected
Ensure that the use of third-party scripts is minimal and that only trusted third-party scripts are used as some may contain known security vulnerabilities which may be exploited by attackers.
Library Version Vulnerability Count Highest Severity
8
High
85

SEO

Indicates how well the page is optimized for ranking in search engines and highlights Search Engine Optimization (SEO) opportunities for callumlaing.com. This includes optimizations such as providing meta data.

Mobile Friendly

Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of callumlaing.com on mobile screens.
Document uses legible font sizes — 99.97% legible text
Font sizes of 12px or less are too small to most mobile users without user gestures and further action. Aim for more than 60% of page text to use font sizes greater than 12px.
Source Selector % of Page Text Font Size
0.03%
10px
99.97%
≥ 12px
Tap targets are sized appropriately — 100% appropriately sized tap targets
Interactive elements (such as buttons and links) should be appropriately spaced, sized and easy enough to select or tap with regard to their surrounding elements.

Content Best Practices

Document has a `<title>` element
Search engines, screen reader users and other assistive technology users rely on the title to provide an overview of the page and to help determine if the page is relevant to their search.
Links have descriptive text
Make use of descriptive link text to assist search engines in understanding the content.
Document has a valid `hreflang`
Search engines can be instructed to list specific versions of a page for a given language or region through the use of hreflang links.
Document has a valid `rel=canonical`
Search engines can be suggested which URL should be shown in search results through the use of canonical links.
Document avoids plugins
The content of plugins cannot be indexed by search engines and many devices either restrict or do not support them.

Crawling and Indexing

Page has successful HTTP status code
Avoid pages with unsuccessful HTTP status codes as they may not be indexed by search engines.
Links are crawlable
Ensure that the 'href' attribute of anchor elements links to the appropriate destination. This allows for more pages of the site to be discovered by search engines.
Page isn’t blocked from indexing
Pages that cannot be crawled by search engines cannot be indexed or included in their search results. Ensure that search engines have permission to crawl all pages that should be indexed.
robots.txt is valid
Malformed robots.txt files prevent crawlers from understanding how a site wants to be crawled or indexed, which can be devastating to SEO.

Content Best Practices

Document does not have a meta description
Meta descriptions may be used by search engines when displaying a link to the page and should concisely summarize the page's content.
Image elements do not have `[alt]` attributes
Provide short and descriptive alternative text where possible on informative elements.
Failing Elements

Manual Checks

Structured data is valid
Structured data can be validated through the use of the Structured Data Testing Tool and the Structured Data Linter.
30

PWA

Indicates how valid the aspects of a Progressive Web App (PWA) are for the page and highlights opportunities to enable/improve the PWA of callumlaing.com. This includes details about web app manifests.

PWA Optimized

Content is sized correctly for the viewport
Ensure that the width of the app's content matches the width of the viewport, otherwise the app might not be optimized for mobile screens.
Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of callumlaing.com on mobile screens.

Installable

Web app manifest or service worker do not meet the installability requirements — 1 reason
User engagement may be increased by leveraging the browsers ability to proactively prompt users to add the app to their homescreen.
Failure reason
No manifest was fetched

PWA Optimized

Does not register a service worker that controls page and `start_url`
A service worker is used to provide Progressive Web Apps the use of features such as working offline, the ability for the app to be added to the homescreen as well as push notifications.
Is not configured for a custom splash screen
Themed splash screens ensure a high-quality user experience at launch for app users.
View Data
Does not set a theme color for the address bar.
A theme may be applied to the browser address bar, which ideally can be made to match the site.
View Data
Does not provide a valid `apple-touch-icon`
iOS users of Progressive Web Apps will benefit from an apple touch icon, which can be defined with 'apple-touch-icon', which must point to a non-transparent 192px (or 180px) square PNG.
Manifest doesn't have a maskable icon
Maskable icons are great to ensure that images fill the entire shape when installing the app on a device.

Manual Checks

Site works cross-browser
Ensure that the Progressive Web App works correctly across every major browser.
Page transitions don't feel like they block on the network
Users perceive apps with responsive, snappy transitions as higher peforming and ensures a great user experience, even on a slow network.
Each page has a URL
Ensure that all pages are deep linkable via URL. They should also be unique for the purpose of shareability on social media.
Hosting

Server Location

Server IP Address: 148.105.251.16
Continent: North America
Country: United States
United States Flag
Region:
City:
Longitude: -97.822
Latitude: 37.751
Currencies: USD
USN
USS
Languages: English

Web Hosting Provider

Name IP Address
The Rocket Science Group, LLC
Registration

Domain Registrant

Private Registration: No
Name:
Organization:
Country:
City:
State:
Post Code:
Email:
Phone:
Note: Registration information is derived from various sources and may be inaccurate.

Domain Registrar

Name IP Address
MESH DIGITAL LIMITED 109.68.33.21
Security

Visitor Safety

Mature Content: Not Likely
McAfee WebAdvisor Rating: Safe
WOT Rating:
WOT Trustworthiness:
WOT Child Safety:
Note: Safety information is not guaranteed.

SSL/TLS Certificate

Issued To: callumlaing.com
Issued By: R3
Valid From: 15th February, 2022
Valid To: 16th May, 2022
Subject: CN = callumlaing.com
Hash: 56447780
Issuer: CN = R3
O = Let's Encrypt
S = US
Version: 2
Serial Number: 0x03A7444BFF0595F3D05DE6BE31DA7DCD47A5
Serial Number (Hex): 03A7444BFF0595F3D05DE6BE31DA7DCD47A5
Valid From: 15th February, 2024
Valid To: 16th May, 2024
Signature Algorithm (Short Name): RSA-SHA256
Signature Algorithm (Long Name): sha256WithRSAEncryption
Authority Key Identifier: keyid:14:2E:B3:17:B7:58:56:CB:AE:50:09:40:E6:1F:AF:9D:8B:14:C2:C6
Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication
Certificate Policies: Policy: 2.23.140.1.2.1
Policy: 1.3.6.1.4.1.44947.1.1.1
CPS: http://cps.letsencrypt.org

Authority Information Access: OCSP - URI:http://r3.o.lencr.org
CA Issuers - URI:http://r3.i.lencr.org/

SCT List: Signed Certificate Timestamp:
Version : v1 (0x0)
Log ID : DF:A5:5E:AB:68:82:4F:1F:6C:AD:EE:B8:5F:4E:3E:5A:
EA:CD:A2:12:A4:6A:5E:8E:3B:12:C0:20:44:5C:2A:73
Timestamp : Feb 16 00:21:32.240 2022 GMT
Extensions: none
Signature : ecdsa-with-SHA256
30:45:02:21:00:CB:E0:80:7C:E3:FD:00:82:13:70:EF:
2D:6F:26:0E:5A:E7:FD:30:34:76:42:C4:02:1A:2A:06:
CD:7A:51:DF:5A:02:20:38:A7:18:F7:8C:BE:79:49:96:
18:0D:60:C2:26:01:9A:66:7F:94:4B:55:B6:45:0A:98:
D5:A9:59:A0:38:50:14
Signed Certificate Timestamp:
Version : v1 (0x0)
Log ID : 29:79:BE:F0:9E:39:39:21:F0:56:73:9F:63:A5:77:E5:
BE:57:7D:9C:60:0A:F8:F9:4D:5D:26:5C:25:5D:C7:84
Timestamp : Feb 16 00:21:32.250 2022 GMT
Extensions: none
Signature : ecdsa-with-SHA256
30:44:02:20:56:AD:EE:D8:24:FA:15:39:49:57:4C:A8:
F5:D0:C6:17:00:8E:2D:1B:2D:52:4A:C2:B8:F7:2E:3D:
B4:05:B3:45:02:20:3E:4F:FE:21:75:12:FC:61:D2:50:
B8:E4:DA:25:B4:7C:D0:3C:C6:1C:C1:72:20:66:7D:95:
51:72:DB:91:9B:B9
Key Usage: Digital Signature, Key Encipherment
Basic Constraints: CA:FALSE
Subject Alternative Name: DNS:www.callumlaing.com
DNS:callumlaing.com
Technical

DNS Lookup

A Records

Host IP Address Class TTL
callumlaing.com. 148.105.251.16 IN 14400

NS Records

Host Nameserver Class TTL
callumlaing.com. ns.123-reg.co.uk. IN 14400
callumlaing.com. ns2.123-reg.co.uk. IN 14400

MX Records

Priority Host Server Class TTL
10 callumlaing.com. mx0.123-reg.co.uk. IN 14400
20 callumlaing.com. mx1.123-reg.co.uk. IN 14400

SOA Records

Domain Name Primary NS Responsible Email TTL
callumlaing.com. ns.123-reg.co.uk. hostmaster.callumlaing.com. 14400

TXT Records

Host Value Class TTL
callumlaing.com. v=spf1 IN 14400

HTTP Response Headers

HTTP-Code: HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Date: 11th April, 2022
Server: openresty
Content-Location: https://us4.campaign-archive.com/domain-proxy?d=callumlaing.com&p=%2F&u=d74149d0660cad7ae44f79f89
Set-Cookie: *
Vary: Accept-Encoding
X-Mc-Customer-Tier: free
X-Mc-Dc: atl01
X-Ua-Compatible: IE=edge,chrome=1

Whois Lookup

Created: 10th January, 2014
Changed: 12th May, 2021
Expires: 10th January, 2024
Registrar: MESH DIGITAL LIMITED
Status: ok
Nameservers: ns.123-reg.co.uk
ns2.123-reg.co.uk
Owner Organization: Fitness Buffet Pte Ltd
Owner State: Singapore
Owner Country: SG
Owner Email: https://webform.meshdigital.com
Admin Email: https://webform.meshdigital.com
Tech Email: https://webform.meshdigital.com
Full Whois: Domain Name: callumlaing.com
Registry Domain ID: 1842194713_DOMAIN_COM-VRSN
Registrar WHOIS Server: whois.meshdigital.com
Registrar URL: http://www.domainbox.com
Updated Date: 2021-05-12T01:18:16Z
Creation Date: 2014-01-10T06:34:31Z
Registrar Registration Expiration Date: 2024-01-10T06:34:31Z
Registrar: MESH DIGITAL LIMITED
Registrar IANA ID: 1390
Registrar Abuse Contact Email: abuse@domainbox.com
Registrar Abuse Contact Phone: +1.8779770099
Reseller: 123-reg/Webfusion
Domain Status: ok https://icann.org/epp#ok
Registrant Organization: Fitness Buffet Pte Ltd
Registrant State/Province: Singapore
Registrant Country: SG
Registrant Email: https://webform.meshdigital.com
Admin Email: https://webform.meshdigital.com
Tech Email: https://webform.meshdigital.com
Name Server: NS.123-REG.CO.UK
Name Server: NS2.123-REG.CO.UK
DNSSEC: unsigned
URL of the ICANN WHOIS Data Problem Reporting System: http://wdprs.internic.net/
>>> Last update of WHOIS database: 2022-04-12T00:26:28Z <<<
For more information on Whois status codes, please visit https://icann.org/epp

The Data in this WHOIS database is provided
for information purposes only, and is designed to assist persons in
obtaining information related to domain name registration records.
It's accuracy is not guaranteed. By submitting a
WHOIS query, you agree that you will use this Data only for lawful
purposes and that, under no circumstances will you use this Data to:
(1) allow, enable, or otherwise support the transmission of mass
unsolicited, commercial advertising or solicitations via e-mail(spam);
or (2) enable high volume, automated, electronic processes that
apply to this WHOIS or any of its related systems. The provider of
this WHOIS reserves the right to modify these terms at any time.
By submitting this query, you agree to abide by this policy.
LACK OF A DOMAIN RECORD IN THE WHOIS DATABASE DOES
NOT INDICATE DOMAIN AVAILABILITY.

Nameservers

Name IP Address
ns.123-reg.co.uk 212.67.202.2
ns2.123-reg.co.uk 62.138.132.21
Related

Subdomains

Similar Sites

Organic Search (US) Competitors

Backlink Competitors

Sites with the same domain name

Sites hosted on the same IP address

Domain Valuation Snoop Score
0/5
0/5
$890 USD 1/5
$3,459 USD 2/5