Driver
ApexYard's marketing site has a cluster of secondary SEO gaps — none individually blocking, but together they leave significant SERP-ranking and discoverability signal on the table. Verified by SEO audit at origin/dev 9170ed2 — findings S1, S2a, S2b, S4, S10, S11. These are mostly meta-tag polish and one-time additions; cheap to fix, durable benefit.
Companion to the high-severity tickets (og:image bundle, robots.txt + sitemap, stale counts) — those should land first; this is the medium-priority cleanup pass.
Scope — six related fixes
1. Expand titles to 50-60 chars (S1)
Current:
index.html: "ApexYard - where projects get forged" (36 chars — leaves 14-24 chars of SERP space unused)
architecture.html: "Architecture — ApexYard" (23 chars — same problem, worse)
skills.html: "Skills — ApexYard" (17 chars — half the recommended length)
Suggested:
index.html: "ApexYard — SDLC framework for AI-driven dev teams" (49) or "ApexYard — multi-project ops repo for Claude Code" (49)
architecture.html: "ApexYard Architecture — 5 layers + portfolio model" (50)
skills.html: "ApexYard Skills — 51 slash commands for Claude Code" (51) — couples with the stale-counts ticket
2. Fix meta description lengths (S2a + S2b)
index.html (207 chars) — trim to ≤160 chars. Drop one of the redundant clauses.
architecture.html (225 chars) — trim to ≤160 chars. Mid-sentence cut acceptable.
skills.html (94 chars) — expand to ~150 chars. Add what the skills enable ("workflow gates, audit family, portfolio governance") and the "drop into your Claude Code session" CTA.
3. Add canonical URL to skills.html (S4)
Currently missing. Add:
<link rel="canonical" href="https://<marketing-site>/skills.html">
4. Add favicons (S10)
Currently zero <link rel="icon"> on any page. Browser tabs use the default browser glyph; bookmarks have no icon.
Add to all three pages' <head>:
<link rel="icon" href="/favicon.ico" sizes="any">
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
Generate the three favicon files (favicon.ico, favicon.svg, apple-touch-icon.png 180×180) — could be a stylised "AY" or the apexyard logo mark.
5. Add JSON-LD structured data (S11)
Currently zero JSON-LD blocks across all pages. Search engines can't extract structured signals.
Add to index.html:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "ApexYard",
"applicationCategory": "DeveloperApplication",
"operatingSystem": "Cross-platform",
"url": "https://<marketing-site>/",
"description": "...",
"license": "https://opensource.org/licenses/MIT",
"author": {"@type": "Person", "name": "..."}
}
</script>
Plus Organization schema on index, WebSite schema with search action, and BreadcrumbList on architecture + skills.
6. Complete Twitter cards on skills.html (S9 — partial overlap with og:image ticket)
skills.html currently has zero Twitter card meta tags. Add the equivalents of what index + architecture already have (twitter:card, twitter:url, twitter:title, twitter:description). Once the og:image ticket lands, also add twitter:image here.
Acceptance Criteria
Out of scope
- Content rewriting beyond the count-refresh (that's a separate ticket)
- Performance optimisation (lazy loading, image compression) — that's
/performance-audit territory
- A11y review of the meta-tag changes — would normally be covered by
/accessibility-audit
Refs SEO-audit 2026-05-20T07-00-36Z findings S1, S2a, S2b, S4, S9 (partial), S10, S11 (persisted at projects/apexyard/audits/seo-audit/)
Driver
ApexYard's marketing site has a cluster of secondary SEO gaps — none individually blocking, but together they leave significant SERP-ranking and discoverability signal on the table. Verified by SEO audit at origin/dev
9170ed2— findings S1, S2a, S2b, S4, S10, S11. These are mostly meta-tag polish and one-time additions; cheap to fix, durable benefit.Companion to the high-severity tickets (og:image bundle, robots.txt + sitemap, stale counts) — those should land first; this is the medium-priority cleanup pass.
Scope — six related fixes
1. Expand titles to 50-60 chars (S1)
Current:
index.html: "ApexYard - where projects get forged" (36 chars — leaves 14-24 chars of SERP space unused)architecture.html: "Architecture — ApexYard" (23 chars — same problem, worse)skills.html: "Skills — ApexYard" (17 chars — half the recommended length)Suggested:
index.html:"ApexYard — SDLC framework for AI-driven dev teams"(49) or"ApexYard — multi-project ops repo for Claude Code"(49)architecture.html:"ApexYard Architecture — 5 layers + portfolio model"(50)skills.html:"ApexYard Skills — 51 slash commands for Claude Code"(51) — couples with the stale-counts ticket2. Fix meta description lengths (S2a + S2b)
index.html(207 chars) — trim to ≤160 chars. Drop one of the redundant clauses.architecture.html(225 chars) — trim to ≤160 chars. Mid-sentence cut acceptable.skills.html(94 chars) — expand to ~150 chars. Add what the skills enable ("workflow gates, audit family, portfolio governance") and the "drop into your Claude Code session" CTA.3. Add canonical URL to skills.html (S4)
Currently missing. Add:
4. Add favicons (S10)
Currently zero
<link rel="icon">on any page. Browser tabs use the default browser glyph; bookmarks have no icon.Add to all three pages'
<head>:Generate the three favicon files (favicon.ico, favicon.svg, apple-touch-icon.png 180×180) — could be a stylised "AY" or the apexyard logo mark.
5. Add JSON-LD structured data (S11)
Currently zero JSON-LD blocks across all pages. Search engines can't extract structured signals.
Add to
index.html:Plus
Organizationschema on index,WebSiteschema with search action, andBreadcrumbListon architecture + skills.6. Complete Twitter cards on skills.html (S9 — partial overlap with og:image ticket)
skills.html currently has zero Twitter card meta tags. Add the equivalents of what index + architecture already have (
twitter:card,twitter:url,twitter:title,twitter:description). Once the og:image ticket lands, also addtwitter:imagehere.Acceptance Criteria
<link rel="canonical">og:*tagsOut of scope
/performance-auditterritory/accessibility-auditRefs SEO-audit
2026-05-20T07-00-36Zfindings S1, S2a, S2b, S4, S9 (partial), S10, S11 (persisted atprojects/apexyard/audits/seo-audit/)