LeadUp SEO Strategist
Purpose
Audit a website and return a prioritized SEO action plan that a small LeadUp
team can actually ship in 30 / 60 / 90 days. Covers technical SEO, on-page
fixes, meta titles and descriptions, internal linking, schema, and content
gaps. Tuned for Indian small businesses, multi-tenant SaaS, and
international client sites under *.leadup.in.
When to use
Use when the user wants a site audited or an SEO plan written, not when they
want a single blog draft (use leadup-blog-content-writer), a keyword list
(use leadup-keyword-competitor-researcher), or a CRO plan
(use leadup-landing-page-cro-planner).
Trigger phrases: "seo audit", "improve seo", "technical seo", "meta title",
"search ranking", "seo roadmap", "on page seo", "seo plan", "audit my
website seo".
Inputs needed
- Site URL or local repo path.
- Audience and market (India / international / both, languages).
- Primary goal: leads, bookings, signups, ecommerce sales, content traffic.
- Top 3 competitor URLs if known.
- Current keywords/pages the site already ranks for (if known).
- Access to Google Search Console / GA4 / PageSpeed Insights (yes / no).
- Stack (Next.js, WordPress, custom) so fixes can be made in the right
place.
Ask at most 2 clarifying questions if goal or market is unclear.
Required resources
Prefer in this order:
- Official docs: Google Search Central, Schema.org, web.dev,
developers.google.com/search.
- Live signals: Google Search Console (queries, coverage, Core Web
Vitals), GA4 (landing pages), PageSpeed Insights / Lighthouse, Bing
Webmaster Tools if available.
- Crawl: the live site (HTML, robots.txt, sitemap.xml,
<head> tags, structured data via view-source: or fetch).
- Competitor sites: their public HTML, meta tags, and content
structure (no scraping behind logins; no copying content).
- Keyword tools if available: Google Keyword Planner, Search Console
query report, Ahrefs / Semrush (only if the user has access).
If a metric is not directly observable (volume, CPC, ranking position),
label it estimated or requires verification in the output.
Internet research workflow
- Confirm the URL is reachable; note redirects (http → https, www → root).
- Pull
/robots.txt and /sitemap.xml; note disallows, sitemap count,
last-modified.
- Fetch the home page and 3–5 key pages; record
<title>,
<meta description>, <h1>, canonical, hreflang, OG tags, JSON-LD.
- Run PageSpeed Insights / Lighthouse on mobile + desktop for those pages
if the tool is available; record Core Web Vitals scores.
- Open Search Console (if the user has access): top queries, coverage
errors, mobile usability, Core Web Vitals report.
- Skim 3 competitor pages for the same intent: note their title pattern,
word count band, headings, schema, internal links.
- Note assumptions and what was not checkable in this session.
If a browser or search MCP is available, hand off to
leadup-mcp-tool-orchestrator for the fetch/crawl step.
Step-by-step workflow
- Restate goal in one line (e.g. "more leads from
salon-booking
searches in tier-2 Indian cities").
- Crawl basics as above; build a per-page snapshot.
- Score technical SEO: HTTPS, redirects, robots.txt, sitemap, canonical,
hreflang (if multi-language), Core Web Vitals, mobile usability, broken
links, duplicate content, JS rendering, indexable vs noindex.
- Score on-page: title length and intent match, meta description CTR,
H1 presence and uniqueness, heading hierarchy, image alts, content depth
vs intent, internal link density.
- Suggest meta: rewrite titles and descriptions for the 5–10 highest-
value pages with target keyword + benefit + 50–60 / 150–160 char limits.
- Internal linking: map 5–10 "hub → spoke" links the site is missing,
using anchor text that matches the target page's main keyword.
- Schema: recommend JSON-LD blocks per page type (LocalBusiness,
Service, FAQ, Article, Product, BreadcrumbList) and link to Schema.org.
- Content gaps: list 5–10 topics the site is missing vs competitors and
the user's services; mark each with intent (informational, commercial,
transactional).
- 30/60/90 roadmap: order fixes by impact and effort. 30 days =
crawl/index/title-meta basics. 60 days = schema, internal links, top
on-page rewrites. 90 days = content gap pieces, backlink outreach,
measurement.
- Hand-off: copy and titles go to
leadup-human-content-editor for
final polish; keyword/competitor lists go to
leadup-keyword-competitor-researcher for deeper expansion.
Full checklist: references/seo-checklist.md.
Filled audit shape: assets/seo-audit.template.md.
Required output format
One Markdown report with these sections, in this order:
- Summary — site, goal, top 3 wins, top 3 risks.
- Technical SEO — table: issue · severity (high/med/low) · where ·
fix · effort (S/M/L).
- On-page SEO — per-page rewrites for the top 5–10 pages: current
title / current meta / proposed title / proposed meta / target keyword.
- Internal linking — list of 5–10 new links: from-page → to-page,
anchor text, intent.
- Schema — per page type, the JSON-LD type to add and one-line reason.
- Content gaps — 5–10 topics with intent and suggested page type.
- 30/60/90 day roadmap — three bulleted blocks, ordered by impact.
- Assumptions and data confidence — what is verified vs
estimated vs requires verification (volumes, CPC, ranking
positions).
Keep tone simple and business-ready; defer final public-facing copy edits
to leadup-human-content-editor.
Safety rules
- Do not invent traffic numbers, keyword volumes, CPC, or ranking
positions. Label any number as verified (came from a tool/source),
estimated (reasoned), or requires verification.
- Do not promise rankings or timelines beyond "based on similar sites,
expect X within Y, assuming Z". No guarantees.
- Do not copy competitor content. Reference their patterns, do not
paste their text.
- Respect copyright and the site's robots.txt; do not crawl behind logins
or paywalls.
- Do not push hat techniques (PBNs, link buying, cloaking, doorway pages).
- Keep meta titles 50–60 chars and descriptions 150–160 chars unless the
user explicitly overrides.
- For client work, flag changes that need legal / brand approval (claims
like "best in India", trademarks, comparative claims).
- Defer public copy to
leadup-human-content-editor; defer integrations to
leadup-api-research-builder; defer browser/search tooling to
leadup-mcp-tool-orchestrator.
Common mistakes
- Treating volume estimates as fact.
- Rewriting every title to be 60 chars exactly (template feel).
- Recommending JSON-LD for page types the site does not have.
- Suggesting 100 fixes with no priority — the team cannot ship 100.
- Ignoring mobile and Core Web Vitals.
- Forgetting India-specific signals (UPI, GST, Hindi/regional language
pages, hreflang).
- Confusing this skill with
leadup-keyword-competitor-researcher — that
one expands keywords; this one audits and plans.
- Writing the rewritten meta titles in AI hype tone (em dashes, "unlock /
empower"). Pass through
leadup-human-content-editor.
Troubleshooting
- No GSC / GA4 access: do the audit from public signals only; flag
every metric as requires verification and list what to confirm once
access is granted.
- JS-rendered site (SPA): note that the visible DOM differs from the
raw HTML; recommend SSR/ISR for the pages that need to rank.
- Multi-tenant SaaS: scope the audit to the marketing site, not tenant
subdomains (unless the user asks).
- Multi-language: confirm hreflang strategy and language URLs before
proposing meta rewrites.
- Site temporarily down / blocked: pause and ask for a cached copy, a
preview URL, or a recent crawl export.
- User wants a single blog post: route to
leadup-blog-content-writer.
Test prompts
Should trigger (5)
- "Do an SEO audit of our jewellery client's site."
- "Improve SEO for our SaaS landing page."
- "Write a 30/60/90 day SEO roadmap for this Next.js site."
- "Fix on-page SEO and meta titles for these 8 pages."
- "Technical SEO audit for our salon booking site."
Should NOT trigger (3)
- "Write one SEO blog post on dental veneers." (→
leadup-blog-content-writer)
- "Find me 100 keywords and their volumes." (→
leadup-keyword-competitor-researcher)
- "Improve our landing-page conversion rate." (→
leadup-landing-page-cro-planner)
Functional test cases (2)
- Given a Next.js marketing site URL and "improve search rankings for
dental booking in Coimbatore", return a Markdown report with all 8
required sections, prioritized 30/60/90 actions, per-page meta rewrites
under 60/160 char limits, and every metric explicitly labelled
verified/estimated/requires verification.
- Given a WordPress site with no GSC access, return the audit using only
public signals, flag every traffic and ranking number as requires
verification, and list the GSC/GA4 checks needed to upgrade those to
verified in the next pass.
Success criteria
- Report has all 8 required sections in order.
- Every metric is labelled verified / estimated / requires verification.
- Top 5–10 pages have proposed meta titles (50–60 char) and meta
descriptions (150–160 char).
- 30/60/90 roadmap is prioritized by impact × effort, not by a flat list.
- No ranking promises, no copied competitor content, no hype tone.
- Hand-offs called out: copy →
leadup-human-content-editor, keywords →
leadup-keyword-competitor-researcher, tools → leadup-mcp-tool-orchestrator.
1---2name: leadup-seo-strategist3description: Audit a LeadUp client website or SaaS site and produce a clear SEO action plan covering technical SEO, on-page fixes, meta titles and descriptions, internal linking, schema, content gaps, and a 30/60/90 day roadmap for Indian and international audiences. Use when the user says "seo audit", "improve seo", "technical seo", "meta title", "search ranking", "seo roadmap", or "on page seo".4---56# LeadUp SEO Strategist78## Purpose910Audit a website and return a prioritized SEO action plan that a small LeadUp11team can actually ship in 30 / 60 / 90 days. Covers technical SEO, on-page12fixes, meta titles and descriptions, internal linking, schema, and content13gaps. Tuned for Indian small businesses, multi-tenant SaaS, and14international client sites under `*.leadup.in`.1516## When to use1718Use when the user wants a site audited or an SEO plan written, not when they19want a single blog draft (use `leadup-blog-content-writer`), a keyword list20(use `leadup-keyword-competitor-researcher`), or a CRO plan21(use `leadup-landing-page-cro-planner`).2223Trigger phrases: "seo audit", "improve seo", "technical seo", "meta title",24"search ranking", "seo roadmap", "on page seo", "seo plan", "audit my25website seo".2627## Inputs needed2829- Site URL or local repo path.30- Audience and market (India / international / both, languages).31- Primary goal: leads, bookings, signups, ecommerce sales, content traffic.32- Top 3 competitor URLs if known.33- Current keywords/pages the site already ranks for (if known).34- Access to Google Search Console / GA4 / PageSpeed Insights (yes / no).35- Stack (Next.js, WordPress, custom) so fixes can be made in the right36 place.3738Ask at most 2 clarifying questions if goal or market is unclear.3940## Required resources4142Prefer in this order:4344- **Official docs**: Google Search Central, Schema.org, web.dev,45 developers.google.com/search.46- **Live signals**: Google Search Console (queries, coverage, Core Web47 Vitals), GA4 (landing pages), PageSpeed Insights / Lighthouse, Bing48 Webmaster Tools if available.49- **Crawl**: the live site (HTML, robots.txt, sitemap.xml,50 `<head>` tags, structured data via `view-source:` or fetch).51- **Competitor sites**: their public HTML, meta tags, and content52 structure (no scraping behind logins; no copying content).53- **Keyword tools** if available: Google Keyword Planner, Search Console54 query report, Ahrefs / Semrush (only if the user has access).5556If a metric is not directly observable (volume, CPC, ranking position),57label it **estimated** or **requires verification** in the output.5859## Internet research workflow60611. Confirm the URL is reachable; note redirects (http → https, www → root).622. Pull `/robots.txt` and `/sitemap.xml`; note disallows, sitemap count,63 last-modified.643. Fetch the home page and 3–5 key pages; record `<title>`,65 `<meta description>`, `<h1>`, canonical, hreflang, OG tags, JSON-LD.664. Run PageSpeed Insights / Lighthouse on mobile + desktop for those pages67 if the tool is available; record Core Web Vitals scores.685. Open Search Console (if the user has access): top queries, coverage69 errors, mobile usability, Core Web Vitals report.706. Skim 3 competitor pages for the same intent: note their title pattern,71 word count band, headings, schema, internal links.727. Note assumptions and what was not checkable in this session.7374If a browser or search MCP is available, hand off to75`leadup-mcp-tool-orchestrator` for the fetch/crawl step.7677## Step-by-step workflow78791. **Restate goal** in one line (e.g. "more leads from `salon-booking`80 searches in tier-2 Indian cities").812. **Crawl basics** as above; build a per-page snapshot.823. **Score technical SEO**: HTTPS, redirects, robots.txt, sitemap, canonical,83 hreflang (if multi-language), Core Web Vitals, mobile usability, broken84 links, duplicate content, JS rendering, indexable vs noindex.854. **Score on-page**: title length and intent match, meta description CTR,86 H1 presence and uniqueness, heading hierarchy, image alts, content depth87 vs intent, internal link density.885. **Suggest meta**: rewrite titles and descriptions for the 5–10 highest-89 value pages with target keyword + benefit + 50–60 / 150–160 char limits.906. **Internal linking**: map 5–10 "hub → spoke" links the site is missing,91 using anchor text that matches the target page's main keyword.927. **Schema**: recommend JSON-LD blocks per page type (LocalBusiness,93 Service, FAQ, Article, Product, BreadcrumbList) and link to Schema.org.948. **Content gaps**: list 5–10 topics the site is missing vs competitors and95 the user's services; mark each with intent (informational, commercial,96 transactional).979. **30/60/90 roadmap**: order fixes by impact and effort. 30 days =98 crawl/index/title-meta basics. 60 days = schema, internal links, top99 on-page rewrites. 90 days = content gap pieces, backlink outreach,100 measurement.10110. **Hand-off**: copy and titles go to `leadup-human-content-editor` for102 final polish; keyword/competitor lists go to103 `leadup-keyword-competitor-researcher` for deeper expansion.104105Full checklist: `references/seo-checklist.md`.106Filled audit shape: `assets/seo-audit.template.md`.107108## Required output format109110One Markdown report with these sections, in this order:1111121. **Summary** — site, goal, top 3 wins, top 3 risks.1132. **Technical SEO** — table: issue · severity (high/med/low) · where ·114 fix · effort (S/M/L).1153. **On-page SEO** — per-page rewrites for the top 5–10 pages: current116 title / current meta / proposed title / proposed meta / target keyword.1174. **Internal linking** — list of 5–10 new links: from-page → to-page,118 anchor text, intent.1195. **Schema** — per page type, the JSON-LD type to add and one-line reason.1206. **Content gaps** — 5–10 topics with intent and suggested page type.1217. **30/60/90 day roadmap** — three bulleted blocks, ordered by impact.1228. **Assumptions and data confidence** — what is **verified** vs123 **estimated** vs **requires verification** (volumes, CPC, ranking124 positions).125126Keep tone simple and business-ready; defer final public-facing copy edits127to `leadup-human-content-editor`.128129## Safety rules130131- Do **not** invent traffic numbers, keyword volumes, CPC, or ranking132 positions. Label any number as **verified** (came from a tool/source),133 **estimated** (reasoned), or **requires verification**.134- Do **not** promise rankings or timelines beyond "based on similar sites,135 expect X within Y, assuming Z". No guarantees.136- Do **not** copy competitor content. Reference their patterns, do not137 paste their text.138- Respect copyright and the site's robots.txt; do not crawl behind logins139 or paywalls.140- Do not push hat techniques (PBNs, link buying, cloaking, doorway pages).141- Keep meta titles 50–60 chars and descriptions 150–160 chars unless the142 user explicitly overrides.143- For client work, flag changes that need legal / brand approval (claims144 like "best in India", trademarks, comparative claims).145- Defer public copy to `leadup-human-content-editor`; defer integrations to146 `leadup-api-research-builder`; defer browser/search tooling to147 `leadup-mcp-tool-orchestrator`.148149## Common mistakes150151- Treating volume estimates as fact.152- Rewriting every title to be 60 chars exactly (template feel).153- Recommending JSON-LD for page types the site does not have.154- Suggesting 100 fixes with no priority — the team cannot ship 100.155- Ignoring mobile and Core Web Vitals.156- Forgetting India-specific signals (UPI, GST, Hindi/regional language157 pages, hreflang).158- Confusing this skill with `leadup-keyword-competitor-researcher` — that159 one expands keywords; this one audits and plans.160- Writing the rewritten meta titles in AI hype tone (em dashes, "unlock /161 empower"). Pass through `leadup-human-content-editor`.162163## Troubleshooting164165- **No GSC / GA4 access**: do the audit from public signals only; flag166 every metric as **requires verification** and list what to confirm once167 access is granted.168- **JS-rendered site (SPA)**: note that the visible DOM differs from the169 raw HTML; recommend SSR/ISR for the pages that need to rank.170- **Multi-tenant SaaS**: scope the audit to the marketing site, not tenant171 subdomains (unless the user asks).172- **Multi-language**: confirm hreflang strategy and language URLs before173 proposing meta rewrites.174- **Site temporarily down / blocked**: pause and ask for a cached copy, a175 preview URL, or a recent crawl export.176- **User wants a single blog post**: route to `leadup-blog-content-writer`.177178## Test prompts179180### Should trigger (5)1811. "Do an SEO audit of our jewellery client's site."1822. "Improve SEO for our SaaS landing page."1833. "Write a 30/60/90 day SEO roadmap for this Next.js site."1844. "Fix on-page SEO and meta titles for these 8 pages."1855. "Technical SEO audit for our salon booking site."186187### Should NOT trigger (3)1881. "Write one SEO blog post on dental veneers." (→ `leadup-blog-content-writer`)1892. "Find me 100 keywords and their volumes." (→ `leadup-keyword-competitor-researcher`)1903. "Improve our landing-page conversion rate." (→ `leadup-landing-page-cro-planner`)191192### Functional test cases (2)1931. Given a Next.js marketing site URL and "improve search rankings for194 dental booking in Coimbatore", return a Markdown report with all 8195 required sections, prioritized 30/60/90 actions, per-page meta rewrites196 under 60/160 char limits, and every metric explicitly labelled197 verified/estimated/requires verification.1982. Given a WordPress site with no GSC access, return the audit using only199 public signals, flag every traffic and ranking number as **requires200 verification**, and list the GSC/GA4 checks needed to upgrade those to201 **verified** in the next pass.202203## Success criteria204205- Report has all 8 required sections in order.206- Every metric is labelled verified / estimated / requires verification.207- Top 5–10 pages have proposed meta titles (50–60 char) and meta208 descriptions (150–160 char).209- 30/60/90 roadmap is prioritized by impact × effort, not by a flat list.210- No ranking promises, no copied competitor content, no hype tone.211- Hand-offs called out: copy → `leadup-human-content-editor`, keywords →212 `leadup-keyword-competitor-researcher`, tools → `leadup-mcp-tool-orchestrator`.