Check a business website for SEO gaps

Run the built-in audit on a listing's website to get a severity-ordered list of missing page essentials and structured data.

The SEO audit fetches a business’s own website and checks its page essentials (title, meta description, heading, canonical link, mobile viewport, language) and its structured data. It gives you a plain list of gaps, ordered by severity, so you can tell the business exactly what to fix.

Finding a listing, running its audit and reading the findings. The demo used a fictional business on a test site.

Before you start

  • You need an administrator account (the audit overview and settings are for administrators).
  • The listing must have a website address saved. Without one, both checks report “no website on listing” and the audit has nothing to score.
  • The website must be reachable from your server over http or https. Addresses on private or local networks are refused.
  • No AI key is needed. The two built-in checks read the page HTML directly.

How to use it

  1. Open the Audit tab of the Directory screen in your WordPress admin. You see the “SDP Audit” overview with the “Listings” and “Settings” tabs.
  2. Type part of a business name into “Search listings by name…”. Use the All, Audited and Never run buttons to narrow the list.
  3. Click the business name. Its audit dashboard opens, titled “Audit:” followed by the name.
  4. Click “Run audit”. If the listing has been audited before, the button is “Re-run audit” at the top right of the listing bar.
  5. Wait while the button reads “Running…”. The site is fetched once for each check, with a 15 second timeout, and the report is saved.
  6. Click the Findings tab. The “All findings” card lists every gap, High first, then Med, then Low.
  7. Read each finding’s title, the short explanation under it, and the check it came from (shown as “in On-page SEO” or “in Structured data”).
  8. Fix the issues on the business’s website, then click “Re-run audit” to check again.
SDP Audit overview listing table SDP Audit Pick a row to open its full audit dashboard with proposal-ready findings and recoverable revenue figures. Listings Settings Search listings by name… All Audited Never run LISTINGCATEGORYCOMPOSITEOPPORTUNITYFINDINGSLAST RUN WP Willow & Pine Demo Studio Milton Keynes Design agency Not audited Rows show Composite, Opportunity, Findings and Last run once a listing has been audited.
The overview. The first business has not been audited yet, so its score columns read “Not audited”.
Audit dashboard with no audit yet SDP Audit / Listings / Willow & Pine Demo Studio Audit: Willow & Pine Demo Studio No audit yet for this listing. Run the first audit to see the composite score, probe breakdown, opportunity value, and findings. Run audit
The first visit to a listing that has never been audited. After a run, the same action is the “Re-run audit” button.
Findings tab with All findings card WP Willow & Pine Demo Studio Milton Keynes Re-run audit Share AuditFindingsHistoryPitchesRaw data All findings 3 total across 2 probes. HIGH No structured data detected Adding JSON-LD LocalBusiness schema is the single biggest one-time SEO win for a local site. in Structured data MED Missing meta description Google falls back to body text, often producing a worse snippet. in On-page SEO MED Missing canonical link Helps Google consolidate duplicate URLs. Add to pitch
The Findings tab for the fictional studio in the video. Each row has a severity badge, a title, an explanation and the check that raised it.

What the two checks look for

On-page SEO reads the page HTML and starts from 100, taking points off for each gap. Structured data looks for JSON-LD, microdata and RDFa types.

Finding Severity Triggered when
Missing <title> tag High No title, or an empty one
Title is short / may be truncated Medium / Low Under 25 characters / over 70 characters
Missing meta description Medium No description, or an empty one
Meta description short / may be truncated Low Under 70 characters / over 170 characters
Missing <h1> High No h1 on the page
Multiple <h1> tags Low More than one h1
Missing canonical link Medium No canonical link in the head
No mobile viewport meta High No viewport meta tag
Missing <html lang> attribute Low No lang on the html element
Heavy HTML payload Medium HTML larger than 2 MB
HTTP error from website High The site returns a status below 200 or 400 and above
No structured data detected High No JSON-LD, microdata or RDFa types found
Structured data present but no LocalBusiness type Medium Types found, but none is a local business type such as LocalBusiness, Organization, Restaurant or Store
Probe breakdown card Probe breakdown Weighted contributions sum to the composite score. PROBESCOREVALUEFINDINGS On-page SEO Title and meta hygiene. Weight 0.30 0 100 Structured data LocalBusiness JSON-LD coverage.
The Audit tab lists each check with its weight (On-page SEO 0.30, Structured data 0.15), a score bar out of 100 and a findings count.

Good to know

  • Score bands are Great (80 and above), Good (60 to 79), Fair (40 to 59) and Poor (below 40).
  • The composite score is a weighted average of the checks that ran. With only the two built-in checks, On-page SEO counts for 0.30 and Structured data for 0.15, and the result is scaled to 0 to 100.
  • A check that fails (for example, the site cannot be reached) is left out of the average rather than counted as zero.
  • Every run is saved. A report is marked to be refreshed after 30 days, and a claimed listing is re-audited automatically every 30 days.
  • The Audit tab also shows an “Opportunity value”, a rough heuristic built from a category baseline and the score gap. It is a talking point for pitching, not a forecast, and you can adjust it under Settings.
  • The Raw data tab shows the exact JSON report, with a “Copy JSON” button.
  • The History and Pitches tabs display “Coming soon” and do not work yet. On the finding rows, the “Add to pitch”, “Dismiss”, “Filter” and “Export CSV” buttons are not connected to actions yet, so plan to copy findings from the screen for now.

FAQ

Do I need an AI key to run an audit?

No. The On-page SEO and Structured data checks fetch and read the page HTML on your own server. Nothing is sent to an AI provider.

Which page is checked?

The website address saved on the listing. If it has no http or https prefix, https is added, and up to 5 redirects are followed.

Why does a check say “unavailable” or “no website on listing”?

The listing has no website saved, so there is nothing to fetch. Add the address to the listing and run the audit again.

Can other checks such as page speed be added?

The scoring has weights reserved for Page Speed, Google Business Profile and Local pack ranking, but only the two checks above are built in. Developers can add more through the sdp_audit_register_probes filter.

Who can run an audit?

Anyone who can edit the listing can run and read its audit. The overview list and the settings are limited to administrators.

In section: Core Features Updated September 29, 2026
AI Search Optimized by AEO God Mode (opens in a new tab)