F · Critical issues

Page SEO Inspection

https://springs.adaptabledev.com/
Crawled 13 Nov, 09:35 UTC (5 hr ago)
HTTP 200 154 KB 91 ms TTFB
Download PDF

PDF export is a paid feature

A PDF of the full report, ready to send to a client or a colleague, comes with Basic at $19 a month and every plan above it, along with saved history. The report itself stays free to read.

See the plans
On-Page Checklist 59% Complete
Primary focus: "noindex" is set via meta robots, so this page will not appear in search results. Fix now →
Filter:

Full diagnostics

Every check that ran, grouped by what it affects. Problems appear first in each group.

Meta Tags & Search Snippet Simulator

The tags that decide how this page is titled and described in search results.

i 20% · needs work
Live snippet simulation
Title width: 245px / 580px
S Springs.adaptabledev.com springs.adaptabledev.com
Home | Springs Apartments

Springs Apartments

Title tag 245px of 580px

The title is 25 characters. Short titles are fine, but there may be room to say more about what the page offers.

Rendered width

Desktop245px/ 580px
Mobile220px/ 920px

Measured in Arial at the size Google renders result titles, accurate to within a fraction of a percent of a browser. Characters: 25.

Meta description 18 characters

The meta description is 18 characters. A little more, up to about 160, gives a fuller snippet in results.

Springs Apartments

Crawling & indexing

Whether search engines can reach, read and index this page at all.

✕ 2! 3✓ 1372% · needs work
Robots directives

"noindex" is set via meta robots, so this page will not appear in search results.

meta robots: noindex,nofollow
How to fix
How to fix
Remove the directive if the page is meant to be found in search.
robots.txt

robots.txt disallows all crawlers from the entire site.

# *
User-agent: *
Disallow: /

# Host
Host: https://springs.adaptabledev.com

# Sitemaps
Sitemap: https://springs.adaptabledev.com/sitemap.xml
How to fix
How to fix
Remove "Disallow: /" unless the site is deliberately hidden from search.
Robots directives

"nofollow" is set via meta robots.

meta robots: noindex,nofollow
How to fix
How to fix
Confirm this restriction is intentional.
Canonical tag

No canonical tag, so duplicate URLs may compete with each other.

How to fix
How to fix
<link rel="canonical" href="https://springs.adaptabledev.com/">
Viewport

The viewport prevents zooming, which fails accessibility guidelines for users who need to magnify text.

width=device-width, initial-scale=1, maximum-scale=1, viewport-fit=cover
How to fix
How to fix
Remove user-scalable=no and maximum-scale from the viewport.
HTTP status HTTP 200

The page returns 200 OK.

Redirect chain

The URL resolves without redirects.

Language

Language is declared as "en".

lang="en"
hreflang

No hreflang annotations, which is correct for a single-language page.

Character encoding

The page declares UTF-8 encoding.

Favicon

A favicon is declared.

Mixed content

All resources load securely.

URL length 33 characters

The URL is 33 characters.

URL readability

The URL is clean and readable.

URL depth 0 levels deep

The page is 0 levels deep.

URL parameters

The URL has no query parameters.

XML sitemap 133 URLs

A sitemap is published, listing 133 URLs.

Lists 133 URLs

Missing pages (404) HTTP 404

A page that does not exist returns HTTP 404, so search engines drop dead addresses.

www and https versions 1 checked

All 1 other spelling of this address redirect here in one permanent step.

Content & metadata

What the page says it is about, and how it reads.

! 1i 1✓ 982% · good
Word count 3,257 Substantive
Headings 13 Structured
H1 tags 1 Exactly one
Text ratio 8.4% Text vs markup
Heading outline 13 headings
H1 the Springs Difference
H2 Take Comfort in Being Home™
H3 Explore the Springs Difference
H3 Resort-style relaxation
H3 A place for you and your pets
H3 Fitness on your schedule
H3 Service you can rely on
H3 Resort-style relaxation
H3 We’re committed to providing our residents an unparalleled living experience
H3 We Promise outstanding customer service and we want you to hold us to that
H3 Springs 5 star standard
H3 The Continental difference
H2 Start your career with Springs
Keyword repetition

"website" makes up 4.8% of the page text, which reads as unnatural repetition rather than writing.

Where these terms appear

TermCountDensity
website1094.81%
How to fix
How to fix
Rewrite so the term appears where it reads naturally. Search engines match meaning, not repetition.
Keyword placement

None of the page's most frequent terms (website, storage, duration, maximum) appear in the title, description or headings.

Where these terms appear

TermCountDensityTitleDescriptionHeadings
website1094.81%✕✕✕
storage853.75%✕✕✕
duration853.75%✕✕✕
maximum672.96%✕✕✕
user542.39%✕✕✕
How to fix
How to fix
Either the metadata does not describe this page, or the content has drifted from its subject. Align one to the other.
Open Graph tags

Open Graph tags are present.

Twitter card

twitter:card is set to summary_large_image.

H1 tag

The page has exactly one h1.

the Springs Difference
Heading hierarchy

The heading outline descends in order.

Content length 3,257 words

The page has roughly 3257 words.

Text-to-HTML ratio 8.4% text

Text is 8.4% of the page source.

Table headers

No data tables on this page, so there are no columns to label.

Keyword cloud

The page's most frequent terms, from 2264 words of content.

What this page is about

Term size reflects how often it appears. Density is not a ranking factor, this is a view of the page's subject, not a target to hit.

websitestoragedurationmaximumuserhttpcookieusedlocalhtmlpersistenttypedatasessiontypevisitsvisitorcontentreportssupportcookiesnavigationpagesoperatoriabv2analyticsallowsstatisticaltimeconsentfunctionalitynumberaveragespentnecessarybotsprovidermarketingmakedistinguishbetweenhumans
Share image 1920 × 1080 px

The share image loads and is 1920 × 1080 pixels, the right size and shape for a large card.

AI & answer readiness

Whether answer engines and AI overviews can extract and trust this page.

! 1i 5✓ 440% · needs work
AI crawlers 10/10 All allowed
Readable without JS No Needs JavaScript
Identity 1/2 Partly declared
Quotable signals 1/4 Schema, date, author, answers
Content needs JavaScript

Most of the page arrives with JavaScript: 672 words served, 3257 after rendering.

served: 672 words
rendered: 3257 words
How to fix
How to fix
A reader that does not run JavaScript sees roughly a third of this page. Serving the main content in the HTML makes it readable to every crawler, not only the ones that render.
Answer readiness 0 found

No heading is followed by a concise 40 to 60 word answer, the shape featured snippets and AI overviews extract.

How to fix
How to fix
Open at least one section with a direct 40 to 60 word answer to the question its heading poses.
Content freshness

The page publishes no date. Not expected on a page like this; worth adding if its content goes out of date.

How to fix
How to fix
<time datetime="2026-09-17">17 September 2026</time>, or datePublished in Article structured data.
Answer schema

No structured data an answer engine can lift directly, such as FAQPage, HowTo or Article.

How to fix
How to fix
Mark up question-and-answer content as FAQPage, or step-by-step content as HowTo.
Page subject

No structured data describes what this page is about.

Found: Organization, BreadcrumbList
None of these declare the page's subject.

2 types: Organization, BreadcrumbList

How to fix
How to fix
Describe the page with the type that fits it, Article for writing, Product for a product, FAQPage for questions and answers. Boilerplate like Organization and BreadcrumbList identifies the site, not the page.
llms.txt for AI agents

No llms.txt. AI coding agents have no curated map of this site.

https://springs.adaptabledev.com/llms.txt returned nothing
How to fix
How to fix
A markdown file at /llms.txt listing your most useful pages with one-line descriptions. It does not affect how AI assistants cite you in answers, and nobody has shown that it does. What it helps is agents reading your documentation directly: Anthropic supports it, Perplexity uses it to choose pages, and Cursor, Continue and Cline navigate docs with it. Worth doing for a documentation or API site, and safe to skip otherwise.
Attribution

Attribution signals present: about page, privacy policy, contact page.

about page, privacy policy, contact page

Extractable structure 3,257 words

3257 words across 13 headings, 10 lists and 0 tables.

Publisher identity

The page names who is behind it: Springs Apartments.

AI crawler access 10 checked

Every AI crawler checked is allowed to read this page.

Speed & delivery

What makes the page slow, and what the loading experience measures.

✕ 1! 4i 1✓ 754% · needs work
Rendered page
The page as it rendered on a mobile viewport during the performance test
Mobile, measured
The page as it rendered on a desktop viewport
Desktop, measured
LCP Poor
6.45s

Largest Contentful Paint

Target ≤ 2.5s

What this measures

How long until the largest thing on screen, usually the hero image, video or headline block, has finished rendering. It is a proxy for "when did this page feel loaded".

What moves it: Serve the hero image in a modern format at the size it is displayed, preload it, and remove render-blocking CSS and JavaScript ahead of it. A slow server response delays it too, so check TTFB first.

INP Good
130ms

Interaction to Next Paint

Target ≤ 200ms

What this measures

How long the page takes to respond visibly after a tap, click or key press, measured across every interaction, not just the first. High INP is what makes a page feel unresponsive even once it looks ready.

What moves it: Break up long JavaScript tasks so the main thread is free to respond, defer work that is not needed for the interaction, and avoid large re-renders on every event.

CLS Good
0.006

Cumulative Layout Shift

Target ≤ 0.1

What this measures

How much visible content jumps around while the page loads. This is what makes someone tap the wrong thing because a banner or image pushed the layout down underneath their finger.

What moves it: Give images and video explicit width and height so the browser reserves the space, reserve room for ads and embeds, and avoid inserting content above what is already on screen.

FCP Needs work
2.64s

First Contentful Paint

Target ≤ 1.8s

What this measures

How long until anything at all appears, the first text or image painted. It separates "the page starts slowly" from "the biggest element is slow": a fast FCP with a slow LCP points at the hero, while both slow points at the server.

What moves it: Cut render-blocking CSS and JavaScript in the head, inline the styles needed for the first screen, and improve the server response time.

TTFBNo data
n/a

Real-user response time

Target ≤ 800ms

Needs real-user data from Chrome UX Report

Render-blocking resources 11 found

11 resources in <head> block the first paint, delaying when anything appears on screen.

stylesheet: https://use.typekit.net/ttj6nmz.css
stylesheet: /_next/static/immutable/chunks/0mi6xuvv2z2r-.css
stylesheet: /_next/static/immutable/chunks/2brupbwq57tmd.css
stylesheet: /_next/static/immutable/chunks/2t5m1kobqc61t.css
script: https://consentcdn.cookiebot.com/consentconfig/1b0ecb20-366e-4dd6-baa2-4d8de76674bb/springs.adaptabledev.com/configuration.js
script: https://consent.cookiebot.com/uc.js
How to fix
How to fix
Add defer to scripts, inline critical CSS, and load the rest asynchronously.
HTML size 154 KB

The HTML document is 154 KB, heavier than about 90% of pages.

How to fix
How to fix
Move inline scripts and styles to cacheable files, and remove unused markup.
Page weight 95 requests · 45.0 MB

The page loads 45.0 MB in 95 requests, among the heaviest tenth of the web. On a phone connection it takes many seconds before it is usable.

What loaded, by type

Type RequestsTransferred
media542.6 MB
script56of 33 declared1.7 MB
image11of 30 declared358 KB
font5268 KB
stylesheet5of 4 declared75 KB
document338 KB
other1033 KB

Of these, 25 requests (43.1 MB) come from third-party domains. The HTML declares 30 images but only 11 loaded, the rest are lazy-loaded and fetched when scrolled to.

How to fix
How to fix
Remove scripts that are not needed for the first screen, lazy-load below-the-fold media, and serve images in a modern format at display size.
Third-party services 7 services · 43.1 MB

7 third-party services account for 96% of what this page downloads, 43.1 MB and 167ms of main-thread time.

Third-party services

Service TransferredMain thread
sanity.io42.6 MBunder 1ms
Cookiebot159 KB100ms
Adobe TypeKit148 KBunder 1ms
Google Tag Manager114 KB40ms
Macropod BugHerd80 KB27ms
Sentry1 KBunder 1ms
vercel.live0 KBunder 1ms

0.2s of main-thread time

How to fix
How to fix
Audit what each service earns its weight doing, remove any that duplicate another, and load the rest after the page is interactive.
Time to first byte

Time to first byte is 91 ms.

Deprecated tags

No deprecated HTML tags are used.

Inline styles 34 found

34 inline style attributes.

Compression

The response is compressed with br.

Content-Encoding: br
Browser caching 82 KB re-downloaded

Cache lifetimes are long enough that a returning visitor re-downloads only 82 KB.

Short cache lifetimes

FileCache lifetimeSize
consent.cookiebot.com/uc.js8m37 KB
sidebar.bugherd.com/embed.js4h34 KB
sidebar.bugherd.com/embed.js4h34 KB
consentcdn.cookiebot.com/configuration.js1d1 KB
p.typekit.net/p.css7d0 KB

1 expire within the hour

Security

Transport security, reputation and the response headers that protect visitors.

! 1i 5✓ 754% · fair
Clickjacking protection

Nothing prevents this page being embedded in a frame, which allows clickjacking.

How to fix
How to fix
Content-Security-Policy: frame-ancestors 'self'
MIME sniffing

No X-Content-Type-Options header, so browsers may guess a resource type and execute it.

How to fix
How to fix
X-Content-Type-Options: nosniff
Referrer policy

No Referrer-Policy header, so full URLs may leak to third-party sites.

How to fix
How to fix
Referrer-Policy: strict-origin-when-cross-origin
Content Security Policy

No Content-Security-Policy, the main defence against cross-site scripting.

How to fix
How to fix
Content-Security-Policy: default-src 'self'
Permissions policy

No Permissions-Policy header, so any script or embed on the page may ask for the camera, microphone or location.

How to fix
How to fix
Permissions-Policy: camera=(), microphone=(), geolocation=()
security.txt

No security.txt, so somebody who finds a vulnerability has no published way to tell you about it.

https://springs.adaptabledev.com/.well-known/security.txt
How to fix
How to fix
Publish /.well-known/security.txt with a Contact: line (an email address or a form) and an Expires: date.
Email addresses in the page

No email addresses are written into the page for harvesting bots to collect.

HSTS

HTTPS is enforced with Strict-Transport-Security.

max-age=63072000
Cookie flags

The page sets no cookies, so there are none to expose.

Version disclosure

No software versions are disclosed in headers or the page.

TLS certificate 62 days left

The TLS certificate is valid for another 62 days, issued by Let's Encrypt.

62 days remaining
Google Web Risk

Not listed by Google Web Risk for malware, phishing or unwanted software.

TLS version TLS 1.3

Connections use TLS 1.3.

Server & domain

The server and the domain behind the page: protocol, network, registration and email records.

i 3✓ 457% · fair
IPv6

springs.adaptabledev.com has no IPv6 address. Visitors on IPv6-only mobile networks reach it through a translation gateway, which adds a step.

How to fix
How to fix
Add an AAAA record. Most hosts and every major CDN provide an IPv6 address.
SPF record

adaptabledev.com has no SPF record, so nothing tells mail servers who may send email as this domain. Spoofed mail is easier, and genuine mail is likelier to land in spam.

How to fix
How to fix
Publish a TXT record starting v=spf1 that lists the services that send your mail. A domain that sends none: v=spf1 -all
DMARC policy

adaptabledev.com has no DMARC record, so mail servers have no instruction for mail that fails SPF or DKIM. Gmail and Yahoo require one from bulk senders.

How to fix
How to fix
Publish a TXT record at _dmarc.adaptabledev.com, starting with v=DMARC1; p=none; rua=mailto:[email protected] to collect reports, then tighten to quarantine or reject.
HTTP/2 HTTP/2

Served over HTTP/2, which loads a page's files in parallel over one connection.

CDN Vercel

Served through Vercel, a CDN, so visitors get the page from a server near them.

Domain expiry 257 days left

adaptabledev.com is registered until 29 Jul 2027 with 123-Reg Limited.

257 days remaining
Domain age 12 years old

adaptabledev.com was registered on 29 Jul 2014, 12 years ago. Age is not a ranking factor, but an established name is one buyers and partners look for.

ads.txt

No ad network loads on this page, so ads.txt is not needed.

Links, media & schema

Links, images and structured data.

! 6✓ 754% · fair
Social share preview From this page's Open Graph tags
Anchor text 1 found

1 link use non-descriptive anchor text, which tells neither readers nor engines where it leads.

# / lineLink
JS"Details" → #<a id="CybotCookiebotDialogNavDetails" class="CybotCookiebotDialogNavItemLink" href="#" data-target="CybotCookiebotDialogTabContentDetails" tabindex="-1" role="tab" aria-selected="false" aria-controls="CybotCookiebotDialogTabContentDetails" lang="en">Details</a>
How to fix
How to fix
Describe the destination: "read our grinder guide" rather than "click here".
Anchor text 2 found

2 links have no anchor text, so its purpose is unreadable without sight of the layout.

All 2 point at the same destination, one template reused down the page.

LineLink
21, 54/ ×2<a class="header__logo-link" href="/"><span class="header__logo-wrap--global"><svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewbox="0 0 229.92 70.06" class="brand-logo brand-logo__springs header__logo header__logo--home"><path fill="currentColor" d="M184.86 43.39c-3.89 0-10.28-1.94-1…
How to fix
How to fix
Add link text, or an aria-label where the link is an icon.
Image dimensions 29 found

29 images have no width and height, so the page shifts as they load (hurting CLS).

Shown as 12 unique sources; the counts show how often each repeats.

# / lineImage source
JSdata:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAC6SURBVHgBpdTdCcMgEAdwT/vk04EOkBG6QifpHH3rCF2hk3SVvBaEuoDYu4IgRRMv/iEkD/Hn+QnOuatS6gEAqDoJIQC/vfe594+m576FjAZKL6XXkSDiYox5UQFLXZEoNZJzXg9B/0hK6SKGWkiMcRVBewjnNIuURdIzyFBFo0jZPnoGqaMbCEqRJkSNIiFPCfILj7F1GLkySfvuqnFlShDxWesF6D76zF4jPJ/GWvum7/NRjBCegtsXQuuTY/odOJIAAAAASUVORK5CYII= ×18<img class="CybotExternalLinkArrow" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAC6SURBVHgBpdTdCcMgEAdwT/vk04EOkBG6QifpHH3rCF2hk3SVvBaEuoDYu4IgRRMv/iEkD/Hn+QnOuatS6gEAqDoJIQC/vfe594+m576FjAZKL6XXkSDiYox5…
#2 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2Fff565705a7f771a8b25b98de9e9bcddaf19e1516-1920x1080.jpg%3Fq%3D100&w=3840&q=75<img alt="" decoding="async" data-nimg="fill" class="home-hero__poster home-hero__poster--mobile" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2Fff565…
#3 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F88b706de58b9039df973dc0016e26bc91086c5a0-1920x1080.jpg%3Fq%3D100&w=3840&q=75<img alt="" decoding="async" data-nimg="fill" class="home-hero__poster home-hero__poster--desktop" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F88b7…
#4 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F12b806fbdff6d067c8c5d2eb5340423534a40ed5-1920x1080.jpg%3Fq%3D75&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="slider__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F12b806fbdff6d067c8c5…
#5 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F5331ff0f9ae268551411f0b8a6b7258129813a05-1170x570.jpg%3Fq%3D75&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="slider__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F5331ff0f9ae268551411…
#6 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F1589df68f713dcce19d23d8376cf8027c4a433e5-315x408.jpg%3Fq%3D75&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="slider__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F1589df68f713dcce19d2…
#7 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F7210b786fda8ff5b46a446cead0ce7c9324dd27d-630x816.jpg%3Fq%3D75&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="slider__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F7210b786fda8ff5b46a4…
#8 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F30647dec5f93e7d55da32f88422faa3be32c1d15-1000x698.jpg%3Fq%3D75&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="slider__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F30647dec5f93e7d55da3…
#9 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F85676d4d5b5aba230d45bdf5d8b7123caa3e8b55-1920x1080.jpg%3Fq%3D100&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="media-textarea__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F85676d4d5b5a…
#10 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F21c906c88dde420ffc4d388decb174e23ad5b904-1113x842.png%3Fq%3D100&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="media-textarea__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F21c906c88dde…
#11 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2Fd697007f98ffb2cd93e6fc8fc80c6f56688ce951-1000x698.jpg%3Fq%3D100&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="media-textarea__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2Fd697007f98ff…
#12 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F846bc9f548ed7474cf470a59d3d1abfe412f807a-1000x563.jpg%3Fq%3D100&w=3840&q=75<img alt="" loading="lazy" decoding="async" data-nimg="fill" class="call-to-action__image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F846bc9f548ed…
How to fix
How to fix
<img src="…" width="800" height="600">, the browser reserves the space before decoding.
Image loading 18 found

18 images below the fold load eagerly, competing for bandwidth with the visible page.

Shown as 3 unique sources; the counts show how often each repeats.

# / lineImage source
JSdata:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAC6SURBVHgBpdTdCcMgEAdwT/vk04EOkBG6QifpHH3rCF2hk3SVvBaEuoDYu4IgRRMv/iEkD/Hn+QnOuatS6gEAqDoJIQC/vfe594+m576FjAZKL6XXkSDiYox5UQFLXZEoNZJzXg9B/0hK6SKGWkiMcRVBewjnNIuURdIzyFBFo0jZPnoGqaMbCEqRJkSNIiFPCfILj7F1GLkySfvuqnFlShDxWesF6D76zF4jPJ/GWvum7/NRjBCegtsXQuuTY/odOJIAAAAASUVORK5CYII= ×16<img class="CybotExternalLinkArrow" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAC6SURBVHgBpdTdCcMgEAdwT/vk04EOkBG6QifpHH3rCF2hk3SVvBaEuoDYu4IgRRMv/iEkD/Hn+QnOuatS6gEAqDoJIQC/vfe594+m576FjAZKL6XXkSDiYox5…
#2 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2Fff565705a7f771a8b25b98de9e9bcddaf19e1516-1920x1080.jpg%3Fq%3D100&w=3840&q=75<img alt="" decoding="async" data-nimg="fill" class="home-hero__poster home-hero__poster--mobile" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2Fff565…
#3 L54/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F88b706de58b9039df973dc0016e26bc91086c5a0-1920x1080.jpg%3Fq%3D100&w=3840&q=75<img alt="" decoding="async" data-nimg="fill" class="home-hero__poster home-hero__poster--desktop" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcset="/_next/image?url=https%3A%2F%2Fcdn.sanity.io%2Fimages%2Fnix01ycc%2Fstaging%2F88b7…
How to fix
How to fix
Add loading="lazy" to images below the first screen.
Responsive images 18 found

18 large images are served at one fixed size, so phones download desktop-sized files.

All 18 point at the same source, one template reused down the page.

# / lineImage source
JSdata:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAC6SURBVHgBpdTdCcMgEAdwT/vk04EOkBG6QifpHH3rCF2hk3SVvBaEuoDYu4IgRRMv/iEkD/Hn+QnOuatS6gEAqDoJIQC/vfe594+m576FjAZKL6XXkSDiYox5UQFLXZEoNZJzXg9B/0hK6SKGWkiMcRVBewjnNIuURdIzyFBFo0jZPnoGqaMbCEqRJkSNIiFPCfILj7F1GLkySfvuqnFlShDxWesF6D76zF4jPJ/GWvum7/NRjBCegtsXQuuTY/odOJIAAAAASUVORK5CYII= ×18<img class="CybotExternalLinkArrow" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAC6SURBVHgBpdTdCcMgEAdwT/vk04EOkBG6QifpHH3rCF2hk3SVvBaEuoDYu4IgRRMv/iEkD/Hn+QnOuatS6gEAqDoJIQC/vfe594+m576FjAZKL6XXkSDiYox5…
How to fix
How to fix
<img src="hero.jpg" srcset="hero-400.jpg 400w, hero-800.jpg 800w" sizes="(max-width: 600px) 400px, 800px">
Broken links 23 checked

1 link on this page return an error. Visitors who follow it land on an error page.

403  https://matterport.com/legal/privacy-policy/
How to fix
How to fix
Update each link to its current destination, or remove it. For a page of your own that moved, add a redirect too.
Structured data

Structured data is valid: Organization, BreadcrumbList.

Organization, BreadcrumbList

2 types: Organization, BreadcrumbList

Rich result eligibility

Eligible for rich results via Organization, BreadcrumbList.

Organization, BreadcrumbList

2 types: Organization, BreadcrumbList

Link distribution 82 resources

53 internal and 29 external links.

53 internal, 29 external

53 internal, 29 external

Link rel attributes

Outbound link rel attributes look appropriate.

In-page anchors

In-page anchors resolve to real targets.

Image alt text

All images carry an alt attribute.

Image formats

No heavy legacy image formats found.

What to fix first

Ranked by impact against effort, the top of this list buys the most for the least work.

1
✕ Critical "noindex" is set via meta robots, so this page will not appear in search results.
Remove the directive if the page is meant to be found in search.
quick fix
2
✕ Critical robots.txt disallows all crawlers from the entire site.
Remove "Disallow: /" unless the site is deliberately hidden from search.
quick fix
3
✕ Critical Largest Contentful Paint is 6.5s (lab data), above the 2.5s target and in the poor range.
Optimise the hero image, remove render-blocking CSS and JS, and improve server response time.
moderate
4
! Recommended The page loads 45.0 MB in 95 requests, among the heaviest tenth of the web. On a phone connection it takes many seconds before it is usable.
Remove scripts that are not needed for the first screen, lazy-load below-the-fold media, and serve images in a modern format at display size.
involved
5
! Recommended 29 images have no width and height, so the page shifts as they load (hurting CLS).
<img src="…" width="800" height="600">, the browser reserves the space before decoding.
quick fix
6
! Recommended 11 resources in <head> block the first paint, delaying when anything appears on screen.
Add defer to scripts, inline critical CSS, and load the rest asynchronously.
moderate
7
! Recommended 7 third-party services account for 96% of what this page downloads, 43.1 MB and 167ms of main-thread time.
Audit what each service earns its weight doing, remove any that duplicate another, and load the rest after the page is interactive.
moderate
8
! Recommended "nofollow" is set via meta robots.
Confirm this restriction is intentional.
quick fix
9
! Recommended No canonical tag, so duplicate URLs may compete with each other.
<link rel="canonical" href="https://springs.adaptabledev.com/">
quick fix
10
! Recommended The viewport prevents zooming, which fails accessibility guidelines for users who need to magnify text.
Remove user-scalable=no and maximum-scale from the viewport.
quick fix
11
! Recommended 18 images below the fold load eagerly, competing for bandwidth with the visible page.
Add loading="lazy" to images below the first screen.
quick fix
12
! Recommended 1 link use non-descriptive anchor text, which tells neither readers nor engines where it leads.
Describe the destination: "read our grinder guide" rather than "click here".
quick fix

Score breakdown

How each area scored. Categories that could not be measured are excluded rather than counted as zero.

Indexability & Crawling39 checks · 15 issues
15
On-Page Content & Structure22 checks · 9 issues
78
Core Web Vitals13 checks · 6 issues
52
Schema & Rich Snippets2 checks · 0 issues
100
Media & Links11 checks · 6 issues
63
Overall scoreGrade F · 51/89 passed
30