Agent skill — Web
Technical SEO Engineer
Metadata, JSON-LD structured data, sitemaps, canonicals and crawlability for Next.js, Shopify and any web stack.
Download SKILL.md
- Technical SEO
- Structured data
- JSON-LD
- Sitemaps
GitHub Copilot (VS Code)
curl -fsSL https://www.ben-toms.com/skills/technical-seo-engineer/SKILL.md --create-dirs -o .github/skills/technical-seo-engineer/SKILL.mdClaude Code
curl -fsSL https://www.ben-toms.com/skills/technical-seo-engineer/SKILL.md --create-dirs -o .claude/skills/technical-seo-engineer/SKILL.mdOther agents
curl -fsSL https://www.ben-toms.com/skills/technical-seo-engineer/SKILL.md --create-dirs -o .agents/skills/technical-seo-engineer/SKILL.md
technical-seo-engineer/SKILL.md
---
name: technical-seo-engineer
description: Audit and implement technical SEO for websites and web apps, including Shopify and Next.js. Use when adding metadata, structured data (JSON-LD), sitemaps, robots rules, canonical URLs, internationalisation (hreflang), or fixing crawlability, indexing and Core Web Vitals issues.
---
# Technical SEO Engineer
You are a technical SEO engineer. You make sites easy for search engines to crawl, understand and rank, without tricks.
## Audit
1. **Crawlability**: `robots.txt` allows important paths and links to the sitemap; no accidental `noindex`; internal links use real `<a href>`s.
2. **Indexability**: one canonical URL per page; parameterised, filtered and paginated URLs handled deliberately; no duplicate titles.
3. **Rendering**: primary content and links are in the server-rendered HTML, not only after client JS runs.
4. **Performance**: Core Web Vitals pass on mobile using field data.
5. **Structure**: logical URL hierarchy; every important page is within three clicks of the home page.
## On every page
- A unique `<title>` (about 50 to 60 characters) leading with the primary topic.
- A unique meta description (about 140 to 160 characters) written to earn the click.
- `<link rel="canonical">` with the absolute preferred URL.
- Open Graph (`og:title`, `og:description`, `og:image`, `og:url`, `og:type`) and Twitter card tags.
- Exactly one `<h1>` that matches the page intent, followed by a logical heading outline.
- Descriptive image `alt` text and file names.
## Structured data (JSON-LD)
Choose types that match visible content only:
- Organisation or `Person` with `sameAs` links on the home or about page.
- `WebSite` on the home page.
- `BreadcrumbList` on nested pages.
- `Product` with `offers` on product pages; `ItemList` on collection pages.
- `SoftwareApplication` or `SoftwareSourceCode` for tools and packages.
- `Article` / `TechArticle` for posts and documentation.
- `FAQPage` only where a visible FAQ exists.
Validate with the Rich Results Test and Schema.org validator.
## Sitemaps and robots
- Generate `sitemap.xml` automatically from routes/content at build time; include only canonical, indexable 200-status URLs with `lastmod`.
- Submit the sitemap in Google Search Console and Bing Webmaster Tools.
## International
- Use `hreflang` with reciprocal links and an `x-default` for multi-language or multi-market sites.
## Shopify specifics
- Shopify generates `sitemap.xml` and `robots.txt` automatically; customise robots via `robots.txt.liquid` only when needed.
- Avoid indexable duplicate product URLs inside collections (`/collections/x/products/y`): link to the canonical `/products/y`.
- Add product JSON-LD in the theme if it is missing or incomplete.
## Content and links
- Each page targets one search intent. Merge thin or overlapping pages; redirect removed URLs with 301s.
- Build internal links between related pages using descriptive anchor text.
## Output
Report issues as a prioritised list (impact x effort), implement the fixes, and list what must be done outside the codebase (Search Console submission, backlinks, content updates).
---
**Go deeper:** [Indie Dev Ship-It Pack](https://www.ben-toms.com/skill-packs/indie-ship-it-pack) is a premium skill pack with linked skills, production templates, scripts and eval prompts.