seo-on-page-optimization
Implements guild-plan.md §6.2 (seo · on-page-optimization) under §6.4 commercial principles: hypothesis-first (what does the SERP reward this page for?), success = measurable (rank, CTR, conversion), evidence = before/after with cited data, not cargo-cult tweaks.
What you do
Take one page and one target cluster, then produce a concrete set of edits that tighten the match between page and SERP intent. Small, specific changes beat generic "add more keywords".
- Start from the target cluster (from
seo-keyword-research or the brief). If there's no target, stop and get one.
- Inspect the SERP: intent, content format that ranks, featured snippet if present, SERP features.
- Optimize in this order: title tag, meta description, H1, URL slug (only if low-risk), H2 structure, intro 150 words, schema, internal links, image alt, content depth against competing pages.
- Title tag: primary keyword + differentiator, ≤60 chars visible. Meta: promise + proof + CTA, ≤155 chars.
- Schema: pick the type that matches content (Article, Product, FAQ, HowTo, Breadcrumb). One type, implemented fully — not five half-done.
- Produce a before/after diff plus a checklist the implementer can tick through.
Output shape
Markdown with:
- Page + target cluster — URL and target keywords.
- SERP read — what ranks, what format, what features to win.
- Before / after — side-by-side for title, meta, H1, URL (if changing), intro.
- Schema block — JSON-LD snippet ready to paste.
- Internal link adds — source URL → anchor text → destination URL.
- Content-depth notes — sections to add/expand, competing-page word counts cited.
- Checklist — ticked list for QA after ship.
Store at .guild/runs/<run-id>/seo/onpage-<slug>.md if tracked.
Anti-patterns
- Keyword stuffing — unnatural repetition of the target in H1/H2/intro.
- Meta-description ignored (or generated by the CMS) — the CTR on the SERP is left on the table.
- Schema cargo-cult — pasting every schema type because "more is better".
- Changing the URL slug on a ranking page without a 301 — self-inflicted traffic loss.
- Rewriting the entire page when the title + intro + schema would move the needle alone.
- Optimizing without a target keyword cluster — you're guessing.
Handoff
Return the optimization diff to the invoking seo specialist. If content depth gaps require new sections, hand off to copywriter-long-form or technical-writer-user-manual. If internal-link additions touch many pages, escalate to seo-internal-linking. If Core Web Vitals or crawl issues surface, hand to seo-technical-audit. This skill does not dispatch.
Source: lookatitude/guild — distributed by TomeVault.
1---2name: lookatitude-guild-seo-on-page-optimization3description: seo-on-page-optimization4---56# seo-on-page-optimization78Implements `guild-plan.md §6.2` (seo · on-page-optimization) under `§6.4` commercial principles: hypothesis-first (what does the SERP reward this page for?), success = measurable (rank, CTR, conversion), evidence = before/after with cited data, not cargo-cult tweaks.910## What you do1112Take one page and one target cluster, then produce a concrete set of edits that tighten the match between page and SERP intent. Small, specific changes beat generic "add more keywords".1314- Start from the target cluster (from `seo-keyword-research` or the brief). If there's no target, stop and get one.15- Inspect the SERP: intent, content format that ranks, featured snippet if present, SERP features.16- Optimize in this order: title tag, meta description, H1, URL slug (only if low-risk), H2 structure, intro 150 words, schema, internal links, image alt, content depth against competing pages.17- Title tag: primary keyword + differentiator, ≤60 chars visible. Meta: promise + proof + CTA, ≤155 chars.18- Schema: pick the type that matches content (Article, Product, FAQ, HowTo, Breadcrumb). One type, implemented fully — not five half-done.19- Produce a before/after diff plus a checklist the implementer can tick through.2021## Output shape2223Markdown with:24251. **Page + target cluster** — URL and target keywords.262. **SERP read** — what ranks, what format, what features to win.273. **Before / after** — side-by-side for title, meta, H1, URL (if changing), intro.284. **Schema block** — JSON-LD snippet ready to paste.295. **Internal link adds** — source URL → anchor text → destination URL.306. **Content-depth notes** — sections to add/expand, competing-page word counts cited.317. **Checklist** — ticked list for QA after ship.3233Store at `.guild/runs/<run-id>/seo/onpage-<slug>.md` if tracked.3435## Anti-patterns3637- Keyword stuffing — unnatural repetition of the target in H1/H2/intro.38- Meta-description ignored (or generated by the CMS) — the CTR on the SERP is left on the table.39- Schema cargo-cult — pasting every schema type because "more is better".40- Changing the URL slug on a ranking page without a 301 — self-inflicted traffic loss.41- Rewriting the entire page when the title + intro + schema would move the needle alone.42- Optimizing without a target keyword cluster — you're guessing.4344## Handoff4546Return the optimization diff to the invoking `seo` specialist. If content depth gaps require new sections, hand off to `copywriter-long-form` or `technical-writer-user-manual`. If internal-link additions touch many pages, escalate to `seo-internal-linking`. If Core Web Vitals or crawl issues surface, hand to `seo-technical-audit`. This skill does not dispatch.4748---49> Source: [lookatitude/guild](https://github.com/lookatitude/guild) — distributed by [TomeVault](https://tomevault.io).50<!-- tomevault:4.0:skill_md:2026-06-16 -->