Free VPAT and accessibility conformance report generator (draft)
Procurement teams ask for a VPAT. A first draft should not cost a week, and it should never claim more than a machine can know.
What the tool does
generate_conformance_report is one of the tools in Designers. You give it up to ten public URLs that represent your product (home page, a form, a content page, sign-in). It fetches each page, runs the static accessibility audit, and writes a draft Accessibility Conformance Report in the shape of the ITI VPAT 2.5 WCAG edition: a header with product, version, date, contact and evaluation methods, then a row for each of the 55 WCAG 2.2 Level A and AA criteria. Each row gets one of the five VPAT terms: Supports, Partially Supports, Does Not Support, Not Applicable or Not Evaluated, plus remarks.
Two rules keep it honest. A row is marked Does Not Support or Partially Supports only where the audit found a real problem, and the remark cites the page and the count. A row is marked Supports only where markup alone settles the criterion, which in practice is page language and not much else. Everything the scan cannot judge is Not Evaluated, and each such row carries a one-line instruction for testing it by hand.
Real output from this site
This is real output. On 2026-10-24 I ran generate_conformance_report against three pages of this site. The first run found two real problems in the site's own template. I fixed them, deployed, and ran the tool again on five pages. Both results are below, trimmed to the rows that carry evidence.
First run (before the fix)
Pages: allthepossibles.com/, allthepossibles.com/notes/ai-crawlers-122-sites, allthepossibles.com/support. Of 55 criteria: 1 Supports, 2 Partially Supports, 0 Does Not Support, 0 Not Applicable, 52 Not Evaluated.
| Criterion | Level | Remarks |
|---|---|---|
| 1.3.1 Info and Relationships | Partially Supports | Automated check found 3 issues. Found on 3 of 3 pages checked. Page 1 (https://allthepossibles.com/): heading level jumps from h2 to h4. Page 2 (https://allthepossibles.com/notes/ai-crawlers-122-sites): heading level jumps from h2 to h4. Page 3 (https://allthepossibles.com/support): heading level jumps from h2 to h4. |
| 2.4.1 Bypass Blocks | Partially Supports | Automated check found 2 issues. Found on 2 of 3 pages checked. Page 1 (https://allthepossibles.com/): no skip link at the top of a page with many links. Page 3 (https://allthepossibles.com/support): no skip link at the top of a page with many links. |
| 3.1.1 Language of Page | Supports | Every page checked has an html lang attribute with a well-formed language tag. |
The footer used a level 4 heading under a level 2, and two pages had no skip link. Both were genuine, and a static scan is good at exactly this kind of template-level miss.
Second run (after the fix)
Pages checked, with issues counted as high / medium / low:
| Page | Issues |
|---|---|
allthepossibles.com/ | 0 / 0 / 0 |
allthepossibles.com/support | 0 / 0 / 0 |
allthepossibles.com/guides/european-accessibility-act-small-teams | 0 / 0 / 0 |
allthepossibles.com/guides/wcag-22-contrast-target-size-checker | 0 / 0 / 0 |
allthepossibles.com/guides/check-which-ai-crawlers-your-site-blocks | 0 / 0 / 0 |
Of 55 criteria: 1 Supports, 0 Partially Supports, 0 Does Not Support, 0 Not Applicable, 54 Not Evaluated. The scan has no evidence against any row, and it still marks 54 of 55 as Not Evaluated. A clean scan means nothing the scan can see is wrong. It does not mean the site conforms.
| Criterion | Level | Remarks |
|---|---|---|
| 3.1.1 Language of Page | Supports | Every page checked has an html lang attribute with a well-formed language tag. |
Three of the Not Evaluated rows, to show what the tool hands you instead of a guess:
| Criterion | Level | Remarks |
|---|---|---|
| 1.4.3 Contrast (Minimum) | Not Evaluated | To test: Measure text against its background in every state and theme: 4.5:1 for normal text, 3:1 for large text (24px, or 18.66px bold). Include text over images and gradients. |
| 2.1.1 Keyboard | Not Evaluated | To test: Unplug the mouse and complete every task using only Tab, Shift+Tab, Enter, Space, arrow keys and Escape. Include custom widgets, menus, drag and drop alternatives and video players. |
| 2.5.8 Target Size (Minimum) | Not Evaluated | To test: Measure rendered pointer targets: each should be at least 24 by 24 CSS pixels, or have enough spacing that a 24px circle centred on it touches no other target. Inline links in sentences are exempt. |
What it cannot tell you
The report header states it, and so will I. It is a draft from automated checks and not a legal claim. Nobody has used a keyboard, a screen reader, zoom or a contrast meter for it. Contrast, focus order, captions, reflow, motion and the quality of alt text are all Not Evaluated, and that is the majority of the table. The tool also leaves out the Revised Section 508 and EN 301 549 tables of the full VPAT.
Do not publish it, attach it to a procurement response or send it to a customer until a person has done the manual tests in the Not Evaluated rows and changed them to what they found. If the right answer for a criterion is that your product fails it, the report is more useful to you, and more trusted by a buyer, when it says so.
How to run it
- Start with the free page accessibility audit on your three most important pages and fix what it finds. You will want the report to show the improved state.
- Connect Designers to your agent (Claude, Cursor, VS Code, Codex or ChatGPT) as a remote MCP server at
https://designers.allthepossibles.com/mcp, or callPOST https://designers.allthepossibles.com/api/conformance-reportwith a Pro key as a Bearer token. - Pass your URLs with
productName,vendor,contactEmailandevaluatorso the header is filled in. - Work down the Not Evaluated rows with a keyboard and a screen reader, then edit the report.
Free and paid, plainly
The page audit, contrast and touch-target tools are free with daily caps and need no signup. The conformance report, the 15-page site crawl and uncapped use are Designers Pro: $5 a month, 7-day trial, cancel from the billing page. If you only need to know what is broken on one page, you do not need it. If you need a document in the VPAT layout to start a conversation with a buyer, you do. See Pro on Designers.
Prefer to buy the finished document once? The Accessibility Readiness Report is $149 for one site and up to ten pages, with no subscription. It is still an automated draft that a person has to test before it is published.
If your driver is the EU law, read what small teams actually have to do first; a VPAT is a US procurement format and the Directive asks for something different.
Questions people ask
Is the generated report a valid VPAT?
No. It follows the layout of the ITI VPAT 2.5 WCAG edition and lists the 55 WCAG 2.2 Level A and AA criteria, but it is a draft built from a static scan of page markup. A person has to test the Not Evaluated rows before it is published or sent to a buyer.
Is it free?
The page audit that feeds it, audit_page_accessibility, is free. The conformance report itself, which combines up to 10 pages into the VPAT layout, is part of Designers Pro at $5 a month with a 7-day trial.
Is it a legal claim of conformance?
No. The report says so in its first lines. It is not a statement that your product conforms to WCAG, EN 301 549 or any law.