C · Needs work

Page SEO Inspection

https://bordersancestry.com/
Crawled 13 Nov, 05:55 UTC (8 hr ago)
HTTP 200 105 KB 165 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 56% Complete
Primary focus: Largest Contentful Paint is 8.1s (lab data), above the 2.5s target and in the poor range. 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.

! 1✓ 150% · fair
Live snippet simulation
Title width: 2164px / 580px · truncated
B BORDERS ANCESTRY bordersancestry.com
BORDERS ANCESTRY - Qualified Professional Family and…

Professionally Qualified and Accredited Genealogy, Family and Local History Research Service. Based in Scottish Borders Northumberland and Durham

Title width 2164px of 580px

The title is about 2164px wide and will be truncated in desktop results (limit 580px).

Rendered width

Desktop2164px/ 580px
Mobile1947px/ 920px

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

How to fix
How to fix
Shorten the title so the important words appear first.
Meta description 145 characters

The meta description length is well judged.

Crawling & indexing

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

! 1i 3✓ 1376% · good
Canonical tag

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

How to fix
How to fix
<link rel="canonical" href="https://www.bordersancestry.com/">
Redirect chain 1 redirects

The URL redirects once before resolving, costing an extra round trip.

301 https://bordersancestry.com/
200 https://www.bordersancestry.com/
How to fix
How to fix
Link to the final URL directly so visitors and crawlers skip the hop.
Favicon

No favicon is declared. Google shows one beside your result on mobile.

How to fix
How to fix
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
www and https versions 1 found

The other spellings of this address arrive here, but not in one permanent step: a chain costs time on every visit, and a temporary redirect tells search engines the move may not last.

http://bordersancestry.com/ → 301 → 301 → https://www.bordersancestry.com/ (2 redirects)
How to fix
How to fix
Redirect each spelling straight to the final address with a 301 or 308.
HTTP status HTTP 200

The page returns 200 OK.

Robots directives

No directive prevents indexing.

Language

Language is declared as "en".

lang="en"
hreflang

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

Viewport

The viewport is configured for mobile.

width=device-width, initial-scale=1.0
Character encoding

The page declares UTF-8 encoding.

Mixed content

All resources load securely.

URL length 32 characters

The URL is 32 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.

robots.txt 0 KB

robots.txt is present and does not block crawling.

XML sitemap 153 URLs

A sitemap is published, listing 153 URLs.

Lists 153 URLs

Missing pages (404) HTTP 404

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

Content & metadata

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

✕ 1! 2i 2✓ 655% · needs work
Word count 396 Substantive
Headings 3 Structured
H1 tags 0 None found
Text ratio 2.0% Text vs markup
Heading outline 3 headings
H2 ​
H2 Let your ancestral journey begin...
H2 Susie Douglas, MLitt. QG. FSAScot. of ​Borders Ancestry will be your guide!
H1 tag

The page has no h1, so its main subject is undeclared.

How to fix
How to fix
<h1>The page's primary subject</h1>
Keyword repetition

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

Where these terms appear

TermCountDensity
arrow177.02%
How to fix
How to fix
Rewrite so the term appears where it reads naturally. Search engines match meaning, not repetition.
Share image 140 × 35 px

The share image is 140 × 35 pixels. Under 600 × 315, platforms show a small thumbnail beside the link instead of a large card.

https://www.bordersancestry.com/uploads/1/7/2/3/17231010/editor/rqg-b-w-logo.png?1569675911
How to fix
How to fix
Use an image of 1200 × 630 pixels.
Twitter card

No twitter:card tag, so shared links render as a small preview.

How to fix
How to fix
<meta name="twitter:card" content="summary_large_image">
Text-to-HTML ratio 2.0% text

Only 2.0% of the page is readable text; the rest is markup and script.

How to fix
How to fix
Move inline scripts and styles to external files, and remove unused markup.
Open Graph tags

Open Graph tags are present.

Heading hierarchy

The heading outline descends in order.

Content length 396 words

The page has roughly 396 words.

Table headers

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

Keyword placement

The page's prominent terms appear in its title, description or headings.

Where these terms appear

TermCountDensityTitleDescriptionHeadings
arrow177.02%✕✕✕
borders62.48%✓✓✓
ancestry62.48%✓✕✓
norham62.48%✕✕✕
newsletter52.07%✕✕✕
Keyword cloud

The page's most frequent terms, from 242 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.

arrowbordersancestrynorhamnewsletterservicescontactrecordsblogprivacypolicyhomeblogsintroductionavailableconsultationbitesizepickspastprojectsberwickplacestudylinkskerchesterssproustonsignpowerhourworkshopenquiriesfindcookiesqualifiedresearchsiteownwebsitetrackingopt

AI & answer readiness

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

i 4✓ 450% · fair
AI crawlers 10/10 All allowed
Readable without JS Yes Served complete
Identity None No structured data
Quotable signals 1/4 Schema, date, author, answers
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.
llms.txt for AI agents

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

https://www.bordersancestry.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, contact page, privacy policy.

about page, contact page, privacy policy

Extractable structure 396 words

396 words across 4 headings, 25 lists and 0 tables.

Entity identity

The page has no structured data, so there is no entity to check.

Readable without JavaScript

The page reads the same with and without JavaScript.

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.

✕ 2! 4i 2✓ 538% · 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
8.11s

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 Poor
616ms

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

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 Poor
3.39s

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 22 found

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

stylesheet: //cdn2.editmysite.com/css/sites.css?buildtime=1780340638
stylesheet: //cdn2.editmysite.com/css/old/fancybox.css?buildtime=1780340638
stylesheet: /files/main_style.css?1780349974
stylesheet: //cdn2.editmysite.com/fonts/Poppins/font.css?2
stylesheet: //cdn2.editmysite.com/fonts/Open_Sans/font.css?2
stylesheet: //cdn2.editmysite.com/fonts/Open_Sans/font.css?2
How to fix
How to fix
Add defer to scripts, inline critical CSS, and load the rest asynchronously.
Third-party services 5 services · 1.4 MB

5 third-party services account for 78% of what this page downloads, 1.4 MB and 1.1s of main-thread time.

Third-party services

Service TransferredMain thread
Weebly1.1 MB792ms
Google Tag Manager288 KB296ms
weebly.com6 KB9ms
Google Fonts2 KBunder 1ms
Google Analytics1 KBunder 1ms

1.1s 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.
Browser caching 99 KB re-downloaded

31 files have cache lifetimes short enough that returning visitors download 99 KB again.

Short cache lifetimes

FileCache lifetimeSize
cdn2.editmysite.com/main-customer-accounts-site.js14d156 KB
cdn2.editmysite.com/main.js14d145 KB
cdn2.editmysite.com/stl.js14d34 KB
cdn2.editmysite.com/jquery-1.8.3.min.js14d33 KB
cdn2.editmysite.com/sites.css14d30 KB
cdn2.editmysite.com/italic.woff214d18 KB
cdn11.editmysite.com/commerce-core.js14d18 KB
cdn2.editmysite.com/bolditalic.woff214d18 KB
cdn11.editmysite.com/main-commerce-browse.js14d17 KB
cdn2.editmysite.com/regular.woff214d17 KB
cdn2.editmysite.com/bold.woff214d17 KB
www.bordersancestry.com/plugins.jsnone16 KB

Showing the 12 largest of 31 files.

8 expire within the hour

How to fix
How to fix
Serve static assets with a long max-age and a content hash in the filename, so a new version gets a new URL rather than a short expiry.
Deprecated tags

The page uses <font> removed from HTML5, which browsers render inconsistently.

<font> × 13
How to fix
How to fix
Replace with CSS: <center> becomes text-align, <font> becomes font-family and color.
Inline styles 100 found

100 elements carry inline style attributes, which cannot be cached and inflate the document.

How to fix
How to fix
Move repeated styles into a cacheable stylesheet.
Time to first byte

Time to first byte is 165 ms.

HTML size 105 KB

The HTML document is 105 KB.

Compression

The response is compressed with gzip.

Content-Encoding: gzip
Page weight 55 requests · 1.8 MB

The page loads 55 requests totalling 1.8 MB.

What loaded, by type

Type RequestsTransferred
script21of 18 declared1.2 MB
image2of 1 declared353 KB
font10125 KB
stylesheet12of 16 declared115 KB
document224 KB
other87 KB

Of these, 41 requests (1.4 MB) come from third-party domains.

Security

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

! 2i 6✓ 538% · needs work
HSTS

No Strict-Transport-Security header, so a first visit over HTTP can be intercepted before the redirect.

How to fix
How to fix
Strict-Transport-Security: max-age=31536000; includeSubDomains
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'
Email addresses in the page 1 found

1 email address is written into the page as plain text, where harvesting bots collect them for spam and phishing.

[email protected]
How to fix
How to fix
Use a contact form, or show the address through a script or as an image. If the address must stay, give it a strong spam filter.
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://www.bordersancestry.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.
Cookie flags

The cookie the page sets carries Secure, HttpOnly and SameSite.

Version disclosure

No software versions are disclosed in headers or the page.

TLS certificate 67 days left

The TLS certificate is valid for another 67 days, issued by Google Trust Services.

67 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 2✓ 571% · good
IPv6

www.bordersancestry.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.
DMARC policy

bordersancestry.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.bordersancestry.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 Cloudflare

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

Domain expiry 1177 days left

bordersancestry.com is registered until 2 Feb 2030 with Mesh Digital Limited.

1177 days remaining
Domain age 11 years old

bordersancestry.com was registered on 2 Feb 2015, 11 years ago. Age is not a ranking factor, but an established name is one buyers and partners look for.

SPF record

bordersancestry.com publishes an SPF record: v=spf1 include:spf.protection.outlook.com -all

ads.txt

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

Links, media & schema

Links, images and structured data.

! 3i 1✓ 764% · fair
Social share preview From this page's Open Graph tags
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
656, 661# ×2<a href="#" class="search-toggle"> <svg class="icon-search" width="20" height="20" viewbox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M19.51 17.147l-4.344-4.345c-.023-.023-.05-.04-.075-.06.856-1.297 1.355-2.85 1.355-4.52 0-4.54-3.68-8.222-8.222-8.222S0 3.68 0 8.223c0 4.54 3.68 8.222 8.…
How to fix
How to fix
Add link text, or an aria-label where the link is an icon.
Image dimensions 1 found

1 image has no width and height, so the page shifts as they load (hurting CLS).

# / lineImage source
#1 L756/uploads/1/7/2/3/17231010/editor/rqg-b-w-logo.png?1569675911<img src="/uploads/1/7/2/3/17231010/editor/rqg-b-w-logo.png?1569675911" alt="Picture Susie Douglas Qualified Genealogist Family Historian and Writer https://www.qualifiedgenealogists.org/profiles/douglas-susie" style="width:auto;max-width:100%">
How to fix
How to fix
<img src="…" width="800" height="600">, the browser reserves the space before decoding.
Broken links 20 checked

1 link on this page return an error, 1 of them to this site's own pages. Visitors who follow it land on an error page.

403  https://www.bordersancestry.com/store/checkout?cart=
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

The page has no structured data, so it cannot qualify for rich results.

How to fix
How to fix
<script type="application/ld+json">{"@context":"https://schema.org","@type":"Article","headline":"…"}</script>
Link distribution 69 resources

66 internal and 3 external links.

66 internal, 3 external

66 internal, 3 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.

Image loading

Image loading strategy looks sound.

Responsive images

Images are served responsively or are small enough not to need it.

What to fix first

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

1
✕ Critical Largest Contentful Paint is 8.1s (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
2
✕ Critical Total Blocking Time (an INP proxy) is 616ms (lab data), above the 200ms target.
Break up long JavaScript tasks and defer work that is not needed for the first interaction.
involved
3
✕ Critical The page has no h1, so its main subject is undeclared.
<h1>The page's primary subject</h1>
quick fix
4
! Recommended The title is about 2164px wide and will be truncated in desktop results (limit 580px).
Shorten the title so the important words appear first.
quick fix
5
! Recommended 1 image has 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 1 link on this page return an error, 1 of them to this site's own pages. Visitors who follow it land on an error page.
Update each link to its current destination, or remove it. For a page of your own that moved, add a redirect too.
quick fix
7
! Recommended 22 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
8
! Recommended 5 third-party services account for 78% of what this page downloads, 1.4 MB and 1.1s 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
9
! Recommended No canonical tag, so duplicate URLs may compete with each other.
<link rel="canonical" href="https://www.bordersancestry.com/">
quick fix
10
! Recommended 2 links have no anchor text, so its purpose is unreadable without sight of the layout.
Add link text, or an aria-label where the link is an icon.
quick fix
11
! Recommended No Strict-Transport-Security header, so a first visit over HTTP can be intercepted before the redirect.
Strict-Transport-Security: max-age=31536000; includeSubDomains
quick fix
12
! Recommended Nothing prevents this page being embedded in a frame, which allows clickjacking.
Content-Security-Policy: frame-ancestors 'self'
quick fix

Score breakdown

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

Indexability & Crawling38 checks · 15 issues
62
On-Page Content & Structure20 checks · 9 issues
48
Core Web Vitals13 checks · 8 issues
18
Schema & Rich Snippets1 checks · 1 issue
98
Media & Links10 checks · 3 issues
83
Overall scoreGrade C · 46/85 passed
55