skills/seo/on-page/description/SKILL.md
When the user wants to optimize the meta description or meta tag description. Also use when the user mentions "meta description," "meta desc," "page description," "SEO description," "search snippet," "SERP description," "description tag," "snippet for search," "meta description length," "rewrite meta description," or "description not showing." For title tag, use title-tag. For hreflang, robots, viewport, use page-metadata.
npx skillsauth add kostja94/marketing-skills meta-descriptionInstall 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.
Guides optimization of the meta description tag for search engines and SERP display.
When invoking: On first use, if helpful, open with 1–2 sentences on what this skill covers and why it matters, then provide the main output. On subsequent use or when the user asks to skip, go directly to the main output.
Google truncates by pixel width (~920px desktop, ~680px mobile), not character count. Character limits are approximate—CJK chars are wider (~2× Latin), so fewer fit in the same pixels.
| Script / Language | Meta description (chars) | Notes | |-------------------|--------------------------|-------| | Latin (English, Spanish, French, etc.) | 150–160 | Desktop ~158; mobile ~120 | | CJK (Chinese, Japanese, Korean) | 75–100 | Full-width chars; 70–80 conservative; 90–100 on some locales/fonts; use pixel checker when available | | Cyrillic (Russian, etc.) | 140–155 | Slightly wider than Latin | | Arabic, Hebrew | 70–90 | RTL; variable width |
Pixel tools: Use a pixel-accurate meta tag checker for CJK—font and locale affect display; character counts vary by source (65–80 to 90–120 in practice).
Multilingual: Use locale-specific limits; localize, don't just translate. See localization-strategy, translation.
Check for project context first: If .claude/project-context.md or .cursor/project-context.md exists, read it for brand voice and target keywords.
Identify:
| Item | Guideline | |------|-----------| | Length | Per language (see table above); ~150 chars sweet spot for Latin; truncates beyond pixel limit | | Unique | One per page; no duplicate descriptions | | Intent | Answer "why should I click?"; match search intent | | CTA | Include clear call-to-action when relevant | | Keyword | Naturally include target keyword | | Content | Include author, date, price where relevant | | Impact | Does not affect ranking; well-written descriptions improve CTR 5–10% |
For pages with low CTR despite good position, use google-search-console to identify opportunities. Optimize meta description for pages with CTR gap.
testing
When the user wants to create, audit, or optimize sitemap.xml. Also use when the user mentions "sitemap," "sitemap.xml," "sitemap index," "lastmod," "changefreq," "priority," "URL discovery," "URL discovery for search engines," "single source of truth," "URL config," "unify sitemap IndexNow," or "reduce duplicate maintenance." For IndexNow, use indexnow.
development
When the user wants to configure, audit, or optimize robots.txt. Also use when the user mentions "robots.txt," "crawler rules," "block crawlers," "AI crawlers," "GPTBot," "allow/disallow," "disallow path," "crawl directives," "user-agent," "block Googlebot," "fix robots.txt," "robots.txt blocking," or "search engine crawling." For indexing, use indexing.
testing
When the user wants to create SEO pages at scale using templates and data—including AI-assisted, grounded copy for per-URL differentiation (vs rigid mail-merge templates). Also use when the user mentions "programmatic SEO," "programmatic SEO pages," "template pages," "scale content," "location pages," "city pages," "comparison pages at scale," "X vs Y pages," "integration pages," "pages from data," "automated landing pages," or "programmatic landing pages." Uses a playbook matrix aligned to skills under skills/pages. For user-facing template galleries or marketplaces (browse → use), use template-page-generator.
data-ai
When the user wants to add or optimize Twitter Card metadata for X (Twitter) link previews. Also use when the user mentions "Twitter Card," "twitter:card," "twitter:image," "twitter:title," "X preview," or "tweet preview." For Facebook/LinkedIn previews, use open-graph.