Raport SEO: thansen.dk
Wygenerowano 26 kwietnia 2026 · 44 wykrytych problemów · 9.0s
Firmy usługowe muszą dominować w lokalnych wynikach wyszukiwania dzięki spójnym danym NAP, opiniom i lokalnym sygnałom zaufania.
Rozbicie punktacji
Średni wynik dla branży Lokalny biznes: 54
Prognoza wyniku
Szacowany wzrost wyniku po wdrożeniu zaleceń z niniejszego raportu
Gotowy na poprawę SEO?
Rozpocznij bezpłatny okres próbny i zobacz, jak poprawić swój wynik.
Zestawienie modułów
Wszystkie wyniki (41)
Krytyczny (7)
- highheaders
Missing strict-transport-security
HSTS header is missing. The site may be vulnerable to downgrade attacks.
Add Strict-Transport-Security header with max-age of at least 31536000
- highsitemap
Missing sitemap.xml
No sitemap.xml found at the root
Create a sitemap.xml to help search engines discover all pages
- highcontent
No H1 tag found
The page has no H1 heading
Add exactly one H1 tag with the primary keyword
- highcontent
Images missing alt text
16 image(s) have no alt attribute
Add descriptive alt text to all images for accessibility and SEO
- highaccessibility
16 images missing alt attribute
Images without alt text are inaccessible to screen readers
Add descriptive alt text to all informational images, or alt="" for decorative ones
- highaccessibility
4 buttons without accessible name
Buttons with no text, aria-label, or title are invisible to screen readers
Add visible text or aria-label to all buttons
- highpage experience
Intrusive interstitials detected
Found 16 potential popup/overlay elements
Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties
Średni (18)
- mediumcookies
2 cookies missing Secure flag
Cookies without Secure flag can be sent over unencrypted HTTP connections
Add the Secure attribute to all cookies to prevent transmission over HTTP
- mediumheaders
Missing x-content-type-options
X-Content-Type-Options is missing. MIME-sniffing attacks are possible.
Add X-Content-Type-Options: nosniff header
- mediumheaders
Missing x-frame-options
X-Frame-Options is missing. The site may be vulnerable to clickjacking.
Add X-Frame-Options: DENY or SAMEORIGIN header
- mediumssl
HTTP does not redirect to HTTPS
Port 80 does not redirect to HTTPS
Set up a 301 redirect from HTTP to HTTPS
- mediummeta
Missing canonical URL
No canonical link tag found
Add a canonical URL to prevent duplicate content issues
- mediumtechnology
Outdated jQuery version
jQuery 1.9 detected (current: 3.x)
Upgrade to jQuery 3.x or consider removing jQuery dependency
- mediumtechnology
Render-blocking scripts
7 scripts load synchronously without async/defer
Add async or defer to non-critical scripts to improve page load speed
- mediumtechnology
Mixed content detected
2 resources loaded over HTTP on an HTTPS page
Update all resource URLs to use HTTPS
- mediumcontent
Thin content
Page has only 139 words (recommended: 300+)
Add more meaningful content — aim for at least 300 words on key pages
- mediumcontent
Very low text-to-HTML ratio
Text/HTML ratio is 1% (recommended: >5%)
Increase meaningful text content relative to HTML markup
- mediumcontent
External links without noopener
2 external links with target="_blank" lack rel="noopener"
Add rel="noopener noreferrer" to all target="_blank" links
- mediumcontent
Low keyword relevance
Only 20% of title keywords appear in body text
Ensure the page content includes the keywords from the title
- mediumaccessibility
No skip navigation link
No skip-to-content link at the top of the page
Add a visually hidden skip link as the first focusable element
- mediumrate limits
No rate limiting detected
10 rapid requests all succeeded without any rate-limit headers or 429 responses. The site may be vulnerable to abuse.
Implement rate limiting (e.g., 429 Too Many Requests) to protect against brute-force attacks
- mediumsocial checker
Missing Twitter Card
No twitter:card meta tag — Twitter/X will use default preview
Add twitter:card meta tag (e.g., "summary_large_image")
- mediumbrand checker
Inconsistent brand name
Multiple brand names detected: leveret eller gratis, www.thansen.dk, thansen
Use the same brand name consistently across title, og:site_name, and Organization schema
- mediumcrawl budget
No sitemap.xml found
sitemap.xml returned HTTP 404
Create a sitemap.xml to help search engines discover all pages
- mediumindexing checker
Missing canonical URL
No canonical link tag found — search engines may index duplicate versions
Add a self-referencing canonical URL to prevent duplicate content issues
Niski (16)
- lowcookies
6 cookies missing HttpOnly flag
Cookies without HttpOnly can be accessed by JavaScript, increasing XSS risk
Add HttpOnly to session and authentication cookies
- lowcookies
2 cookies missing SameSite attribute
Missing SameSite defaults to Lax in modern browsers but should be explicit
Set SameSite=Strict or SameSite=Lax on all cookies
- lowheaders
Missing referrer-policy
Referrer-Policy is not set. Full URLs may leak to third parties.
Add Referrer-Policy: strict-origin-when-cross-origin
- lowheaders
Missing permissions-policy
Permissions-Policy is missing.
Add Permissions-Policy to restrict browser feature access
- lowheaders
Content-Type missing charset
Content-Type header does not specify charset
Add charset=utf-8 to Content-Type header
- lowmeta
Missing Twitter Card
No twitter:card meta tag
Add twitter:card meta tag for Twitter sharing
- lowmeta
Missing og:url
Open Graph URL is not set
Add og:url meta tag matching the canonical URL
- lowstructured data
Missing WebSite schema
No WebSite structured data found
Add WebSite schema with SearchAction for sitelinks search box
- lowtechnology
Many inline scripts
17 inline <script> blocks found
Move inline scripts to external files for caching and CSP compliance
- lowaccessibility
Missing navigation landmark
No <nav> element or role="navigation" found
Wrap navigation links in a <nav> element
- lowrate limits
No WAF detected
No Web Application Firewall (Cloudflare, AWS, Akamai, Vercel, Sucuri, Fastly) was detected in response headers.
Consider using a WAF to protect against common web attacks (XSS, SQL injection, DDoS)
- lowrate limits
No bot protection detected
No CAPTCHA, challenge page, or bot detection was triggered during rapid requests.
Consider implementing bot protection (e.g., Cloudflare Turnstile, hCaptcha) for sensitive endpoints
- lownews mentions
No press page on site
Found 2 external mentions but no dedicated press page
Create a /press or /news section to aggregate and amplify media coverage
- lowbrand checker
No WebSite schema
No WebSite JSON-LD found
Add WebSite structured data for sitelinks search box in Google
- lowbrand checker
No web app manifest
No manifest.json linked — PWA features unavailable
Add a web app manifest for installability and brand customization
- lowpage experience
No lazy loading on images
19 images without lazy loading
Add loading="lazy" to below-the-fold images for faster initial page load
AI Fix Prompt
Skopiuj ten monit do ChatGPT lub Claude, aby otrzymać instrukcje naprawy krok po kroku
Fix all SEO issues found in the audit of thansen.dk.
Prioritize high-severity issues first, then medium. For each fix, make the actual code change — don't just describe what to do.
```json
{
"domain": "thansen.dk",
"scores": {
"overall": 72,
"performance": 0,
"seo": 73,
"accessibility": 59,
"bestPractices": 86,
"security": 74
},
"findings": [
{
"module": "cookies",
"severity": "medium",
"title": "2 cookies missing Secure flag",
"description": "Cookies without Secure flag can be sent over unencrypted HTTP connections",
"recommendation": "Add the Secure attribute to all cookies to prevent transmission over HTTP"
},
{
"module": "headers",
"severity": "high",
"title": "Missing strict-transport-security",
"description": "HSTS header is missing. The site may be vulnerable to downgrade attacks.",
"recommendation": "Add Strict-Transport-Security header with max-age of at least 31536000"
},
{
"module": "headers",
"severity": "medium",
"title": "Missing x-content-type-options",
"description": "X-Content-Type-Options is missing. MIME-sniffing attacks are possible.",
"recommendation": "Add X-Content-Type-Options: nosniff header"
},
{
"module": "headers",
"severity": "medium",
"title": "Missing x-frame-options",
"description": "X-Frame-Options is missing. The site may be vulnerable to clickjacking.",
"recommendation": "Add X-Frame-Options: DENY or SAMEORIGIN header"
},
{
"module": "ssl",
"severity": "medium",
"title": "HTTP does not redirect to HTTPS",
"description": "Port 80 does not redirect to HTTPS",
"recommendation": "Set up a 301 redirect from HTTP to HTTPS"
},
{
"module": "meta",
"severity": "medium",
"title": "Missing canonical URL",
"description": "No canonical link tag found",
"recommendation": "Add a canonical URL to prevent duplicate content issues"
},
{
"module": "sitemap",
"severity": "high",
"title": "Missing sitemap.xml",
"description": "No sitemap.xml found at the root",
"recommendation": "Create a sitemap.xml to help search engines discover all pages"
},
{
"module": "technology",
"severity": "medium",
"title": "Outdated jQuery version",
"description": "jQuery 1.9 detected (current: 3.x)",
"recommendation": "Upgrade to jQuery 3.x or consider removing jQuery dependency"
},
{
"module": "technology",
"severity": "medium",
"title": "Render-blocking scripts",
"description": "7 scripts load synchronously without async/defer",
"recommendation": "Add async or defer to non-critical scripts to improve page load speed"
},
{
"module": "technology",
"severity": "medium",
"title": "Mixed content detected",
"description": "2 resources loaded over HTTP on an HTTPS page",
"recommendation": "Update all resource URLs to use HTTPS"
},
{
"module": "content",
"severity": "high",
"title": "No H1 tag found",
"description": "The page has no H1 heading",
"recommendation": "Add exactly one H1 tag with the primary keyword"
},
{
"module": "content",
"severity": "medium",
"title": "Thin content",
"description": "Page has only 139 words (recommended: 300+)",
"recommendation": "Add more meaningful content — aim for at least 300 words on key pages"
},
{
"module": "content",
"severity": "medium",
"title": "Very low text-to-HTML ratio",
"description": "Text/HTML ratio is 1% (recommended: >5%)",
"recommendation": "Increase meaningful text content relative to HTML markup"
},
{
"module": "content",
"severity": "high",
"title": "Images missing alt text",
"description": "16 image(s) have no alt attribute",
"recommendation": "Add descriptive alt text to all images for accessibility and SEO"
},
{
"module": "content",
"severity": "medium",
"title": "External links without noopener",
"description": "2 external links with target=\"_blank\" lack rel=\"noopener\"",
"recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
},
{
"module": "content",
"severity": "medium",
"title": "Low keyword relevance",
"description": "Only 20% of title keywords appear in body text",
"recommendation": "Ensure the page content includes the keywords from the title"
},
{
"module": "accessibility",
"severity": "high",
"title": "16 images missing alt attribute",
"description": "Images without alt text are inaccessible to screen readers",
"recommendation": "Add descriptive alt text to all informational images, or alt=\"\" for decorative ones"
},
{
"module": "accessibility",
"severity": "medium",
"title": "No skip navigation link",
"description": "No skip-to-content link at the top of the page",
"recommendation": "Add a visually hidden skip link as the first focusable element"
},
{
"module": "accessibility",
"severity": "high",
"title": "4 buttons without accessible name",
"description": "Buttons with no text, aria-label, or title are invisible to screen readers",
"recommendation": "Add visible text or aria-label to all buttons"
},
{
"module": "rate-limits",
"severity": "medium",
"title": "No rate limiting detected",
"description": "10 rapid requests all succeeded without any rate-limit headers or 429 responses. The site may be vulnerable to abuse.",
"recommendation": "Implement rate limiting (e.g., 429 Too Many Requests) to protect against brute-force attacks"
},
{
"module": "social-checker",
"severity": "medium",
"title": "Missing Twitter Card",
"description": "No twitter:card meta tag — Twitter/X will use default preview",
"recommendation": "Add twitter:card meta tag (e.g., \"summary_large_image\")"
},
{
"module": "brand-checker",
"severity": "medium",
"title": "Inconsistent brand name",
"description": "Multiple brand names detected: leveret eller gratis, www.thansen.dk, thansen",
"recommendation": "Use the same brand name consistently across title, og:site_name, and Organization schema"
},
{
"module": "crawl-budget",
"severity": "medium",
"title": "No sitemap.xml found",
"description": "sitemap.xml returned HTTP 404",
"recommendation": "Create a sitemap.xml to help search engines discover all pages"
},
{
"module": "page-experience",
"severity": "high",
"title": "Intrusive interstitials detected",
"description": "Found 16 potential popup/overlay elements",
"recommendation": "Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties"
},
{
"module": "indexing-checker",
"severity": "medium",
"title": "Missing canonical URL",
"description": "No canonical link tag found — search engines may index duplicate versions",
"recommendation": "Add a self-referencing canonical URL to prevent duplicate content issues"
}
]
}
```Rekomendacje dla Twojej branży
- 1Zoptymalizuj profil Google Moja Firma
- 2Dodaj schemat Service/LocalBusiness
- 3Zintegruj opinie klientów za pomocą schematu Review
- 4Zadbaj o spójne dane teleadresowe NAP na wszystkich podstronach
- 5Załóż profile w lokalnych katalogach firm i branżowych bazach
Lista kontrolna SEO dla branży Lokalny biznes
Wskazówki dla stron typu: Mieszany
- →Zdefiniuj dedykowane strony docelowe dla każdego segmentu odbiorców
- →Zastosuj zróżnicowane strategie meta tagów dla poszczególnych grup stron
- →Podziel mapę witryny według typów publikowanych treści
Kontekst lokalnego SEO
W Danii Google dominuje z ponad 95% udziałem w rynku. Kluczowe jest pozycjonowanie lokalne oraz jakość języka duńskiego.
Użyj Ctrl+P / Cmd+P, aby zapisać raport do pliku PDF