Auditing
Sites and reports
Tracked properties, site detail trends, and the completed-audit reports table.
Last updated 2026-08-17
In the app
Who this is for
Teams tracking client domains over time and sharing public audit landing pages or exports.
When to use Sites
To manage the canonical list of domains your workspace measures. The list feeds Benchmark ("Your site") and many Intelligence dropdowns.
When to use Reports
To find completed runs only, copy public links, download Markdown or PDF, or jump back into the full audit detail.
Before you start
- Add domains under Sites, or rely on audits to create sites automatically where the product does so.
- Site detail needs at least one audit; trend charts need two or more.
In the app: Sites
- Under Audit & Analysis, choose Sites.
- Click Add Site to open the Add site dialog. Submit a URL; the app normalises the domain. Duplicate submissions toast that the site is already tracked (
sites-list.tsx). - Open a domain row to load
/sites/<id>(Site detail).
Each row also shows the site's Client Group (Admins and Editors can assign one; hidden from the client role) and its last audit.
Removing and restoring a site
Owners and Admins can remove a site. Removal is reversible: it hides the site from lists and pickers and stops auditing it, but keeps every existing audit and report. Re-adding the same domain under Add Site restores it. There is no permanent site delete in the product.
Site detail (/sites/<id>)
- Header. Shows the domain, with subtitle "Score trends across N audit(s)".
- Delta cards (when there are two or more audits). SEO, Performance, Security, UX current score plus the change against the earliest point (green plus or red minus icons).
- Score Trends. A line chart for the four scores over time. With fewer than two audits the page shows "Need at least 2 audits to show trends. Run another audit to see changes."
- Audit History. Newest-first rows linking to
/audits/<auditId>with date, pages count, scores, and a grade badge when present. - Connections. Owners and Admins can connect this site's own Google Search Console and Google Analytics 4 so its audits use real search and traffic data. Choose Connect with Google, pick a property, then Test connection. The panel is hidden from the read-only client role. Full detail in Per-site Google connections.
- Errors. A red card with the API message and a Back button to Sites when
getSiteTrendsfails.
In the app: Reports
- Under Audit & Analysis, choose Reports.
- Subtitle: "Generated audit reports and landing pages".
The Reports table (completed audits only):
| Column or action | Behaviour |
|---|---|
| Domain | Audited host. |
| Grade | Letter grade or Ungraded. |
| Pages | Pages audited. |
| Date | Run date. |
| View | Opens <NEXT_PUBLIC_API_URL>/audit/<slug> when a slug exists. |
| Markdown and PDF | Download actions when enabled. |
| Details | Navigates to /audits/<id> (full tabs). |
Use the Refresh control to reload after new runs finish.
Exporting many audits at once
Export audits (on Reports and on Audits) downloads a batch of completed audits as one file, so you can analyse them together rather than opening each report. Pick three things:
| Choice | Options |
|---|---|
| Format | Markdown (one readable document, the one to hand to ChatGPT or Claude), CSV (one row per audit for a spreadsheet), JSON or NDJSON (for scripts). |
| How much detail | Scores only (every audit has these, up to 1000 per file), Scores and issues (adds AI top issues and high-priority signals, up to 500), Full reports (adds the complete report for each audit, up to 50). |
| Date range | Last 30 days, last 90 days, last 12 months, or all time. |
Three things worth knowing:
- Full reports is the only level that holds every finding for every audit. Most audits run without the AI analysis that writes a top-issues list, so at Scores and issues many rows will show scores only. Those rows are marked so an empty issue list is never mistaken for a clean site.
- Exports say when they are incomplete. If more audits matched than the file could hold, the Markdown says so at the top and the CSV adds a final note row. At Full reports there is also a size ceiling, so a batch of very large reports may leave some bodies out; those audits still appear with their scores and the file says how many were dropped.
- The same export is an API call,
GET /api/audits/export, using an X-API-Key header, so a custom GPT or a Claude connector can pull your audits on demand. Create a key under API Keys; the parameters are listed in the API docs at/docs. API keys need a Pro or Enterprise plan. The Export audits button in the dashboard works on every plan.
Letting an AI assistant query audits directly (MCP)
An export is a snapshot. If you would rather ask follow-up questions against live data, the workspace also speaks MCP, the protocol Claude and other assistants use to call tools. Instead of downloading a file and re-uploading it whenever something changes, the assistant reads your audits as it needs them.
Two ways to connect, depending on what you use. Both need a Pro or Enterprise plan.
From claude.ai in a browser. Open Settings, then Connectors, then Add custom connector, and paste:
https://api.reviewmysite.app/mcp
You will be asked to sign in to ReviewMySite and approve the connection. There is nothing to copy and no key to look after.
From Claude Code, Cursor, or anything that takes a header. Create a key under API Keys with the audits:read scope, then:
claude mcp add --transport http reviewmysite https://api.reviewmysite.app/mcp --header "Authorization: Bearer YOUR_API_KEY"
Either way the assistant gets the same tools:
| It can answer | Using |
|---|---|
| What do we track, and how is each site doing? | list_sites |
| Which site is worst, what ran this month? | list_audits |
| Everything behind one audit | get_audit |
| What is actually wrong with this site | get_audit_report |
| Has this site improved since we fixed things? | get_site_trends |
| What should we fix first, and is it worth it? | list_opportunities |
| Which page is slowest or most broken? | list_pages, get_page |
| Brand, claims, citations, customer voice | get_intelligence |
Read-only unless you say otherwise. When you approve the connection there is an unticked box, Also let it make changes. Leave it alone and the assistant can read and nothing more. Tick it and it can also start audits and add sites, and two things still hold: it uses your plan's monthly audit allowance and will refuse rather than spend your prepaid report credits, and nothing can delete anything at any setting.
Two limits worth knowing. Long reports are truncated in a tool result, because the whole report has to fit in the assistant's context; the reply says so and links the full version. And where an audit shows no issues, the reply states whether the audit was analysed at all, so "no issues listed" is never mistaken for "no problems found".
There is a fuller walkthrough in Connect Claude and ChatGPT to your audits.
Empty and error states
- Reports. "No reports yet" with a Run an audit button that opens
/audits/new. - Reports load failure. Refresh; check API connectivity.
- Sites empty. Use Add Site or run an audit that creates the site.
Common pitfalls
- Site detail shows an error string. Verify the site ID and the active workspace.
- Missing View on Reports. The run may not have generated a report or slug yet. Open Details on the audit row to investigate.
Related
- Reading audit run results.
- Competitor benchmark.
- Lead detail when audits link from outreach.
- Per-site Google connections to feed real GA4 and Search Console data into a site's audits.

