---
title: "Programmatic SEO audit | SEO Skill"
description: "Audit programmatic SEO templates, repeated URL patterns and Search Console demand. Review representative pages before changing a whole template."
canonical: "https://seoskill.dev/docs/reports/pseo-audit"
language: "en"
---

# Programmatic SEO audit

Review repeated page patterns with crawl and Search Console evidence before scaling or deleting anything. One thin sample cannot condemn a template, so the audit keeps coverage and representative URLs visible.

## Install and run the audit

Install the CLI once, then run `seo start` to connect your site and Google data. After setup you can run this audit yourself or ask your agent to run it.

Install the SEO CLI globally.

```
npm i -g seo
```

Run setup after installation.

```
seo start
```

Review repeated page templates with crawl and search evidence.

```
seo pseo audit --project example
```

## What you get from this audit

Audit programmatic SEO templates, repeated URL patterns and Search Console demand. Review representative pages before changing a whole template.

Best for

A site publishes repeated URL templates at meaningful scale.

Needs

Sitemap and template inventory

You get

Audit programmatic SEO templates, repeated URL patterns and Search Console demand. Review representative pages before changing a whole template.

Use next

Audit selected URLs

Every report follows the same rules for missing data and outside estimates.[See how report data works](https://seoskill.dev/docs/reports#how-report-data-works).

## What you need before you run it

The report uses the information below. Optional sources are only used when you ask for them.

### Sitemap and template inventory

Provides discoverable URLs and repeated path patterns for the population under review.

### Search Console page and query rows

Adds returned visibility and demand evidence for template families.

### Limited crawl and URL Inspection samples

Adds observed page checks and optional Google index verdicts for selected URLs.

## Use a different report for these jobs

These jobs need a different report or a manual review.

### You want a definitive quality verdict from word count or one sampled URL.

No report should condemn a template from word count or one sampled URL. Use the pSEO audit to select representative pages and compare template, crawl, Search Console, and optional URL Inspection evidence. Then manually review whether those pages satisfy their search intent, provide distinct value, and deserve to exist.

Needs more evidence

[

### You need Google’s current indexed verdict for one representative template URL.

Run index watch for the selected URL. It adds a direct URL Inspection result and any compatible local history, while keeping that single-page evidence separate from claims about the full template.

URL Inspection monitor

](https://seoskill.dev/docs/reports/index-watch)

## Use the audit with an agent or in code

The command above is enough for most work. These options let an agent, script or application run the same audit with explicit input and structured output.

### CLI

Use the report catalog when an agent, script or CI job needs predictable JSON instead of the normal terminal output. Check the current input first, then run the audit with the validated parameters.

Check the current input before the agent or script runs the audit.

```
seo reports describe pseo-audit --json
```

Once the input is valid, run the audit through the report catalog.

```
seo reports run pseo-audit --params '{"site":"sc-domain:example.com","detail":"summary"}' --json
```

### MCP

An MCP agent follows the same two-step flow. It inspects the current schema, fills the required fields and only then runs the audit.

Ask the MCP server for the current audit input.

```
{
  "id": "pseo-audit"
}
```

Run the audit after the agent has checked and filled the input.

```
{
  "id": "pseo-audit",
  "params": {
    "site": "sc-domain:example.com",
    "detail": "summary"
  }
}
```

### TypeScript

Install the package in a Node 22 project when your application needs to run the audit directly. The result includes the same evidence, warnings and limits returned through the CLI and MCP server.

Add the SEO package to your project.

```
npm install seo
```

Run the audit from your TypeScript application.

```
import { executeReport } from 'seo/mcp'

const result = await executeReport(
  'pseo-audit',
  {
  "site": "sc-domain:example.com",
  "detail": "summary"
},
)

console.log(result)
```

## What to do next

Inspect representative pages from each template pattern before changing the generator. Fix shared problems at template level, recrawl the same sample and confirm that distinct pages still serve distinct intent.

1.  01Sample representative URLs from the strongest risk or opportunity.
2.  02Measure template changes after complete finalised windows.

## Related reports

[

Run the same technical SEO checks across an exact list of URLs for a release, migration or template sample without opening the crawl to the whole site.

Bulk SEO audit

](https://seoskill.dev/docs/reports/audit-urls)[

Compare current Google URL Inspection results with saved snapshots to find selected pages whose index status or canonical changed since the last check.

URL Inspection monitor

](https://seoskill.dev/docs/reports/index-watch)[

Compare matched Search Console periods around a recorded SEO change and keep releases, demand shifts and other confounders beside the result.

SEO change measurement

](https://seoskill.dev/docs/reports/measure-change)

## Sources used by this audit

These primary sources define the provider data or search controls used by the result.

-   [Search Console Search Analytics API guidance](https://developers.google.com/webmaster-tools/v1/how-tos/search_analytics)
-   [Google sitemap guidance](https://developers.google.com/search/docs/crawling-indexing/sitemaps/overview)
-   [Search Console URL Inspection API reference](https://developers.google.com/webmaster-tools/v1/urlInspection.index/inspect)
