Website Audit: Accessibility (WCAG) & On-Page SEO avatar

Website Audit: Accessibility (WCAG) & On-Page SEO

Pricing

Pay per usage

Go to Apify Store
Website Audit: Accessibility (WCAG) & On-Page SEO

Website Audit: Accessibility (WCAG) & On-Page SEO

Audit any list of URLs for WCAG accessibility signals, on-page SEO and technical issues. Score 0-100, per-issue fix list, HTML report and a ready-to-send client pitch.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Alex Ai

Alex Ai

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Share

Website Audit — Accessibility (WCAG signals) & On-Page SEO

Audit a list of URLs and get back a plain-language list of what is wrong, why it matters, which WCAG success criterion it touches, how to fix it, a 0-100 score per page, a self-contained HTML report and a ready-to-send pitch you can email to the site owner.

Built for freelancers and agencies that sell web work: run the audit on a prospect's site, send the report, quote the fix.

What it checks

Accessibility (WCAG 2.1 / 2.2, level A and AA signals)

  • alt text on images, decorative images (WCAG 1.1.1)
  • lang attribute of the document (3.1.1)
  • page title (2.4.2)
  • heading hierarchy: missing H1, multiple H1, level jumps (1.3.1)
  • link purpose: empty links, icon-only links, "click here" texts (2.4.4)
  • form fields with no associated label or aria-label (3.3.2, 4.1.2)
  • "skip to content" link (2.4.1)
  • viewport blocking zoom (user-scalable=no, maximum-scale=1) (1.4.4, 1.4.10)
  • iframes without a title (4.1.2), data tables without <th> (1.3.1)
  • positive tabindex, duplicate ids, nested interactive elements (2.4.3, 4.1.1, 4.1.2)

On-page SEO

  • <title>, meta description, single H1
  • canonical, robots meta (noindex), Open Graph tags
  • schema.org structured data (LocalBusiness, FAQPage, ...) — the same data AI search uses
  • hreflang, word count

Technical and security

  • HTTPS, HTTP status codes, server response time
  • HSTS, Content-Security-Policy, X-Content-Type-Options, X-Frame-Options, Referrer-Policy

Output

Every audited page is one dataset item:

{
"url": "https://example.com/",
"score": 62,
"grade": "C",
"issuesFound": 9,
"counts": { "critical": 3, "major": 4, "minor": 2, "info": 0 },
"issues": [
{
"id": "img_alt",
"severity": "critical",
"wcag": "WCAG 1.1.1 (A)",
"title": "Immagini senza testo alternativo",
"howToFix": "Aggiungi un alt descrittivo a ogni immagine informativa...",
"detail": "12 immagini su 18 senza attributo alt",
"samples": ["<img src=\"/img/hero.jpg\">"]
}
],
"page": { "title": "...", "h1": "...", "imagesMissingAlt": 12, "wordCount": 480 },
"salesHook": "Oggetto: example.com: 7 problemi tecnici trovati sul sito..."
}

Two extra records are stored in the key-value store:

  • REPORT — a standalone HTML report (all pages, scores, fixes, pitches) you can send as-is.
  • SUMMARY — pages audited, average and worst score, total issues.

How it works

Static analysis of the HTML the server returns: fast, cheap and no browser needed. Content injected by JavaScript (single-page apps, lazy widgets) is not evaluated, so pair it with an axe-core browser Actor when you need a rendered-DOM audit. This Actor is not a legal accessibility certification.

Run size: a few hundred pages per run, concurrency parallel requests.

Input

FieldDescription
startUrlsList of page URLs to audit (required, homepage first).
reportLanguageit (default) or en — language of titles, fixes and pitch.
agencyNameSignature in the pitch (default Alex Ai).
contactEmailOptional line under the signature.
concurrencyParallel requests, 1-10 (default 5).
requestTimeoutSecsPer-page timeout (default 20).

Cost

No proxy, one HTTP request per page: a run of 50 pages costs a fraction of a cent of compute.