shipped@di-atomic/cro-audit · v0.1.2 · beta

Ask any AI to audit your landing page. It will tell you to add social proof.

That sentence is true of every page ever built, which is what makes it worthless on yours. Generic CRO advice is survivorship bias: what worked in someone else’s context, abstracted until every detail that made it true is gone. cro-audit scores all 8 dimensions or fails, and a linter rejects any finding that does not name a specific element on your page and cite a real benchmark with a source.

For founders and operators with a page that gets traffic and does not convert — who have already read the checklists and want to know what is wrong with this page.

Chalk sketch: a browser window feeds eight dimension marks into a ranked list headed ranked by ICE, severity, lift, effort
Built by Di-Atomic Marketing & compliance agency REACH / CLP vocabulary-aware 7-language team Clients incl. ONYX Radiance, Pamit Group
8/8dimensions scored, or the audit fails
60metric-bearing teardown evidence cards
4scripts gate the agent’s own output
0backends added to your stack
Installopvs-skills install @di-atomic/cro-audit

Then say: “audit my landing page” or “why isn’t my pricing page converting?”

Why a tidy list of best practices is not an audit

A general-purpose model auditing a page
1. Add social proof to build trust
2. Make your CTA stand out
3. Move the CTA above the fold
4. Reduce form friction
5. Improve page speed

(true of every page ever made,
 unfalsifiable about yours,
 and nothing to disagree with)

You cannot argue with any of it, so you cannot act on any of it. Worse, item 4 is how a founder got 340% more signups and 60% less revenue.

cro-audit demands an element and a number
FINDING #1  social_proof  HIGH

element:   hero, above the fold
fix:       testimonials block OR
           sys-proof-recent-sales-toast
benchmark: 15-25% named+photo+outcome
           vs 2-5% generic unattributed
source:    Digital Applied, 2026
effort:    low   →  ICE rank 1

Names the element, names the fix, carries the range, cites who measured it. You can disagree with this one, which is the entire point.

A finding you cannot argue with is a finding that says nothing.

What you actually get

📊

All 8 dimensions, every time

Value-Prop, CTA, Social Proof, Urgency, Trust & Security, Form Friction, Mobile, Page Speed. verify-audit-coverage.mjs demands 8 of 8. If a dimension cannot be assessed it has to say so and say why — silence is not a pass.

🔍

The platitude is a build failure

lint-no-best-practice-platitudes.mjs fails the run on any generic recommendation, and grade-evidence-density.mjs requires at least 80% of findings to name a page element and cite a benchmark. A rule the agent can talk itself out of is not a rule.

⚖️

No dark patterns, no legal exposure

Fake urgency, fake scarcity and invented social proof get flagged as risks to remove, never recommended. On REACH, CLP, SDS, biocide, health and finance pages it will not add an unqualified outcome claim to lift conversion — existing absolutes are flagged as exposure.

Two findings that broke the checklist for me

Chalk sketch: a gold social login button between a consumer box at plus 20 to 35 percent and a B2B box marked negative
The same element reverses sign by audience. Social login lifts consumer signup 20–35% and reduced conversions in a B2B-tool study. A blanket recommendation is a coin flip.
Chalk sketch: three ascending bars, generic 2 to 5 percent, named plus photo 15 to 25 percent, and a gold video bar at 30 to 40 percent
“Add testimonials” collapses a 10x range into three words. Generic 2–5%, named with photo and outcome 15–25%, video 30–40%. Specificity is the variable.

One page, start to ranked list

> audit my pricing page

  route → recipes/audit-pricing-page.md
  score 8 dimensions ........ 8/8 assessed
  verify-audit-coverage ..... PASS  8/8
  lint-no-best-practice ..... PASS  0 platitudes
  grade-evidence-density .... PASS  91% cited

  TOP_LEAKS (ranked by severity x lift / effort)

  1  social_proof   HIGH   hero has no proof above fold
                           15-25% vs 2-5%   (Digital Applied 2026)
  2  form_friction  HIGH   8 fields on the trial form
                           16 → 8 fields lifted 120%  (Baymard)
  3  urgency        RISK   countdown timer resets on reload
                           → remove. this is a dark pattern.

> finding #2 recommends removing friction

  paired warning: name the downstream metric.
  measure signups AND trial-to-paid, not just signups.
  alternatives: $1 paid trial / money-back / freemium-with-limits

Finding 3 is a risk to remove, not a win to keep. And the paired warning on finding 2 exists because a single-metric win hid a 60% revenue loss for a real founder.

Where it stops

Chalk sketch: a card reading add social proof struck through and marked fail, beside a gold card reading hero block, 15 to 25 percent, source, marked pass
The gate the skill applies to its own output before you ever see it.
It diagnoses and nothing else. It is guidance-only — no backend, no methods — so it does not touch your page, and installing it adds no service to your stack. Fixes go to SpiderPublish block edits and sys-* components, copy-engine for the words, section-designer for the layout. It also will not promise you a lift. Every finding is a hypothesis with a direction and a cited range attached, because on your traffic it might be the one that goes the other way.
Why this exists

I built this by dogfooding the same stack I run for clients.

cro-audit is one skill in the system behind Di-Atomic — the marketing & compliance agency that runs cognitoAI, SpiderIQ and OPVS. If you want the pages themselves diagnosed, fixed and tested rather than a list of best practices — in any of our seven languages, including regulated categories like REACH and CLP where a conversion claim is a legal artifact — that’s the day job. Let’s talk.

Book a 30-min call with Di-Atomic

Just want the skill? Install @di-atomic/cro-audit free.