← ClaudeAtlas

vibe.seo-checklistlisted

SEO gotchas for web development — easy-to-miss items that hurt search ranking. Covers meta tags, Open Graph, structured data (JSON-LD), sitemap, robots.txt, canonical URLs, and Naver/Google-specific requirements. Use when building or reviewing any public-facing web page, landing page, or marketing site. Must use this skill when user mentions SEO, search ranking, meta tags, or when deploying a web app that needs to be discoverable.
su-record/vibe · ★ 0 · AI & Automation · score 78
Install: claude install-skill su-record/vibe
# SEO Checklist ## Pre-check (K1) > Is this a public-facing web page that needs search visibility? Internal tools, admin panels, and authenticated-only pages don't need SEO optimization. ## Easy-to-Miss Gotchas ### Meta & Social | Gotcha | Why It Hurts | Fix | |--------|-------------|-----| | Missing `<link rel="canonical">` | Duplicate content penalty from URL variants | Set canonical on every page, including paginated | | OG image wrong size | Cropped/pixelated on social share | Must be exactly **1200x630px** | | Same title/description on all pages | Google treats as duplicate content | Unique title (50-60 chars) + description (150-160 chars) per page | | Missing `og:type` | Defaults to "website" for articles | Set `article` for posts, `product` for products | ### Technical | Gotcha | Why It Hurts | Fix | |--------|-------------|-----| | `robots.txt` blocks important pages | Pages not indexed | `Allow: /` for public, only block `/api/`, `/admin/` | | No sitemap or stale sitemap | Crawler misses new pages | Auto-generate, include `<lastmod>` with real dates | | `noindex` left in production | Entire site invisible | Verify `<meta name="robots">` in production build | | Images without `width`/`height` | CLS layout shift penalty | Always set dimensions + `loading="lazy"` for below-fold | ### Core Web Vitals | Metric | Target | Common Miss | |--------|--------|-------------| | LCP | ≤2.5s | Hero image not preloaded — add `<link rel="preload">` | | INP | ≤200ms | Heavy J