Internal Linking

Internal linking er en af de mest undervurderede SEO-teknikker. Lær at bruge interne links strategisk til at styrke dine vigtigste sider og forbedre rankings.

Bedre Rankings
Link Equity Flow
Bedre Crawlability

Hvad er Internal Linking?

Internal linking er links fra en side på dit website til en anden side på samme website. Det er anderledes end external links (til andre websites) eller backlinks (fra andre websites til dig).

Hvorfor er Internal Linking Vigtigt?

  • Link Equity Distribution: Fordeler "link juice" til vigtige sider
  • Crawlability: Hjælper søgemaskiner med at finde og indexere alle sider
  • Site Architecture: Etablerer hierarki og relaterede emner
  • User Experience: Hjælper besøgende med at navigere og finde relevant indhold
  • Dwell Time: Holder brugere længere på sitet

Link Equity (PageRank) Flow

Hver side på dit website har en bestemt mængde "link equity" (PageRank). Når du linker til andre sider, deler du denne værdi mellem dem:

Homepage
100% equity
deler mellem 5 links
Produkter
20% hver
Blog
20% hver
Om
20% hver
Kontakt
20% hver
FAQ
20% hver
Vigtigt: Jo flere interne links en side har, jo mere link equity får den. Brug dette strategisk til at styrke dine vigtigste sider.

Internal Linking Strategier

1Hub & Spoke Model (Siloing)

Opret "pillar pages" for hovedemner og link til relaterede "cluster pages":

📄 Pillar: /seo-guide (hovedside)
→ /seo-guide/on-page (cluster)
→ /seo-guide/off-page (cluster)
→ /seo-guide/technical (cluster)
→ /seo-guide/content (cluster)

Pillar linker til alle clusters, og clusters linker tilbage til pillar og til hinanden.

2Contextual Links i Indhold

De mest værdifulde interne links er kontekstuelle links i brødteksten:

"Når du optimerer dit website for søgemaskiner, er keyword research det første skridt. Efter du har identificeret dine keywords, skal du fokusere på on-page SEO for at sikre at hver side er optimeret."

✓ Hvorfor dette virker:
  • • Links er relevante for den omgivende tekst
  • • Anchor text er naturlig og beskrivende
  • • Hjælper både brugere og søgemaskiner

3Navigational Linking

Strukturel navigation hjælper med at etablere site hierarki:

Main Navigation:

Topmenu med links til hovedsektioner. Disse links er på hver side og har høj værdi.

Breadcrumbs:

Viser hierarki: Hjem → Kategori → Underkategori → Side

Footer Links:

Ekstra links til vigtige sider, men lavere værdi end content links

Related Posts/Products:

Algoritmisk genererede links til relateret indhold

4Deep Linking Strategy

Link ikke kun til top-level pages, men også til dybtliggende indhold:

❌ Dårlig strategi
Homepage → Produkter
Homepage → Blog
Homepage → Om
Dybt indhold får ingen links
✅ God strategi
Homepage → Specific Product
Blog Post → Deep Article
Category → Subcategory → Item
Alle sider får link equity

Anchor Text Best Practices

Anchor text (den synlige, klikbare tekst) er vigtig for SEO. Den fortæller søgemaskiner hvad den linkede side handler om.

✅ Gode Anchor Texts

Exact Match (mådehold):

"Læs vores SEO guide til begyndere"

Partial Match:

"Se vores guide til SEO optimering"

Branded:

"Besøg URLex.dk for flere tips"

Naturlig/kontekstuel:

"Lær hvordan du optimerer meta tags"

❌ Dårlige Anchor Texts

Generic:

"Klik her" eller "Læs mere"

→ Giver ingen kontekst om destinationen

Over-optimized:

"bedste billige SEO værktøjer online køb nu"

→ Keyword stuffing, unaturlig

URL som anchor:

"https://example.com/produkter/kategori-17/item-4829"

→ Ikke brugervenlig, ingen kontekst

Anchor Text Distribution

Brug en naturlig blanding af anchor text typer for at undgå over-optimization:

40%
Naturlig/kontekstuel
30%
Branded
20%
Partial match
10%
Exact match

Implementation i Next.js

Related Posts Component

// components/RelatedPosts.tsx
import Link from 'next/link'

interface Post {
  slug: string
  title: string
  excerpt: string
}

export function RelatedPosts({ posts }: { posts: Post[] }) {
  return (
    <div className="mt-12 border-t pt-8">
      <h2 className="text-2xl font-bold mb-6">Relaterede Artikler</h2>
      <div className="grid md:grid-cols-3 gap-6">
        {posts.map(post => (
          <Link
            key={post.slug}
            href={`/blog/${post.slug}`}
            className="block p-5 border rounded-lg hover:shadow-lg"
          >
            <h3 className="font-semibold mb-2">{post.title}</h3>
            <p className="text-sm text-gray-600">{post.excerpt}</p>
            <span className="text-blue-600 text-sm mt-2 inline-block">
              Læs mere →
            </span>
          </Link>
        ))}
      </div>
    </div>
  )
}

Contextual Links i MDX/Content

// lib/internalLinks.ts
export const internalLinks = {
  'SEO': '/seo-guide',
  'keyword research': '/seo-guide/keyword-research',
  'on-page SEO': '/seo-guide/on-page',
  'Core Web Vitals': '/seo-teknisk/core-web-vitals',
  'schema markup': '/schema',
  // ... flere links
}

// Auto-link component
export function AutoLink({ children }: { children: string }) {
  const words = children.split(' ')

  return (
    <>
      {words.map((word, i) => {
        const link = internalLinks[word.toLowerCase()]
        return link ? (
          <Link key={i} href={link} className="text-blue-600 underline">
            {word}
          </Link>
        ) : (
          word + ' '
        )
      })}
    </>
  )
}

Breadcrumb Navigation

// components/Breadcrumb.tsx
import Link from 'next/link'

interface BreadcrumbItem {
  name: string
  url?: string
}

export function Breadcrumb({ items }: { items: BreadcrumbItem[] }) {
  return (
    <nav aria-label="Breadcrumb" className="mb-6">
      <ol className="flex items-center gap-2 text-sm">
        {items.map((item, index) => (
          <li key={index} className="flex items-center gap-2">
            {index > 0 && <span className="text-gray-400">/</span>}
            {item.url ? (
              <Link
                href={item.url}
                className="text-blue-600 hover:underline"
              >
                {item.name}
              </Link>
            ) : (
              <span className="text-gray-700">{item.name}</span>
            )}
          </li>
        ))}
      </ol>
    </nav>
  )
}

// Usage
<Breadcrumb items={[
  { name: 'Hjem', url: '/' },
  { name: 'Blog', url: '/blog' },
  { name: 'SEO Tips', url: '/blog/seo' },
  { name: 'Artikel Titel' } // Current page, no URL
]} />

Almindelige Fejl

For mange links på en side

Hver side deler sin link equity mellem alle udgående links. Mange links = mindre værdi per link.

Anbefaling: Max 100-150 interne links per side (ekskl. navigation)

Orphan pages (forældreløse sider)

Sider uden interne links til dem bliver svære at crawle og får ingen link equity.

Løsning: Tjek med Screaming Frog eller Google Search Console for orphan pages

Links til 404 eller redirect sider

Broken internal links spænder link equity og giver dårlig UX.

Løsning: Audit regelmæssigt og fix broken links

Ignorer nofollow på interne links

Brug næsten aldrig rel="nofollow" på interne links, da det blokerer link equity flow.

Undtagelse: Login, registrering, eller andre utility pages

Samme anchor text til forskellige sider

Brug unikke, beskrivende anchor texts for hver destination.

Dårligt: "Læs mere" til 10 forskellige artikler
Godt: "Læs om keyword research", "Læs om link building", etc.

Internal Linking Checklist

Nyttige Tools

Screaming Frog SEO Spider

Crawl dit website og analyser intern link struktur, orphan pages, og broken links

screamingfrog.co.uk →

Ahrefs Site Audit

Omfattende internal link analysis med recommendations

ahrefs.com/site-audit →

Google Search Console

Check "Links" rapport for at se internal link distribution

search.google.com/search-console →

LinkWhisper (WordPress)

AI-powered internal linking suggestions for WordPress sites

linkwhisper.com →

Relaterede Emner