plugins/skjalden/skills/seo-fundamentals/SKILL.md
SEO fundamentals — E-E-A-T quality signals, Core Web Vitals, technical SEO, on-page optimization, keyword strategy, meta tag rules, structured data, and the SEO Health Index scoring model (0-100 weighted composite).
npx skillsauth add hjemmesidekongen/ai seo-fundamentalsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Not a ranking factor — a quality evaluation framework. Experience: first-hand involvement, original examples. Expertise: subject competence, depth, accuracy. Authoritativeness: recognition by others, citations, links. Trustworthiness: HTTPS, transparency, accuracy. Pages competing in the same space differentiate on trust and experience, not keywords.
LCP < 2.5s (loading), INP < 200ms (interactivity), CLS < 0.1 (visual stability). CWV rarely override poor content — they matter when content quality is comparable. Failing CWV holds back otherwise good pages.
Crawl control: XML sitemaps (only canonical, indexable URLs), robots.txt (verify no accidental blocking), canonical tags (self-referencing, HTTPS consistent), clean URLs. Performance: mobile-first, semantic HTML, lazy loading, CDN. Key pages within 3 clicks. No orphaned URLs.
Title tags: 50-60 chars, keyword in first 30 chars, unique per page. Meta descriptions: 150-160 chars, action verb + benefit + CTA. URLs: under 60 chars, hyphens, lowercase, keyword early. H1: one per page, primary subject. Images: descriptive filenames, accurate alt text, compression. Internal links: 2-3 per page, descriptive anchors.
Primary keyword: 0.5-1.5% density. 3-5 secondary keywords. 20-30 LSI keywords for semantic coverage. Keyword in first 100 words and 2-3 H2s. Question keywords for People Also Ask. Never stuff — natural placement only.
Weighted 0-100: Crawlability 30%, Technical 25%, On-Page 20%, Content/E-E-A-T 15%, Authority 10%. Start each category at 100, subtract by severity: Critical -15 to -30, High -10, Medium -5, Low -1 to -3. Bands: 90-100 Excellent, 75-89 Good, 60-74 Fair, 40-59 Poor, <40 Critical.
See references/process.md for structured data types, audit checklist, findings template, meta tag formulas, and prioritization framework.
development
Creates a brand from scratch through market research and interactive sparring. Runs competitive research via Perplexity, then guides the user through positioning, audience, voice, values, and content pillars. Produces the full brand guideline set at .ai/brand/{name}/. Use when building a new brand, defining brand strategy for a product, or when /våbenskjold:create is invoked.
testing
Loads brand guidelines from .ai/brand/{name}/ and makes them available to the current context. Progressive disclosure: L1 confirms brand exists, L2 loads summary, L3 loads specific files on demand. Use when a downstream skill or user needs brand context, or when /våbenskjold:apply is invoked.
documentation
Guided reinvention of an existing brand guideline. Loads current brand from .ai/brand/{name}/, identifies what to keep vs change, and walks the user through targeted evolution. Preserves brand equity while updating positioning, voice, or values. Use when refreshing a brand or when /våbenskjold:evolve is invoked.
development
Codifies an existing brand from materials, samples, and references. Analyzes provided content to extract voice patterns, values, and positioning. Produces the same guideline format as brand-strategy. Use when a brand already exists but isn't documented, or when /våbenskjold:audit is invoked.