What we did
- Scoped in-scope content and decorative policy in the SOW.
- Ran free public-page audits on 5–10 URLs before kickoff.
- Prioritised money pages and high-traffic templates before the long tail.
- Bulk-generated drafts in batches; seniors QA’d a sample each batch.
- Reported coverage %, leftover backlog, and a monthly new-uploads retainer.
The brief that needed rewriting
The inbound request was familiar: a mid-market B2B client asked their digital agency to “make the site’s images accessible” ahead of a procurement questionnaire. There was no shared sample of failing pages, no definition of in-scope content, and no agreement on what “done” meant.
The agency’s previous pattern — juniors clicking through Media Library one attachment at a time — burned hours without producing a renew-able artefact. Account managers could not show coverage. Production leads could not price the next similar client. Leadership wanted a SOP they could productise without overclaiming WCAG certification.
- Client site: ~1,200 published posts and pages on WordPress
- Roughly 4,800 informative attachments in the agreed scope
- No prior written decorative-image policy
- Procurement deadline in six weeks; remediation scoped for four
Scoping that protected the margin
Week one was paperwork with teeth. The SOW listed informative images on posts, pages, and key templates; excluded PDF icon systems and theme chrome; and defined empty alt as correct for decorative images. That single page prevented scope creep when stakeholders later asked for “every attachment since 2014.”
The agency also agreed a coverage target — not a legal conformance claim. “≥85% of in-scope attachments with reviewed, useful alt by closeout” was specific enough to report and honest enough to defend.
- In scope: featured + in-content informative images on agreed templates
- Out of scope: full ADA certification, video captions, historical PDF sets
- Definition of done: coverage % on in-scope set + signed style guide
- Change control: long-tail Media Library backlog as optional Phase 2
SOW one-liner the account team reused: “We remediate agreed informative images to a documented style guide with human review before save — not a formal WCAG conformance certificate.”
Proof before kickoff: audits the client could not argue with
Before the contract was signed, the delivery lead ran free OpptiAI public-page audits on eight URLs the client already cared about: homepage, three service pages, two case-study templates, and two high-traffic blog posts. Screenshots went into the proposal deck — not as fear tactics, but as shared evidence.
The pattern was consistent: hero images with filename alt or blanks, in-content photography described with generic stock phrases, and decorative section dividers incorrectly filled with keyword strings. Estimated in-scope useful-alt coverage sat around 32% — low enough to justify the sprint, specific enough to measure against later.
- 8 public URLs audited before SOW signature
- Audit PDF + annotated screenshots attached to proposal
- Baseline in-scope useful alt: ~32%
- Tier A money pages identified with the client in the same meeting

Delivery: prioritise, batch, review, save
Execution followed Tier A → B → C. Tier A covered homepage heroes, service landing templates, and the top twelve conversion pages. Tier B swept high-traffic blog archives and category heroes. Tier C was parked as an optional follow-on — explicitly, not as silent scope creep.
Operators worked in wp-admin with OpptiAI Alt Text: scan for empty and weak alt, generate drafts that could see the image plus surrounding page context, then edit brand voice and product specifics before save. Batch sizes stayed around 200–300 attachments so fatigue did not turn into blind approval.
- Week 2: Tier A complete; style guide v1 signed by client marketing lead
- Week 3: Tier B in progress; 10–15% senior QA sample per batch
- Week 4: Closeout report + optional monthly new-uploads retainer priced
- Edit rate: roughly one in four drafts needed a material fix

QA that kept AI speed without silent quality debt
The agency’s risk was not “AI wrote something” — it was “AI wrote something wrong on a money page and nobody noticed.” Every batch got a 10–15% senior sample against a one-page rubric: no filenames, no keyword stuffing, no invented product names, empty alt only when decorative.
Juniors used the free alt text grader on flagged items before escalating. When a batch showed a pattern — wrong executive names on team photos, for example — the team paused generation, fixed the prompt context, and re-ran that slice rather than patching one attachment at a time forever.
QA sample pass rate climbed from ~78% in week two to ~96% by closeout — mostly because the style guide and decorative policy stopped recurring arguments, not because reviewers got faster at clicking approve.

Commercial outcome: coverage reporting that renewed
Closeout coverage on in-scope attachments landed around 85% — short of perfection by design, because Phase 2 long-tail backlog was a separate line item. The client renewed a light monthly retainer for new uploads rather than waiting for the next questionnaire panic.
The agency reused the SOW language, QA rubric, and report template on two similar engagements the same quarter. No revenue multiple was invented for this composite. The useful lesson is operational: scoped remediation with coverage reporting sells cleaner than open-ended “accessibility hours.”
- Client-facing deck: coverage %, 8 before/after alt samples, backlog count
- Optional retainer: new uploads reviewed monthly — priced per attachment band
- Internal margin: batch + sample QA vs one-by-one Media Library clicking
- Reused SOP on two additional clients without rewriting from scratch

What did not magically happen
The client did not receive a WCAG conformance certificate. Image alt remediation on agreed templates is not the same as a full accessibility audit across forms, video, keyboard traps, and third-party embeds.
Organic traffic did not double because alt text improved. The procurement questionnaire got a factual coverage answer. Screen-reader users on remediated templates had a better experience. Those outcomes were enough to fund the retainer — without inventing SEO fairy tales.
- No “100% WCAG compliant images” promise in the SOW
- No named client logo or testimonial quote
- No silent auto-save — every write-back went through review
- No claim that decorative dividers need keyword-rich alt
Takeaways
- Rewrite vague accessibility briefs into scoped coverage engagements.
- Public audits before kickoff make the gap undeniable — and priceable.
- QA samples beat 100% manual typing and beat blind auto-save.
- Report coverage % if you want renewals, not one-off panic projects.
FAQ
Can agencies white-label OpptiAI?
Agencies typically run remediation inside the client’s WordPress admin and report with their own branding. See the agency guide for SOW language and QA checklists.
How long does a first remediation take?
This composite used four weeks for a mid-size marketing site with ~4,800 in-scope attachments. Catalogues and newsrooms take longer — scope by template and traffic, not by “every file forever.”
What should the client-facing report include?
Coverage % on the agreed in-scope set, Tier A vs overall numbers, 5–10 before/after alt samples, remaining backlog count, and a priced option for ongoing new uploads. Hours logged alone rarely renews.
Should agencies promise WCAG conformance?
No. Promise operational coverage for agreed scopes and a process for new uploads. Overclaiming creates legal and trust risk when procurement teams read the fine print.