Skip to content
Agentmart
Submit a tool

landing-page-auditor

Audits any landing or service page across 48 checks in 10 categories for LLM/AI discoverability, GEO readiness, content clarity, schema markup, internal…

Skill by Infrasity

IndexedMIT★ 144
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/infrasity-labs-landing-page-auditor

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Audits any landing or service page across 48 checks in 10 categories for LLM/AI discoverability, GEO readiness, content clarity, schema markup, internal linking, freshness signals, and technical crawlability. Produces an overall score out of 100, a per-category score out of 100, pass/warn/fail/ manual counts, and a prioritised fix list — all rendered as a standalone HTML report saved to disk. Use when a user provides a URL and asks to audit it, score it, check its GEO readiness, test its AI discoverability, run a landing page audit, or evaluate it for LLM citation potential. Also trigger on phrases like "audit this page", "score this URL", "check GEO for", "is this page AI-ready", "run a GEO audit", "LLM page check", "how would AI read this page", or "landing page score".

Use cases: documents, frontend, testing, ml

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/landing-page-auditor

What's inside

Skill name
landing-page-auditor
Description
Audits any landing or service page across 48 checks in 10 categories for LLM/AI discoverability, GEO readiness, content clarity, schema markup, internal linking, freshness signals, and technical crawlability. Produces an overall score out of 100, a per-category score out of 100, pass/warn/fail/ manual counts, and a prioritised fix list — all rendered as a standalone HTML report saved to disk. Use when a user provides a URL and asks to audit it, score it, check its GEO readiness, test its AI discoverability, run a landing page audit, or evaluate it for LLM citation potential. Also trigger on phrases like "audit this page", "score this URL", "check GEO for", "is this page AI-ready", "run a GEO audit", "LLM page check", "how would AI read this page", or "landing page score".
License
MIT
Metadata
author: Infrasity · version: 1.0.0 · category: web-design
Instructions
600 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Agent Skills spec issues

  • body: 600 lines (spec recommends under 500)

Files (2)

  • SKILL.md
  • html-template.md · references/

SKILL.md (first lines)

# Landing Page GEO & LLM Auditor

Audits any landing or service page across 48 checks in 10 categories. Given a URL, fetch all required
data, grade every check, calculate scores per category and overall, then render a standalone HTML report.

---

## Step 0 — Parse and Confirm the URL

If the user provided a URL in the invocation arguments, use it directly. If not, ask:
> "Please provide the URL of the page you'd like to audit."

**Normalisation rules:**
- Ensure the URL starts with `https://`
- Strip trailing slashes
- Keep the full path (e.g. `https://infrasity.com/claude-skills`, not just `infrasity.com`)
- Extract the bare domain for file naming (e.g. `infrasity.com`)
- Extract the domain root for auxiliary files (strip subdomains only if they differ — check both)

Echo back the resolved URL before proceeding:
> "Auditing `{URL}` — fetching data now..."

---

## Step 1 — Fetch All Required Data in Parallel

Run ALL of the following fetches simultaneously. Do not wait for one to complete before starting the next.

### 1a — Page Content Overview (WebFetch pass 1)

Fetch `{URL}` with this prompt:
> "Return the complete text content of the page. Include: all headings (H1, H2, H3, H4) with their exact levels and text, all paragraph text, all list items, the opening sentence and first 150 words of body text (excluding nav), any FAQ section content, testimonial or social proof text, pricing info, stats and numbers, target audience language, comparison language like 'unlike X' or 'instead of', negative scoping like 'not for X', measurable outcome claims like 'reduced X by Y%', all internal links with href and anchor text, all external links with href and anchor text, any visible date or 'last updated' text, any breadcrumb navigation, and any comparison tables."

### 1b — Page Schema and Technical (WebFetch pass 2)

Fetch `{URL}` with this prompt:
> "Return: 1) All JSON-LD schema blocks verbatim including their @type values, 2) All image tags with exact src and alt attributes — list every image, 3) The meta title tag content, 4) The meta description content, 5) The canonical URL from the canonical link tag, 6) The robots meta tag content, 7) Any BreadcrumbList schema, 8) Any Service, ProfessionalService, SoftwareApplication or Product schema, 9) Any FAQPage schema, 10) Whether page content is visible in raw HTML without JavaScript execution."

### 1c — robots.txt (WebFetch)

Fetch `{ROOT_DOMAIN}/robots.txt` with this prompt:
> "Return the complete robots.txt content. List every User-agent entry and its Allow/Disallow rules. Specifically call out rules for: GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot, and any wildcard User-agent. Note the Sitemap directive URL if present."

### 1d — sitemap.xml (WebFetch)

Fetch `{ROOT_DOMAIN}/sitemap.xml` with this prompt:
> "Check if {FULL_URL} or any variant appears in this sitemap. Return the exact URL match, its lastmod date, changefreq, and priority. Also return the total number of URLs in the sitemap."

If the first sitemap is an index file referencing sub-sitemaps, fetch the most relevant sub-sitemap and repeat the check.

### 1e — llms.txt (WebFetch)

Fetch `{ROOT_DOMAIN}/llms.txt` with this prompt:
> "Return the full content of this llms.txt file. List every URL or path mentioned. Specifically check whether '{PAGE_PATH}' (the path portion of the target URL) or the full URL '{FULL_URL}' appears anywhere in the file."

### 1f — Server Response Time (Bash / curl)

```bash
RESPONSE_MS=$(curl -o /dev/null -s -w "%{time_starttransfer}" --max-time 15 "{URL}" | awk '{printf "%.0f", $1 * 1000}')
echo "TTFB: ${RESPONSE_MS}ms"
```

If curl is unavailable, mark check 10.3 as ⚠ Warning with note "Response time could not be measured."

---

## Step 2 — Grade All 48 Checks

Use the fetched data to evaluate every check below. Assign one of four verdicts:

| Verdict | Symbol | Score Weight | When to use |
|---|---|---|---|
| Pass | ✓ | 1.0 | Clearly present and meets the criteria |
| Warning | ⚠ | 0.5 | Partially present, improvable, or ambiguous |
| Fail | ✗ | 0.0 | Missing, broken, or clearly absent |
| Manual | ○ | Excluded | Requires human review to verify accurately |

Also write a short **evidence note** for each check (1 sentence max) — what you found or didn't find.

---

### Category 1 — Content Clarity & Directness (5 checks)

**1.1 — Clear opening sentence describing the service**

Look at the first sentence of body text (exclude navigation, hero buttons, GitHub badges).

- **Pass:** First sentence clearly states what the product/service is or does
- **Warn:** Opening exists but is preceded by several non-sentence elements (buttons, badges, CTAs) that push it past the visual fold
- **Fail:** No clear opening sentence; page leads with only a tagline, image, or marketing puff

**1.2 — Service definition in first 100 words ('X is a [type] that…')**

Count the first 100 words of actual body copy (strip nav links, CTA button text, icon labels).

- **Pass:** An explicit definitional sentence ("X is a [type] that..." or "X [verb]s [object] so that...") appears within the first 100 words
- **Warn:** Definition exists but appears after 100 words, or it's implied rather than stated
- **Fail:** No definitional sentence found in first 100 words

**1.3 — No unexplained jargon or acronyms**

Scan for acronyms (all-caps sequences 2-5 chars) and technical terms used without definition.

- **Pass:** All acronyms defined on first use (e.g. "GEO (Generative Engine Optimization)"), or no acronyms present
- **Warn:** 1–2 unexplained acronyms/terms but core product concepts are clear
- **Fail:** 3+ acronyms or key terms used without any explanation on first use

**1.4 — Use case statements present ('designed for X', 'ideal for Y teams')**

Look for explicit target audience language.

- **Pass:** "designed for", "built for", "ideal for", "best for", or a named target customer type (company, role, or industry) appears
- **Warn:** Audience implied by content context but never explicitly named
- **Fail:** No use case or target audience language found anywhere on the page

**1.5 — Negative scoping present ('not for X', 'we don't do Z')**

Look for explicit exclusions.

From Infrasity-Labs/dev-gtm-claude-skills, MIT.

More from Infrasity-Labs/dev-gtm-claude-skills

Signals

Stars
144
Forks
16
Open issues
1
Last commit (this folder)
Jun 16, 2026 (4 months ago)

From GitHub (fetched Oct 24, 2026).

Details

Version
1.0.0
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026
Cite this page

landing-page-auditor skill. Agent Mart. https://agentmart.dev/skills/infrasity-labs-landing-page-auditor (last updated 2026-10-24)