Catalog / unoder.dk
65

SEO audit for unoder.dk

unoder.dk - MUSIK - MENNESKE - MEDIE

other

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

Download Markdown report (feed to ChatGPT / Claude / Cursor)

MUSIK - MENNESKE - MEDIE

Screenshot of unoder.dk
41
pages crawled
41
indexable pages
0
errors
126
warnings
434
notices
3
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Agent Readiness 70 0 41 42
Performance 70 0 41 123
Meta Description 85 0 21 19
Duplicate 90 0 14 4
Links 95 0 7 41
Headings 99 0 1 1
Structured Data 99 0 1 41
Content 100 0 0 30
Crawlability 100 0 0 2
Images 100 0 0 45
Security 100 0 0 55
Sitemap 100 0 0 3
Social 100 0 0 28
Findings

Warnings (10 rules)

warning Control has no accessible name

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

warning Duplicate page content

Rule duplicate.content · Duplicate · 4 occurrence(s)

warning Near-duplicate page content

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

warning Duplicate <title> across pages

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

warning Missing <h1>

Rule h1.missing · Headings · 1 occurrence(s)

warning Orphan page (no internal inlinks)

Rule links.orphan · Links · 3 occurrence(s)

warning Internal link points to a redirect

Rule links.redirect_target · Links · 4 occurrence(s)

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

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

warning BreadcrumbList present but structurally incomplete

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

  • https://unoder.dk/ — a BreadcrumbList is present but structurally incomplete — missing required itemListElement. 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.

Notices (20 rules)

notice Heading levels skip a level

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

notice No llms.txt for AI agents

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

  • https://unoder.dk/ — no llms.txt found at the site root — add one so AI agents get a curated site summary

notice Duplicate meta description across pages

Rule duplicate.meta_desc · Duplicate · 4 occurrence(s)

notice Multiple <h1> elements

Rule h1.multiple · Headings · 1 occurrence(s)

notice Image alt text is very long (possible keyword stuffing)

Rule images.alt_too_long · Images · 1 occurrence(s)

notice Image filename is generic/auto-generated (missed image-search signal)

Rule images.generic_filename · Images · 3 occurrence(s)

  • https://unoder.dk/author/redaktion/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://unoder.dk/category/om-unoder/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://unoder.dk/om-unoder/unoder-er-landet/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.

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

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

notice Internal link has no anchor text / accessible name

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

notice Meta description too short

Rule meta_desc.too_short · Meta Description · 3 occurrence(s)

notice Missing Open Graph tags

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

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

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

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

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

  • https://unoder.dk/ — 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://unoder.dk/aarets-danske-udgivelser/ — 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://unoder.dk/anmeldelser/blodet-i-aarene-loeber-som-heste/ — 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://unoder.dk/anmeldelser/decorate-decorate-swerve-of-atoms/ — 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://unoder.dk/anmeldelser/hvert-et-aandedrag-af-melankoli/ — 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://unoder.dk/author/jon/ — 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://unoder.dk/blodet-i-aarene-loeber-som-heste/ — 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://unoder.dk/category/anmeldelser/ — 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://unoder.dk/category/features/ — 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://unoder.dk/category/live/ — 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://unoder.dk/category/maanedens-mestervaerk/ — 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://unoder.dk/category/om-unoder/ — 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://unoder.dk/cookiepolitik-eu/ — 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://unoder.dk/features/aarets-danske-udgivelser/ — 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://unoder.dk/features/aarets-udenlandske-udgivelser-i-202/ — 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://unoder.dk/features/blackstar-10-aars-tilbageblik/ — 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://unoder.dk/live/at-spille-er-at-doe-med-stil/ — 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://unoder.dk/maanedens-mestervaerk/den-store-musikalske-isbryder-fylder-rundt/ — 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://unoder.dk/maanedens-mestervaerk/godspeed-into-new-wave/ — 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://unoder.dk/maanedens-mestervaerk/manisk-megalomanisk-mestervaerk/ — 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://unoder.dk/om-unoder/ — 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://unoder.dk/om-unoder/unoder-er-landet/ — 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://unoder.dk/privacy-policy/ — 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://unoder.dk/tag/aarets-album/ — 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://unoder.dk/tag/david-bowie/ — 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 · 41 occurrence(s)

  • https://unoder.dk/ — 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://unoder.dk/aarets-danske-udgivelser/ — 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://unoder.dk/anmeldelser/blodet-i-aarene-loeber-som-heste/ — 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://unoder.dk/anmeldelser/decorate-decorate-swerve-of-atoms/ — 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://unoder.dk/anmeldelser/hvert-et-aandedrag-af-melankoli/ — 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://unoder.dk/author/jon/ — 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://unoder.dk/blodet-i-aarene-loeber-som-heste/ — 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://unoder.dk/category/anmeldelser/ — 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://unoder.dk/category/features/ — 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://unoder.dk/category/live/ — 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://unoder.dk/category/maanedens-mestervaerk/ — 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://unoder.dk/category/om-unoder/ — 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://unoder.dk/cookiepolitik-eu/ — 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://unoder.dk/features/aarets-danske-udgivelser/ — 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://unoder.dk/features/aarets-udenlandske-udgivelser-i-202/ — 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://unoder.dk/features/blackstar-10-aars-tilbageblik/ — 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://unoder.dk/live/at-spille-er-at-doe-med-stil/ — 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://unoder.dk/maanedens-mestervaerk/den-store-musikalske-isbryder-fylder-rundt/ — 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://unoder.dk/maanedens-mestervaerk/godspeed-into-new-wave/ — 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://unoder.dk/maanedens-mestervaerk/manisk-megalomanisk-mestervaerk/ — 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://unoder.dk/om-unoder/ — 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://unoder.dk/om-unoder/unoder-er-landet/ — 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://unoder.dk/privacy-policy/ — 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://unoder.dk/tag/aarets-album/ — 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://unoder.dk/tag/david-bowie/ — 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 · 2 occurrence(s)

notice Deprecated schema type with no Google rich result

Rule schema.deprecated_type · Structured Data · 41 occurrence(s)

notice Missing recommended security headers

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

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

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

notice Indexable page not listed in sitemap

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

Pages (showing 41 of 41)
URLStatusIndexableWordsIn-links
https://unoder.dk/
unoder.dk - MUSIK - MENNESKE - MEDIE
200 yes 1179 41
https://unoder.dk/anmeldelser/hvert-et-aandedrag-af-melankoli/
Hvert et åndedrag af melankoli - unoder.dk
200 yes 1529 41
https://unoder.dk/category/anmeldelser/
Anmeldelser Arkiv - unoder.dk
200 yes 510 41
https://unoder.dk/category/features/
Features Arkiv - unoder.dk
200 yes 535 41
https://unoder.dk/category/live/
Live Arkiv - unoder.dk
200 yes 416 41
https://unoder.dk/category/maanedens-mestervaerk/
Månedens Mesterværk Arkiv - unoder.dk
200 yes 509 41
https://unoder.dk/category/om-unoder/
Om Unoder Arkiv - unoder.dk
200 yes 406 41
https://unoder.dk/features/aarets-udenlandske-udgivelser-i-202/
Årets udenlandske udgivelser i 2025 - unoder.dk
200 yes 1471 41
https://unoder.dk/features/blackstar-10-aars-tilbageblik/
Blackstar - 10 års tilbageblik - unoder.dk
200 yes 3974 41
https://unoder.dk/live/at-spille-er-at-doe-med-stil/
At spille er at dø med stil - unoder.dk
200 yes 1753 41
https://unoder.dk/anmeldelser/blodet-i-aarene-loeber-som-heste/
Blodet i årene løber som heste - unoder.dk
200 yes 1719 39
https://unoder.dk/anmeldelser/decorate-decorate-swerve-of-atoms/
Decorate. Decorate. - Swerve Of Atoms - unoder.dk
200 yes 1380 39
https://unoder.dk/author/jon/
Jon Kiellberg, skribent på unoder.dk
200 yes 721 31
https://unoder.dk/features/aarets-danske-udgivelser/
ÅRETS DANSKE UDGIVELSER - unoder.dk
200 yes 832 15
https://unoder.dk/maanedens-mestervaerk/manisk-megalomanisk-mestervaerk/
Manisk megalomanisk mesterværk - unoder.dk
200 yes 1577 10
https://unoder.dk/author/redaktion/
Redaktion, skribent på unoder.dk
200 yes 416 7
https://unoder.dk/maanedens-mestervaerk/den-store-musikalske-isbryder-fylder-rundt/
Den store musikalske isbryder fylder rundt - unoder.dk
200 yes 1537 10
https://unoder.dk/maanedens-mestervaerk/godspeed-into-new-wave/
Godspeed into New Wave - unoder.dk
200 yes 1403 10
https://unoder.dk/author/admin/
Rune Hausner, skribent på unoder.dk
200 yes 415 5
https://unoder.dk/tag/love-shop/
Love Shop Arkiv - unoder.dk
200 yes 502 6
https://unoder.dk/om-unoder/unoder-er-landet/
Unoder er landet - unoder.dk
200 yes 701 5
https://unoder.dk/tag/jens-unmack/
Jens Unmack Arkiv - unoder.dk
200 yes 452 4
https://unoder.dk/tag/decorate-decorate/
Decorate. Decorate. Arkiv - unoder.dk
200 yes 448 4
https://unoder.dk/tag/henrik-olesen/
Henrik Olesen Arkiv - unoder.dk
200 yes 403 2
https://unoder.dk/tag/aarets-album/
Årets album Arkiv - unoder.dk
200 yes 457 4
https://unoder.dk/tag/david-bowie/
David Bowie Arkiv - unoder.dk
200 yes 406 2
https://unoder.dk/tag/mavis-staples/
Mavis Staples Arkiv - unoder.dk
200 yes 407 2
https://unoder.dk/tag/pulp/
Pulp Arkiv - unoder.dk
200 yes 405 2
https://unoder.dk/tag/rosalia/
Rosalía Arkiv - unoder.dk
200 yes 405 2
https://unoder.dk/tag/suede/
Suede Arkiv - unoder.dk
200 yes 405 2
https://unoder.dk/aarets-danske-udgivelser/
ÅRETS DANSKE UDGIVELSER - unoder.dk
200 yes 832 2
https://unoder.dk/tag/malk-de-koijn/
Malk de Koijn Arkiv - unoder.dk
200 yes 411 3
https://unoder.dk/tag/per-vers/
Per Vers Arkiv - unoder.dk
200 yes 409 3
https://unoder.dk/tag/peter-sommer/
Peter Sommer Arkiv - unoder.dk
200 yes 409 3
https://unoder.dk/tag/smashing-pumpkins/
Smashing Pumpkins Arkiv - unoder.dk
200 yes 396 2
https://unoder.dk/tag/kliche/
Kliché Arkiv - unoder.dk
200 yes 401 2
https://unoder.dk/tag/spleen-united/
Spleen United Arkiv - unoder.dk
200 yes 399 2
https://unoder.dk/blodet-i-aarene-loeber-som-heste/
Blodet i årene løber som heste - unoder.dk
200 yes 1719 2
https://unoder.dk/cookiepolitik-eu/
Cookiepolitik (EU) - unoder.dk
200 yes 1578 0
https://unoder.dk/om-unoder/
Om UNODER - unoder.dk
200 yes 353 0
https://unoder.dk/privacy-policy/
Privacy Policy - unoder.dk
200 yes 972 0

Audit your own site — free

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

Scan your site →