Catalog / scan-speak.dk
65

SEO audit for scan-speak.dk

Webshop – Scan-Speak A/S

ecommerceWordPress

Health 65/100 (fair) · 50 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)
Screenshot of scan-speak.dk
50
pages crawled
47
indexable pages
0
errors
201
warnings
514
notices
0
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Agent Readiness 70 0 50 10
Performance 70 0 50 200
Meta Description 72 0 47 0
Duplicate 89 0 19 0
Headings 92 0 13 0
Content 95 0 8 81
Canonical 98 0 4 0
Indexability 98 0 3 0
Sitemap 98 0 3 0
Structured Data 98 0 3 0
Titles 99 0 1 1
Cache 100 0 0 3
Crawlability 100 0 0 1
Images 100 0 0 15
Links 100 0 0 9
Security 100 0 0 100
Social 100 0 0 94
Findings

Warnings (12 rules)

warning Control has no accessible name

Rule agent.control_no_name · Agent Readiness · 50 occurrence(s)

warning Near-duplicate page content

Rule duplicate.near · Duplicate · 2 occurrence(s)

warning Duplicate <title> across pages

Rule duplicate.title · Duplicate · 17 occurrence(s)

warning Page is noindex

Rule index.noindex · Indexability · 3 occurrence(s)

warning Render-blocking script in <head> (no defer/async)

Rule perf.render_blocking · Performance · 50 occurrence(s)

warning BreadcrumbList present but structurally incomplete

Rule schema.breadcrumb_incomplete · Structured Data · 3 occurrence(s)

  • https://www.scan-speak.dk/product-category/tweeter/ — a BreadcrumbList is present but structurally incomplete — missing required name. Give itemListElement at least 2 ListItems, each with a sequential integer position and a name, and an item URL on every entry except the last.
  • https://www.scan-speak.dk/product/10f-4424g00/ — a BreadcrumbList is present but structurally incomplete — missing required name. Give itemListElement at least 2 ListItems, each with a sequential integer position and a name, and an item URL on every entry except the last.
  • https://www.scan-speak.dk/products/ — a BreadcrumbList is present but structurally incomplete — missing required name. Give itemListElement at least 2 ListItems, each with a sequential integer position and a name, and an item URL on every entry except the last.

warning Non-indexable URL listed in sitemap

Rule sitemap.non_indexable · Sitemap · 3 occurrence(s)

warning Title likely truncated in SERP (too wide)

Rule title.too_long · Titles · 1 occurrence(s)

Notices (17 rules)

notice Heading levels skip a level

Rule agent.heading_skip · Agent Readiness · 9 occurrence(s)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

notice Page served uncached (no-store/private or CDN bypass)

Rule cache.not_cacheable · Cache · 3 occurrence(s)

notice Low text-to-HTML ratio

Rule content.low_ratio · Content · 44 occurrence(s)

notice Main text is hard to read (low Flesch Reading Ease)

Rule content.readability_poor · Content · 37 occurrence(s)

  • https://www.scan-speak.dk/ — this page reads as very difficult (Flesch Reading Ease 28, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/announcement-from-scan-speak-2/ — this page reads as difficult (Flesch Reading Ease 46, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/announcement-from-scan-speak-3/ — this page reads as difficult (Flesch Reading Ease 49, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/announcement-from-scan-speak/ — this page reads as difficult (Flesch Reading Ease 46, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/axpona-2025/ — this page reads as very difficult (Flesch Reading Ease 19, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-belarus-and-kazakhstan/ — this page reads as difficult (Flesch Reading Ease 47, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-estonia-latvia-lithuania-and-ukraine/ — this page reads as difficult (Flesch Reading Ease 46, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-thailand/ — this page reads as difficult (Flesch Reading Ease 40, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-vietnam/ — this page reads as difficult (Flesch Reading Ease 46, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/newsletter-feb2020/ — this page reads as difficult (Flesch Reading Ease 37, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-is-moving/ — this page reads as very difficult (Flesch Reading Ease 27, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-april24/ — this page reads as difficult (Flesch Reading Ease 44, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-aug23-alert/ — this page reads as very difficult (Flesch Reading Ease 23, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-aug23/ — this page reads as difficult (Flesch Reading Ease 37, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-dec2020/ — this page reads as difficult (Flesch Reading Ease 41, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-feb24/ — this page reads as difficult (Flesch Reading Ease 41, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-mar24/ — this page reads as difficult (Flesch Reading Ease 47, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-may2020/ — this page reads as difficult (Flesch Reading Ease 49, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-may2022/ — this page reads as difficult (Flesch Reading Ease 44, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-nov2020/ — this page reads as difficult (Flesch Reading Ease 40, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-nov23/ — this page reads as difficult (Flesch Reading Ease 38, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter-now23show/ — this page reads as very difficult (Flesch Reading Ease 24, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/scan-speak-newsletter/ — this page reads as very difficult (Flesch Reading Ease -0, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/soundsociety-2025-copenhagen/ — this page reads as difficult (Flesch Reading Ease 35, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.scan-speak.dk/webshop/ — this page reads as difficult (Flesch Reading Ease 37, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.

notice Likely hero image lacks fetchpriority=high

Rule images.hero_no_fetchpriority · Performance · 50 occurrence(s)

  • https://www.scan-speak.dk/announcement-from-scan-speak-2/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/announcement-from-scan-speak-3/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/announcement-from-scan-speak/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/axpona-2025/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-belarus-and-kazakhstan/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-estonia-latvia-lithuania-and-ukraine/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-thailand/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-vietnam/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/newsletter-feb2020/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/products/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-is-moving/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-april24/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-aug23-alert/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-aug23/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-dec2020/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-feb24/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-mar24/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-may2020/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-may2022/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-nov2020/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-nov23/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter-now23show/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/scan-speak-newsletter/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/soundsociety-2025-copenhagen/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://www.scan-speak.dk/webshop/ — the likely hero/LCP image (scan-speak-450-300x41.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.

notice Images without width/height (layout shift / CLS)

Rule images.missing_dimensions · Images · 15 occurrence(s)

notice Internal link has no anchor text / accessible name

Rule links.no_anchor_text · Links · 9 occurrence(s)

notice Missing Open Graph tags

Rule og.missing · Social · 47 occurrence(s)

notice Legacy image format (jpg/png/gif) with no next-gen fallback

Rule perf.images_legacy_format · Performance · 50 occurrence(s)

notice No ETag header (no conditional GET for unchanged pages)

Rule perf.no_etag · Performance · 50 occurrence(s)

  • https://www.scan-speak.dk/announcement-from-scan-speak-2/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/announcement-from-scan-speak-3/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/announcement-from-scan-speak/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/axpona-2025/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-belarus-and-kazakhstan/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-estonia-latvia-lithuania-and-ukraine/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-thailand/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-vietnam/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/newsletter-feb2020/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/products/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-is-moving/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-april24/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-aug23-alert/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-aug23/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-dec2020/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-feb24/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-mar24/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-may2020/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-may2022/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-nov2020/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-nov23/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter-now23show/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/scan-speak-newsletter/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/soundsociety-2025-copenhagen/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://www.scan-speak.dk/webshop/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.

notice No Last-Modified header (no conditional GET for unchanged pages)

Rule perf.no_last_modified · Performance · 50 occurrence(s)

  • https://www.scan-speak.dk/announcement-from-scan-speak-2/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/announcement-from-scan-speak-3/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/announcement-from-scan-speak/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/axpona-2025/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-belarus-and-kazakhstan/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-estonia-latvia-lithuania-and-ukraine/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-thailand/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/new-scan-speak-distributor-for-vietnam/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/newsletter-feb2020/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/products/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-is-moving/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-april24/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-aug23-alert/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-aug23/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-dec2020/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-feb24/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-mar24/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-may2020/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-may2022/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-nov2020/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-nov23/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter-now23show/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/scan-speak-newsletter/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/soundsociety-2025-copenhagen/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.scan-speak.dk/webshop/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.

notice URL redirects to another URL

Rule redirect.single · Crawlability · 1 occurrence(s)

notice Missing recommended security headers

Rule security.missing_headers · Security · 50 occurrence(s)

notice target=_blank link without rel=noopener (tab-napping)

Rule security.unsafe_cross_origin_links · Security · 50 occurrence(s)

notice Title is very short

Rule title.too_short · Titles · 1 occurrence(s)

Pages (showing 50 of 50)
URLStatusIndexableWordsIn-links
https://www.scan-speak.dk/
Scan-Speak A/S
200 yes 220 50
https://www.scan-speak.dk/contact-us/
Contact Us – Scan-Speak A/S
200 yes 268 50
https://www.scan-speak.dk/cookie-policy/
Cookie Policy – Scan-Speak A/S
200 yes 754 50
https://www.scan-speak.dk/news/
News – Scan-Speak A/S
200 yes 290 50
https://www.scan-speak.dk/privacy-policy/
Privacy Policy – Scan-Speak A/S
200 yes 1572 50
https://www.scan-speak.dk/product-categories/fullrange/
Fullrange – Scan-Speak A/S
200 yes 328 50
https://www.scan-speak.dk/product-families/ellipticor/
Ellipticor – Scan-Speak A/S
200 yes 648 50
https://www.scan-speak.dk/products/
Products – Scan-Speak A/S
200 yes 628 50
https://www.scan-speak.dk/scan-speak/about-us/
About Us – Scan-Speak A/S
200 yes 235 50
https://www.scan-speak.dk/technical/toolbox/
Toolbox – Scan-Speak A/S
200 yes 327 50
https://www.scan-speak.dk/terms-of-use/
Terms of Use – Scan-Speak A/S
200 yes 1702 50
https://www.scan-speak.dk/where-to-buy/
Where To Buy – Scan-Speak A/S
200 yes 277 50
https://www.scan-speak.dk/product/10f-4424g00/
10F/4424G00 – Scan-Speak A/S
200 yes 223 2
https://www.scan-speak.dk/axpona-2025/
Axpona 2025 – Scan-Speak A/S
200 yes 161 4
https://www.scan-speak.dk/soundsociety-2025-copenhagen/
SoundSociety 2025, Copenhagen – Scan-Speak A/S
200 yes 378 4
https://www.scan-speak.dk/scan-speak-is-moving/
Scan-Speak is moving – Scan-Speak A/S
200 yes 308 3
https://www.scan-speak.dk/contact-form-1/
Contact-form-1 – Scan-Speak A/S
200 yes 580 1
https://www.scan-speak.dk/contact-form-2/
Contact-form-2 – Scan-Speak A/S
200 yes 575 1
https://www.scan-speak.dk/new-scan-speak-distributor-for-thailand/
New Scan-Speak distributor for Thailand – Scan-Speak A/S
200 yes 266 2
https://www.scan-speak.dk/new-scan-speak-distributor-for-vietnam/
New Scan-Speak Distributor for Vietnam – Scan-Speak A/S
200 yes 206 2
https://www.scan-speak.dk/new-scan-speak-distributor-for-estonia-latvia-lithuania-and-ukraine/
New Scan-Speak Distributor for Estonia, Latvia, Lithuania and Ukraine. – Scan-Speak A/S
200 yes 224 2
https://www.scan-speak.dk/scan-speak-newsletter-april24/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 486 2
https://www.scan-speak.dk/announcement-from-scan-speak-2/
Announcement from Scan-Speak. – Scan-Speak A/S
200 yes 248 2
https://www.scan-speak.dk/scan-speak-newsletter-mar24/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 318 2
https://www.scan-speak.dk/scan-speak-newsletter/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 302 2
https://www.scan-speak.dk/scan-speak-newsletter-feb24/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 436 2
https://www.scan-speak.dk/announcement-from-scan-speak/
Announcement from Scan-Speak. – Scan-Speak A/S
200 yes 239 2
https://www.scan-speak.dk/scan-speak-newsletter-now23show/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 154 2
https://www.scan-speak.dk/announcement-from-scan-speak-3/
Announcement from Scan-Speak. – Scan-Speak A/S
200 yes 232 2
https://www.scan-speak.dk/scan-speak-newsletter-nov23/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 272 2
https://www.scan-speak.dk/newsletter-feb2020/
Newsletter – Scan-Speak A/S
200 yes 444 2
https://www.scan-speak.dk/scan-speak-newsletter-aug23/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 283 2
https://www.scan-speak.dk/scan-speak-newsletter-may2020/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 567 2
https://www.scan-speak.dk/scan-speak-newsletter-aug23-alert/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 261 2
https://www.scan-speak.dk/scan-speak-newsletter-nov2020/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 403 2
https://www.scan-speak.dk/scan-speak-newsletter-may2022/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 552 2
https://www.scan-speak.dk/scan-speak-newsletter-dec2020/
Scan-Speak Newsletter – Scan-Speak A/S
200 yes 390 2
https://www.scan-speak.dk/new-scan-speak-distributor-for-belarus-and-kazakhstan/
New Scan-Speak Distributor for Belarus and Kazakhstan. – Scan-Speak A/S
200 yes 246 1
https://www.scan-speak.dk/cart/
Cart – Scan-Speak A/S
200 no 104 0
https://www.scan-speak.dk/category/news/
News – Scan-Speak A/S
200 yes 291 0
https://www.scan-speak.dk/checkout/
Cart – Scan-Speak A/S
200 no 104 0
https://www.scan-speak.dk/contact-form-3/
Contact-form-3 – Scan-Speak A/S
200 yes 558 0
https://www.scan-speak.dk/my-account/
My Account – Scan-Speak A/S
200 no 114 0
https://www.scan-speak.dk/our-products/
Our Products – Scan-Speak A/S
200 yes 84 0
https://www.scan-speak.dk/product-categories/
Product Categories – Scan-Speak A/S
200 yes 84 0
https://www.scan-speak.dk/product-category/tweeter/
Tweeter – Scan-Speak A/S
200 yes 588 0
https://www.scan-speak.dk/product-families/
Product Families – Scan-Speak A/S
200 yes 84 0
https://www.scan-speak.dk/scan-speak/
Scan-Speak – Scan-Speak A/S
200 yes 83 0
https://www.scan-speak.dk/technical/
Technical – Scan-Speak A/S
200 yes 83 0
https://www.scan-speak.dk/webshop/
Webshop – Scan-Speak A/S
200 yes 122 0

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →