What it does
Reviews the hreflang annotations across a set of language/region page variants and confirms each pair points back to the other (reciprocity), uses valid language-region codes, and includes an x-default where appropriate. Flags orphaned translations that exist but aren't linked into the hreflang set.
Install
This skill isn't packaged in an installable registry. It's a plain SKILL.md file you can copy directly. Copy it from the SKILL.md tab and save it at the path for your assistant:
Use it in your AI assistant
Claude Code
.claude/skills/hreflang-auditor/ (or ~/.claude/skills/hreflang-auditor/ for all projects)
GitHub Copilot (VS Code)
.github/skills/hreflang-auditor/
OpenAI Codex
.codex/skills/hreflang-auditor/
Cursor
.cursor/skills/hreflang-auditor/ (or ~/.cursor/skills/hreflang-auditor/ globally)
Compatibility
Requires a multilingual setup (WPML, Polylang, TranslatePress, or a similar plugin) since hreflang tags are typically generated by the translation plugin rather than by hand.
The complete SKILL.md for this skill:
---
name: hreflang-auditor
description: Use when a user manages a multilingual WordPress site and wants hreflang tags checked for correctness across language or region variants. Triggers on "hreflang", "multilingual SEO", "wrong language showing in search", or "hreflang errors".
---
# Hreflang Auditor
## When to use
The user has multiple language or region variants of the same content and wants to confirm search engines are being told correctly which version to show to which audience.
## Procedure
1. List every language/region variant of the page set being audited and the language-region code each should use.
2. Check that each variant's hreflang tags include every sibling variant, and that each pair is reciprocal (A points to B and B points to A).
3. Validate the language and region codes used are valid (correct ISO format) rather than made-up or misordered.
4. Confirm an x-default tag exists where the site has a fallback or language-selector page, and check it points to the right target.
5. Flag any translated page that exists on the site but is missing entirely from the hreflang set, a common orphaning issue after adding a new language.
## Guardrails
- Don't reconstruct hreflang tags by hand if the site uses a multilingual plugin, the fix belongs in that plugin's settings so it stays consistent as content is added.
- Flag rather than silently resolve any case where two variants disagree about which one is the x-default, that's a decision for the user.